webrtc/modules/video_coding/codecs
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
..
av1 Move setting single spatial layer bitrates to GetVp9SvcConfig 2023-10-23 14:10:21 +00:00
h264 Reset H.264 SVC Controller on key frame 2023-10-19 09:51:14 +00:00
interface Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
multiplex Rename EncodedImage property Timetamp to RtpTimestamp 2023-09-24 20:06:48 +00:00
test Move codecs handling from test to tester 2023-11-13 16:48:49 +00:00
vp8 Restrict ARM-specific VP8/VP9/AV1 settings to mobile platforms 2023-10-06 15:10:04 +00:00
vp9 Move setting single spatial layer bitrates to GetVp9SvcConfig 2023-10-23 14:10:21 +00:00