41 Commits

Author SHA1 Message Date
phoglund@webrtc.org
b3172860d7 Added a retry mechanism to vie_auto_test's verifying tests to make them less flaky.
BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1716 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-17 13:08:57 +00:00
phoglund@webrtc.org
8bfee84144 Initial revision of a ViE fuzz test. The idea is to inject randomized RTP packets and see what the video engine does.
There are some small refactorings in here, but the real focus of this CL is in vie_autotest_rtp_fuzz.cc. This patch is mostly here to get a discussion going.

On my initial test the video engine doesn't recover, at least within 10 seconds of running with untampered packets. Not sure if this is according to specification though.

Ideas:
  - Generate random packets with correct RTP headers to get further into the code.
  - Don't generate fresh random data, but rather corrupt bits here and there in small amounts.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1714 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-17 09:32:48 +00:00
wu@webrtc.org
69f8be3875 Change the ExternalRenderer to provide both rtp timestamp and the render time.
Review URL: https://webrtc-codereview.appspot.com/394006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1708 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-16 18:32:02 +00:00
stefan@webrtc.org
439be29445 Add APIs for getting receive-side estimated bandwidth and codec target rate.
BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1704 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-16 14:45:37 +00:00
mflodman@webrtc.org
657b2a4965 Added return due to gcc complaints in r1604.
TBR=andrew

TEST=Bulid with clang version 3.1 (trunk 148911) and gcc.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1606 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-06 11:06:01 +00:00
mflodman@webrtc.org
c80d9d9361 Removed default cases causing clang errors, -Wcovered-switch-default.
BUG=
TEST=Bulid with clang version 3.1 (trunk 148911)

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1604 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-06 10:11:25 +00:00
kjellander@webrtc.org
ce0a6ff43d Restoring previous vie_auto_test.gypi structure due to problems on Mac
Now the unit test is included in the vie_auto_test target and executed when the automated flag is used.

TBR=mflodman
BUG=
TEST=vie_auto_test --automated --gtest_filter=FrameDropPrimitivesTest.FixOutputFileForComparison

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1598 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-03 14:06:46 +00:00
kjellander@webrtc.org
918a8bf40c External transport is modified to never drop packets from the first frame.
Refactoring of FrameDropHandler: It now also tracks when frames are leaving the encoder and is being sent to external transport.

Previous 'Sent' state is now renamed to 'Created'.

NOTICE: The test seems to be a little flaky on Linux so it's not ready for buildbots yet. Since this might be caused by unstable production code further investigation should be performed to clear out the flakiness. I will file an issue for this when this CL is submitted (since I don't have any code to refer to before that). Usually the flakiness is caused by a decoded/rendered callback that is left out for the last frame, but I have seen other flaky failures too, which means it's not as simple as ignoring the last frame.
These errors occur even if 400kbps bit rate and 0% PL and 0 delay is configured.

BUG=
TEST=vie_auto_test --automated --gtest_filter="ViEVideoVerificationTest.RunsFullStackWithoutErrors" in Debug+Release on Linux, Mac and Windows.

