Commit Graph

233 Commits

Author SHA1 Message Date
319c98d663 Fix format string in video_quality_analysis.cc.
Fixes compilation errors on Android and Linux32 targets.

TBR=kjellander@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/2196005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4717 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-10 15:23:50 +00:00
f880f863dd Convert printing in video quality tests to Chromium's perf format.
Add support for --label flag to the frame_analyzer, that
decides what label shall be used for the perf output.

BUG=none
TEST=
Make sure to have zxing and ffmpeg in the PATH.
Create a captured video (from running vie_auto_test custom call)
webrtc/tools/compare_videos.py --ref_video=reference_video.yuv --test_video=captured_output.yuv --frame_analyzer=out/Release/frame_analyzer --label=TEST_VGA
And then inspecting the output that is prefixed with RESULT.

R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2190005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4714 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-10 12:10:01 +00:00
e141373b8a Add isolate configuration for Android for all tests.
In https://code.google.com/p/webrtc/source/detail?r=4407
henrike@ added the path to the WebRTC resources and
data directories for Android that are required in order to
use isolate for test execution on Android.

This CL adds similar entries to the rest of the .isolate
files added in
https://code.google.com/p/webrtc/source/detail?r=4590.

It also removes three accidentally added .isolate files that originated
from old test names:
* audio_device_test_api
* video_capture_module_test
* video_render_module_test

BUG=1882,1916
TEST=trybots passing.
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2107004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4627 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-27 12:10:09 +00:00
3365422c41 Isolate GYP target and .isolate files for tests
This is a re-land attempt of http://review.webrtc.org/1673004/
It now includes a build/isolate.gypi in WebRTC that includes the same
file as the one that would be included when WebRTC is used in a Chromium
checkout. It is needed since it is not possible to use variables in GYP's
includes sections.

Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/googletest/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_tests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_tests
* video_capture_tests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_tests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above. WebRTC trybots passing. Created a Chromium checkout with third_party/webrtc ToT and this patch applied, passing the runhooks step.
BUG=1916
R=henrike@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2056004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4590 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 07:57:00 +00:00
4298f73031 Revert 4547 "Isolate GYP target and .isolate files for tests"
As this breaks the FYI bots in 
http://build.chromium.org/p/chromium.webrtc.fyi/waterfall
due to different path to isolate.gypi (which cannot easily
be resolved due to limitations in GYP)

