Migrate objc video decoder wrapper from InitDecode to Configure
Bug: webrtc:13045
Change-Id: Iff00489a91379298ac90cd48eb1aea109abd9906
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228945
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34825}
diff --git a/sdk/objc/native/src/objc_video_decoder_factory.mm b/sdk/objc/native/src/objc_video_decoder_factory.mm
index ccaed74..d005d0e 100644
--- a/sdk/objc/native/src/objc_video_decoder_factory.mm
+++ b/sdk/objc/native/src/objc_video_decoder_factory.mm
@@ -37,8 +37,9 @@
ObjCVideoDecoder(id<RTC_OBJC_TYPE(RTCVideoDecoder)> decoder)
: decoder_(decoder), implementation_name_([decoder implementationName].stdString) {}
- int32_t InitDecode(const VideoCodec *codec_settings, int32_t number_of_cores) override {
- return [decoder_ startDecodeWithNumberOfCores:number_of_cores];
+ bool Configure(const Settings &settings) override {
+ return
+ [decoder_ startDecodeWithNumberOfCores:settings.number_of_cores()] == WEBRTC_VIDEO_CODEC_OK;
}
int32_t Decode(const EncodedImage &input_image,
diff --git a/sdk/objc/unittests/objc_video_decoder_factory_tests.mm b/sdk/objc/unittests/objc_video_decoder_factory_tests.mm
index cc31f67..96dca61 100644
--- a/sdk/objc/unittests/objc_video_decoder_factory_tests.mm
+++ b/sdk/objc/unittests/objc_video_decoder_factory_tests.mm
@@ -55,18 +55,18 @@
#pragma mark -
-TEST(ObjCVideoDecoderFactoryTest, InitDecodeReturnsOKOnSuccess) {
+TEST(ObjCVideoDecoderFactoryTest, ConfigureReturnsTrueOnSuccess) {
std::unique_ptr<webrtc::VideoDecoder> decoder = GetObjCDecoder(CreateOKDecoderFactory());
- auto* settings = new webrtc::VideoCodec();
- EXPECT_EQ(decoder->InitDecode(settings, 1), WEBRTC_VIDEO_CODEC_OK);
+ webrtc::VideoDecoder::Settings settings;
+ EXPECT_TRUE(decoder->Configure(settings));
}
-TEST(ObjCVideoDecoderFactoryTest, InitDecodeReturnsErrorOnFail) {
+TEST(ObjCVideoDecoderFactoryTest, ConfigureReturnsFalseOnFail) {
std::unique_ptr<webrtc::VideoDecoder> decoder = GetObjCDecoder(CreateErrorDecoderFactory());
- auto* settings = new webrtc::VideoCodec();
- EXPECT_EQ(decoder->InitDecode(settings, 1), WEBRTC_VIDEO_CODEC_ERROR);
+ webrtc::VideoDecoder::Settings settings;
+ EXPECT_FALSE(decoder->Configure(settings));
}
TEST(ObjCVideoDecoderFactoryTest, DecodeReturnsOKOnSuccess) {