Introduce a single interface for data injector and extractor in PCLF
Bug: b/194993473 Change-Id: I59e2ea6aa232cd1399aa76753df1f90094340b8a Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227222 Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Artem Titov <titovartem@webrtc.org> Cr-Commit-Position: refs/heads/master@{#34594}
This commit is contained in:
parent
b66cfb7414
commit
fbca6b426e
@ -62,6 +62,12 @@ class EncodedImageDataExtractor {
|
||||
const EncodedImage& source) = 0;
|
||||
};
|
||||
|
||||
class EncodedImageDataPropagator : public EncodedImageDataInjector,
|
||||
public EncodedImageDataExtractor {
|
||||
public:
|
||||
~EncodedImageDataPropagator() override = default;
|
||||
};
|
||||
|
||||
} // namespace webrtc_pc_e2e
|
||||
} // namespace webrtc
|
||||
|
||||
|
||||
@ -37,8 +37,8 @@ namespace webrtc_pc_e2e {
|
||||
// This injector won't add any extra overhead into EncodedImage payload and
|
||||
// support frames with any size of payload. Also assumes that every EncodedImage
|
||||
// payload size is greater or equals to 3 bytes
|
||||
class SingleProcessEncodedImageDataInjector : public EncodedImageDataInjector,
|
||||
public EncodedImageDataExtractor {
|
||||
class SingleProcessEncodedImageDataInjector
|
||||
: public EncodedImageDataPropagator {
|
||||
public:
|
||||
SingleProcessEncodedImageDataInjector();
|
||||
~SingleProcessEncodedImageDataInjector() override;
|
||||
|
||||
@ -118,12 +118,13 @@ PeerConnectionE2EQualityTest::PeerConnectionE2EQualityTest(
|
||||
video_quality_analyzer = std::make_unique<DefaultVideoQualityAnalyzer>(
|
||||
time_controller_.GetClock());
|
||||
}
|
||||
encoded_image_id_controller_ =
|
||||
encoded_image_data_propagator_ =
|
||||
std::make_unique<SingleProcessEncodedImageDataInjector>();
|
||||
video_quality_analyzer_injection_helper_ =
|
||||
std::make_unique<VideoQualityAnalyzerInjectionHelper>(
|
||||
std::move(video_quality_analyzer), encoded_image_id_controller_.get(),
|
||||
encoded_image_id_controller_.get());
|
||||
std::move(video_quality_analyzer),
|
||||
encoded_image_data_propagator_.get(),
|
||||
encoded_image_data_propagator_.get());
|
||||
|
||||
if (audio_quality_analyzer == nullptr) {
|
||||
audio_quality_analyzer = std::make_unique<DefaultAudioQualityAnalyzer>();
|
||||
|
||||
@ -110,8 +110,7 @@ class PeerConnectionE2EQualityTest
|
||||
std::unique_ptr<VideoQualityAnalyzerInjectionHelper>
|
||||
video_quality_analyzer_injection_helper_;
|
||||
std::unique_ptr<MediaHelper> media_helper_;
|
||||
std::unique_ptr<SingleProcessEncodedImageDataInjector>
|
||||
encoded_image_id_controller_;
|
||||
std::unique_ptr<EncodedImageDataPropagator> encoded_image_data_propagator_;
|
||||
std::unique_ptr<AudioQualityAnalyzerInterface> audio_quality_analyzer_;
|
||||
std::unique_ptr<TestActivitiesExecutor> executor_;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user