Add a VideoCoding::RegisterReceiveCodec method with payload_type
Intended to ease removal of VideoCodec::plType, separating video
coding from transport.
Bug: None
Change-Id: I0764f2f714eab9ee4c3e55751819cd5915fb37b6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181075
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31892}
diff --git a/modules/video_coding/decoder_database.cc b/modules/video_coding/decoder_database.cc
index da3a87b..029ae45 100644
--- a/modules/video_coding/decoder_database.cc
+++ b/modules/video_coding/decoder_database.cc
@@ -70,15 +70,16 @@
dec_external_map_[payload_type] = ext_decoder;
}
-bool VCMDecoderDataBase::RegisterReceiveCodec(const VideoCodec* receive_codec,
+bool VCMDecoderDataBase::RegisterReceiveCodec(uint8_t payload_type,
+ const VideoCodec* receive_codec,
int number_of_cores) {
if (number_of_cores < 0) {
return false;
}
// If payload value already exists, erase old and insert new.
- DeregisterReceiveCodec(receive_codec->plType);
+ DeregisterReceiveCodec(payload_type);
VideoCodec* new_receive_codec = new VideoCodec(*receive_codec);
- dec_map_[receive_codec->plType] =
+ dec_map_[payload_type] =
new VCMDecoderMapItem(new_receive_codec, number_of_cores);
return true;
}