Review URL: http://webrtc-codereview.appspot.com/339005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1597 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-03 12:40:28 +00:00
stefan@webrtc.org
07b45a5dc4 Added API for getting the send-side estimated bandwidth.
BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1591 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-02 08:37:48 +00:00
mflodman@webrtc.org
7627843352 Added NULL check in external transport test code.
BUG=C-10246

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1570 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-30 13:21:26 +00:00
mflodman@webrtc.org
194a93ac66 Adding ViE NULL checks.
BUG=C-10188, C-10246, C-10595

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1559 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-27 09:11:22 +00:00
mflodman@webrtc.org
ba09cf16ec Correcting uninitialized members.
BUG=C-10344, C-10345, C-10346

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1525 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-24 07:49:33 +00:00
mflodman@webrtc.org
6cf529d082 Changed REMB return value to int instead of bool.
Review URL: https://webrtc-codereview.appspot.com/366001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1522 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-24 06:16:16 +00:00
phoglund@webrtc.org
d056abd62f Prepared tests for running on build bot.
The changes will mostly clarify why PSNR and SSIM thresholds are chosen. I think those explanations will be good since these tests may well be a bit flaky.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1496 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-20 12:48:13 +00:00
mflodman@webrtc.org
70111e69bf Switching to stl instead of WebRTC wrappers.
BUG=C-10436, C-10437, C-10438

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1468 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-19 12:48:53 +00:00
pwestin@webrtc.org
5621057956 Removing unused code.
Review URL: https://webrtc-codereview.appspot.com/349008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1442 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-17 12:45:47 +00:00
mflodman@webrtc.org
5007056767 Added REMB option to custom call.
Review URL: http://webrtc-codereview.appspot.com/347003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1388 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-11 13:46:10 +00:00
phoglund@webrtc.org
caf39f335f Re-enabled RTP-RTCP test since it's not flaky anymore.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/345003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1369 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-10 13:43:33 +00:00
phoglund@webrtc.org
d8d85711c7 Temporarily disabled the standard rtp-rtcp test because of flakiness.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/349001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1356 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-09 12:06:42 +00:00
phoglund@webrtc.org
dc9536dd0e Made vie_auto_test more robust in Linux when the X environment is broken.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/329025

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1354 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-09 10:49:23 +00:00
kjellander@webrtc.org
cc33737a80 Changing all PSNR/SSIM calculations to use libyuv.
Removed old PSNR/SSIM implementations in:
* test/testsupport/metrics/video_metrics.cc
* src/modules/video_coding/codecs/test_framework/test.cc
The functions in video_metrics.cc is now using code in libyuv instead. Old code in test.cc is using the same functions.
The code for video_metrics.h had to be moved into a separate GYP file to avoid circular dependency error on Mac (see issue 160 for more details). The reason for this is that libyuv's unittest target depends on test_support_main.

BUG=
TEST=metrics_unittests in Debug+Release on Linux, Mac and Windows.

Review URL: http://webrtc-codereview.appspot.com/333025

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1325 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 08:09:32 +00:00
amyfong@webrtc.org
de5a10a044 Added in setting the minimum bit rate of a codec to ViE Custom Call
Review URL: http://webrtc-codereview.appspot.com/333019

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1319 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 21:06:26 +00:00
mflodman@webrtc.org
9c0aedc28b Removed constraint for changing resolution when using default encoder and added VP8 log.
Review URL: http://webrtc-codereview.appspot.com/330029

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1314 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 13:46:49 +00:00
amyfong@webrtc.org
ee2924cc56 Added vp8 codec temporal layer changing option to ViE AutoTest custom call.
Review URL: http://webrtc-codereview.appspot.com/330018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1292 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 18:24:28 +00:00
stefan@webrtc.org
2ae4c8cf44 Disable temporal toggling by default.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/329012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1285 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 10:30:42 +00:00
mflodman@webrtc.org
84dc3d134d Add REMB functionality to ViE.
This CL only adds support for encoding one stream, but receiving multiple streams.

BUG=
TEST=video_engine_core_unittest + auto_test/loopback

Review URL: http://webrtc-codereview.appspot.com/333011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1284 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 10:26:13 +00:00
mflodman@webrtc.org
a4863dbdf0 Moved video_engine/main/interface to video_engine/include.
Only changed include paths in files, gyp-files and Android.mk.

TEST=vie_auto_test and peerconnection_client builds.

Review URL: http://webrtc-codereview.appspot.com/330017

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1281 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 08:51:52 +00:00
kjellander@webrtc.org
173b7bbc16 Integration test that tracks dropped frames and compares video output.
The recorded frame timestamps are used to modify the output video on a frame-per-frame so it can be compared with the reference video using PSNR. This code will make it possible to use vie_auto_test for full stack comparisons with network interference and similar interesting simulations.

