webrtc/modules/video_coding/codecs/test
Sergey Silkin d431156c0e Move codecs handling from test to tester
* Pass codec factories to the video codec tester instead of creating and wrapping codecs into a tester-specific wrappers in video_codec_test.cc. The motivation for this change is to simplify the tests by moving complexity to the tester.

* Merge codec stats and analysis into the tester and move the tester. The merge fixes circular deps issues. Modularization is not strictly needed for testing framework like the video codec tester. It is still possible to unit test underlaying modules with rather small overhead.

* Move the video codec tester from api/ to test/. test/ is accessible from outside of WebRTC which enables reusing the tester in downstream projects.

Test output ~matches before and after this refactoring. There is a small difference that is caused by changes in qpMax: 63 -> 56 (kDefaultVideoMaxQpVpx). 56 is what WebRTC uses by default for VPx/AV1 encoders.

Bug: webrtc:14852
Change-Id: I762707b7144fcff870119ad741ebe7091ea109ba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/327260
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41144}
2023-11-13 16:48:49 +00:00
..
batch Codec instantiation tests for testing device capabilities in batch. 2018-03-05 10:01:02 +00:00
android_codec_factory_helper.cc Use WebRTC's Java VM initialization in tests. 2022-04-20 08:41:48 +00:00
android_codec_factory_helper.h Move all Android specific stuff to android_codec_factory_helper. 2018-02-05 13:08:26 +00:00
encoded_video_frame_producer.cc Introduce capture_time_identifier in webrtc::EncodedImage 2023-02-22 17:08:53 +00:00
encoded_video_frame_producer.h Introduce capture_time_identifier in webrtc::EncodedImage 2023-02-22 17:08:53 +00:00
objc_codec_factory_helper.h Move all Android specific stuff to android_codec_factory_helper. 2018-02-05 13:08:26 +00:00
objc_codec_factory_helper.mm Wrap WebRTC OBJC API types with RTC_OBJC_TYPE. 2020-05-04 15:01:26 +00:00
plot_webrtc_test_logs.py Reformat python files checked by pylint (part 1/2). 2020-10-30 10:13:11 +00:00
video_codec_test.cc Move codecs handling from test to tester 2023-11-13 16:48:49 +00:00
video_codec_unittest.cc Reland "Add mitigation for very long frame drop gaps with vp8" 2023-10-05 13:29:23 +00:00
video_codec_unittest.h Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
video_encoder_decoder_instantiation_tests.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
videocodec_test_av1.cc Remove the libaom av1 decoder. 2022-09-30 08:42:25 +00:00
videocodec_test_fixture_config_unittest.cc Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
videocodec_test_fixture_impl.cc Add codec name H265 to support H265 in WebRTC 2023-09-20 09:25:32 +00:00
videocodec_test_fixture_impl.h Do not crash if codec is not available 2021-03-03 13:56:17 +00:00
videocodec_test_libvpx.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
videocodec_test_mediacodec.cc Name rate adaptation tests 2022-08-24 08:36:39 +00:00
videocodec_test_openh264.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
videocodec_test_stats_impl.cc Add video codec tester. 2022-12-15 14:32:53 +00:00
videocodec_test_stats_impl.h Add video codec tester. 2022-12-15 14:32:53 +00:00
videocodec_test_stats_impl_unittest.cc Add video codec tester. 2022-12-15 14:32:53 +00:00
videocodec_test_videotoolbox.cc Move h264_profile_level_id and vp9_profile to api/video_codecs 2021-04-20 09:42:05 +00:00
videoprocessor.cc Rename EncodedImage property Timetamp to RtpTimestamp 2023-09-24 20:06:48 +00:00
videoprocessor.h Refactor video codec testing stats 2023-02-02 15:56:40 +00:00
videoprocessor_unittest.cc Format /modules 2023-04-20 02:02:45 +00:00