> Isolate GYP target and .isolate files for tests
> 
> Implemented according to the instructions at
> http://www.chromium.org/developers/testing/isolated-testing
> 
> Workflow has been like this:
> 1. create _run GYP target
> 2. create a stripped down .isolate file
> 3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
> 4. runhooks
> 5. compile
> 6. test if the test would run (i.e. find it's dependencies) without
>    actually executing it:
>    tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
> 7. If failing, run the fix_test_cases.py script like this:
>    tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated
> 
> All tests that run on the bots for WebRTC has got _run target
> and .isolate file created.
> 
> "Normal tests" that run fine on any machine:
> * audio_decoder_unittests
> * common_audio_unittests
> * common_video_unittests
> * metrics_unittests
> * modules_integrationtests
> * modules_unittests
> * neteq_unittests
> * system_wrappers_unittests
> * test_support_unittests
> * tools_unittests
> * video_engine_core_unittests
> * voice_engine_unittests
> 
> Tests that requires bare-metal and audio/video devices:
> * audio_device_integrationtests
> * video_capture_integrationtests
> 
> I also added the isolate boilerplate code for the following
> tests that are not yet pure gtest binaries (which means they
> cannot run isolated yet):
> * video_render_integrationtests
> * vie_auto_test
> * voe_auto_test
> 
> TEST=running isolate.py as described above.
> BUG=1916
> R=tommi@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1673004

TBR=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2040004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4548 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 11:29:58 +00:00
d7a4d235d2 Isolate GYP target and .isolate files for tests
Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_integrationtests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_integrationtests
* video_capture_integrationtests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_integrationtests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above.
BUG=1916
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1673004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4547 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 10:02:06 +00:00
12dc1a38ca Switch C++-style C headers with their C equivalents.
The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.

BUG=1833
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1917004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 16:22:53 +00:00
89c674053e Adds all unittests to android NDK-APK framework.
BUG=N/A
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1872004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4474 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-02 16:53:47 +00:00
a6f56acc53 Fix some chromium-style warnings in webrtc/tools/
BUG=163
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1908004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4427 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-30 12:50:59 +00:00
8400246fce Improved error messages when binaries are missing. Also stderr = stdout now.
Now that these scripts are called from browser tests, we need to print everything on stdout since the tests will throw away stderr when invoking programs. I chose to assign sys.stderr to sys.stdout. Otherwise I would have missed stuff like parser.error, which print to stderr.

The error message will get improved because the old code did not catch the case when the binary was missing, which lead to a very confusing error when that was the case. This gets fixed now.

BUG=
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1886004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4416 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-29 11:01:03 +00:00
34773d9b6b Unreverts revert: Makes it possible to find files used by some unit tests when running them as Chrome native tests.
TBR=andrew@webrtc.org

BUG=N/A

Review URL: https://webrtc-codereview.appspot.com/1754005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4303 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-08 14:55:23 +00:00
db7d82f26f Revert 4298 "Makes it possible to find files used by some unit t..."
> Makes it possible to find files used by some unit tests when running them as Chrome native tests.
> 
> BUG=N/A
> R=andrew@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1749004

Broke Android NDK/Android.mk builds.

TBR=henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1752006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4299 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-05 08:49:09 +00:00
caf2fcca6a Makes it possible to find files used by some unit tests when running them as Chrome native tests.
BUG=N/A
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1749004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4298 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-05 04:15:38 +00:00
2a7fd5355d Moves tools/update.py to trunk/webrtc/tools and updates it so that it no longer pulls any information from the DEPS file.
BUG=N/A
R=andrew@webrtc.org, kjellander@google.com, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1730004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4277 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-27 18:36:28 +00:00
7bcc7e3b43 Fixed bad parameter passing in compare_videos.py
BUG=http://crbug.com/254932
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1733004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4272 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-27 14:05:26 +00:00
ba7f6a8614 Include files from webrtc/.. paths in tools/
BUG=1662
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1547004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4166 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 08:14:10 +00:00
f791b1cebf Rename voice_engine_core -> voice_engine and move targets to voice_engine.gyp.
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1574004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4126 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 00:38:02 +00:00
14d7700d00 Moved command line parsing to internal tools and moved back the mic volume thingie.
BUG=
R=henrika@webrtc.org, kjellander@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1491004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4054 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-17 11:52:08 +00:00
5c1948dfaf Moved force_volume_max to its own gyp file to avoid a circular dependency.
BUG=
TBR=tlegrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1489004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4046 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 13:59:19 +00:00
61d3c552a1 Wrote a small portable tool for forcing the mic volume to 100%.
BUG=
R=henrika@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1477005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4045 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 13:10:00 +00:00
a6ff84503e Add script for comparing video quality
This script makes it easier to run a simple command line
comparison between a captured YUV file and a reference video.

BUG=none
TEST=command line invocation
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1320007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4022 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 09:43:04 +00:00
3de314615f Fix frame_editing_unittest reference file handling.
This test was initializing strings for reference video files in a static
context, which makes is against the style guide and also makes the paths
become invalid when the test is launched from a working directory
outside the checkout.

Moving the initialization into the test fixture solves this.

BUG=none
TEST=Local execution launched from a directory outside the checkout tree on Win, Mac and Linux + trybots (for
compilation as they don't yet run the tools_unittests).

Review URL: https://webrtc-codereview.appspot.com/1178004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3647 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-11 15:30:33 +00:00
38ebf98c2a Refactor barcode decoder to use Zxing's C++ version
By using the C++ version of Zxing, we can avoid having Java and Ant
as a dependency when running Video quality analysis on the bots.
This makes it far more easy to setup automation on new machines.

I also moved the scripts into the webrtc/ folder so it will be synced by default when building in Chrome (eliminating the need of a separate solution).

This CL also removes the need of the FFMPEG_HOME variable and replaces
its use with a command line flag to make the tool run smoothly on
Windows.

BUG=none
TEST=locally running the script on Windows, Mac and Linux.

Review URL: https://webrtc-codereview.appspot.com/1099007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3640 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-08 10:58:21 +00:00
fa53d8717c Fixing/disabling Windows x64 warnings
Disabled MSVC #4267 warnings in common.gypi to enable x64 builds
for Windows.
Fixed MSVC #4267 warnings in test/testsupport.
Added third_party/directxsdk to .gitignore.

With http://review.webrtc.org/1070008 landed, this should make it possible
to build for x64 on Windows.

BUG=1348
TEST=Compiling with http://review.webrtc.org/1070008 applied:
set GYP_DEFINES="target_arch=x64"
set GYP_GENERATORS=ninja
gclient sync
ninja -C out\Debug_x64

Review URL: https://webrtc-codereview.appspot.com/1060008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3464 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-04 10:07:17 +00:00
b2d7497faf Fix Win64 warnings
This change fixes warnings about converting size_t to int.

BUG=webrtc:1323
TEST=trybots passing

Review URL: https://webrtc-codereview.appspot.com/1064004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3419 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-26 16:36:40 +00:00
8126602e26 Fix frame_editing_unittest.cc
The test fails since it's assuming out/testfile.yuv exists when running the test. Just opening the file at a later time than the SetUp function seems to break the test so that's not a viable solution. This CL uses a simple workaround that simply truncates the file before opening it, which works.

BUG=none
TEST=tools_unittests in Debug+Release on Mac, Win and Linux + memcheck, tsan, asan.

Review URL: https://webrtc-codereview.appspot.com/1067004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3401 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-22 22:45:59 +00:00
2e2a4cff18 Remove <(library) from gyp file.
This is a corresponding change from Chome.
Review URL: https://webrtc-codereview.appspot.com/1053004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3389 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-18 17:13:47 +00:00
f556890844 Added possibility to repeat frames. Also added unittest for that feature.
BUG=

Review URL: https://webrtc-codereview.appspot.com/994005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3321 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-20 11:42:45 +00:00
e19b078ebe Changed so that frame_cutter takes and argument where one can specify in which interval the frames should be deleted between the first frame to cut and the last frame to cut. This can for example be used to decrease the frame rate.
BUG=

Review URL: https://webrtc-codereview.appspot.com/966037

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3281 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-13 14:46:40 +00:00
c7896df420 Fixed bug that caused frame_cutter_unittest to fail when built with MVS2008.
This was caused by not supplying a correct pointer to where fread should read. The files are now opened in binary mode (which I have under stood can cause problems between different OS if it is not done). I also check for EOF when I compare data from fread. Previously the checking for correct amount of bytes read failed when the end of the file had been reached.

BUG=

Review URL: https://webrtc-codereview.appspot.com/937032

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3212 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-30 12:37:14 +00:00
dddc02b9dc Use <(webrtc_root) to point to webrtc files in tools.gyp.
TBR=brykt@google.com

Review URL: https://webrtc-codereview.appspot.com/939034

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3206 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-30 02:28:27 +00:00
4de3dfe613 Tool for editing of yuv-files. Specify a path to the clip that should be edited, the height and width of the clip, one set of frames that should be removed from the clip, and a path to where the result should be written. There is a executable created that make use of the library where the functionality is implemented. There is also a unittest added for the library.
BUG=

Review URL: https://webrtc-codereview.appspot.com/929021

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3174 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-27 13:44:07 +00:00
14b43beb7c Move src/ -> webrtc/
TBR=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/915006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2963 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-10-22 18:19:23 +00:00