There's some refactoring done in vie_comparison_test.cc to make it fit to the new test.

Compiled and executed in Debug+Release on Linux, Mac and Windows.

BUG=
TEST=vie_auto_test --automated --gtest_filter=ViEVideoVerificationTest.*

Review URL: http://webrtc-codereview.appspot.com/320002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1269 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 16:11:25 +00:00
mflodman@webrtc.org
7752d11056 Fix test for external codec.
Review URL: http://webrtc-codereview.appspot.com/328007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1231 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 12:29:56 +00:00
mflodman@webrtc.org
5cc4dc9e0c Remove warnings in VideoEngine, capture module and render module.
BUG=164, 176, 180

Review URL: http://webrtc-codereview.appspot.com/303004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1145 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-09 10:12:57 +00:00
phoglund@webrtc.org
5b343aedcc Added missing .h files to .gypi files so they will show up in xcode / vc projects.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/304008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1117 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-07 10:34:35 +00:00
phoglund@webrtc.org
048b037342 Fixed vie_auto_test shutdown race conditions.
Fixed a race condition crash in vie_auto_test shutdown. Certain tests did not clean up the voice engine properly which caused crashes during certain uncommon timing conditions.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/307001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1109 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-06 10:42:05 +00:00
phoglund@webrtc.org
23e1c0a0b1 File handling in vie_auto_test now uses fileutils so input and output file end up in a good place.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/301003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1103 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-05 15:27:04 +00:00
pwestin@webrtc.org
db221d2b81 Fixes to temporal layers, Henrika please review src/common_types.h
Review URL: http://webrtc-codereview.appspot.com/286001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1091 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 11:31:08 +00:00
phoglund@webrtc.org
6aed73d218 Fixed release compilation error.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/298003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1090 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 11:14:12 +00:00
phoglund@webrtc.org
b956b4856a vie_auto_test may now be run in automated mode on all three platforms.
Fixed chrash bug on Mac, but there are still crash bugs since a couple weeks back. These will have to be fixed separately.

Removed dialogs from capture tests on Windows.

Removed some dead code related to answer files.

Added the last Windows fixes.

Fixed the Mac vie_auto_test runner - it will now run on Mac again. It will still crash randomly on codec and rtcp tests though.

Fixed compilation error.

Got patch to commit on Mac.

Temp commit on mac

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/292011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1087 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 10:19:27 +00:00
zakkhoyt@webrtc.org
2687b261d5 Since the CocoaRenderView is forward declared with @class instead of imported,
instance must be cast to NSView* when passed to NSView's addSubView method.
Review URL: http://webrtc-codereview.appspot.com/288001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1056 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-29 23:55:19 +00:00
amyfong@webrtc.org
55d81ea517 ViE Custom Call observer now using pointers, fixed protection method and miscellaneous TODO cleanup
Review URL: http://webrtc-codereview.appspot.com/282004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1009 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-24 01:15:10 +00:00
phoglund@webrtc.org
f3d10d3dfd Fixed release compilation error-warnings.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/290004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1006 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 15:56:27 +00:00
phoglund@webrtc.org
c4c56ed20b Rewrote vie_auto_test to use googletest macros.
Removed error counting entirely - that's completely managed by googletest now, except for custom call, loopback and simulcast call.

Rewrote remaining tests to use GTest asserts.

Rewrote more tests to use GTest macros. The External Codec module is now in the build by default.

Merge branch 'master' into macro_improvements

Rewrote some more code to use GTest asserts.

The manual standard tests now also go through gtest.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/287002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1004 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 15:23:11 +00:00
mflodman@webrtc.org
dfe89e337e Move ViE main/test/AutoTest to test/auto_test.
Only paths in gyp and mk files are changed, source files are only moved.

Review URL: http://webrtc-codereview.appspot.com/267027

git-svn-id: http://webrtc.googlecode.com/svn/trunk@988 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-22 14:03:15 +00:00