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
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
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
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
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
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
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