Reland "Move rtp-specific config out of EncoderSettings."
This is a reland of bc900cb1d1810fcf678fe41cf1e3966daa39c88c Original change's description: > Move rtp-specific config out of EncoderSettings. > > In VideoSendStream::Config, move payload_name and payload_type from > EncoderSettings to Rtp. > > EncoderSettings now contains configuration for VideoStreamEncoder only, > and should perhaps be renamed in a follow up cl. It's no longer > passed as an argument to VideoCodecInitializer::SetupCodec. > > The latter then needs a different way to know the codec type, > which is provided by a new codec_type member in VideoEncoderConfig. > > Bug: webrtc:8830 > Change-Id: Ifcc691aef1ee6a95e43c0452c5e630d92a511cd6 > Reviewed-on: https://webrtc-review.googlesource.com/62062 > Commit-Queue: Niels Moller <nisse@webrtc.org> > Reviewed-by: Magnus Jedvert <magjed@webrtc.org> > Reviewed-by: Stefan Holmer <stefan@webrtc.org> > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#22532} Bug: webrtc:8830 Change-Id: If88ef7d57cdaa4fae3c7b2a97ea5a6e1b833e019 Reviewed-on: https://webrtc-review.googlesource.com/63721 Reviewed-by: Rasmus Brandt <brandtr@webrtc.org> Reviewed-by: Stefan Holmer <stefan@webrtc.org> Commit-Queue: Niels Moller <nisse@webrtc.org> Cr-Commit-Position: refs/heads/master@{#22595}
This commit is contained in:
@ -78,10 +78,12 @@ std::vector<VideoStream> DefaultVideoStreamFactory::CreateEncoderStreams(
|
||||
return CreateVideoStreams(width, height, encoder_config);
|
||||
}
|
||||
|
||||
void FillEncoderConfiguration(size_t num_streams,
|
||||
void FillEncoderConfiguration(VideoCodecType codec_type,
|
||||
size_t num_streams,
|
||||
VideoEncoderConfig* configuration) {
|
||||
RTC_DCHECK_LE(num_streams, DefaultVideoStreamFactory::kMaxNumberOfStreams);
|
||||
|
||||
configuration->codec_type = codec_type;
|
||||
configuration->number_of_streams = num_streams;
|
||||
configuration->video_stream_factory =
|
||||
new rtc::RefCountedObject<DefaultVideoStreamFactory>();
|
||||
@ -94,17 +96,17 @@ void FillEncoderConfiguration(size_t num_streams,
|
||||
}
|
||||
|
||||
VideoReceiveStream::Decoder CreateMatchingDecoder(
|
||||
const VideoSendStream::Config::EncoderSettings& encoder_settings) {
|
||||
int payload_type, const std::string& payload_name) {
|
||||
VideoReceiveStream::Decoder decoder;
|
||||
decoder.payload_type = encoder_settings.payload_type;
|
||||
decoder.payload_name = encoder_settings.payload_name;
|
||||
if (encoder_settings.payload_name == "H264") {
|
||||
decoder.payload_type = payload_type;
|
||||
decoder.payload_name = payload_name;
|
||||
if (payload_name == "H264") {
|
||||
decoder.decoder = H264Decoder::Create().release();
|
||||
} else if (encoder_settings.payload_name == "VP8") {
|
||||
} else if (payload_name == "VP8") {
|
||||
decoder.decoder = VP8Decoder::Create().release();
|
||||
} else if (encoder_settings.payload_name == "VP9") {
|
||||
} else if (payload_name == "VP9") {
|
||||
decoder.decoder = VP9Decoder::Create().release();
|
||||
} else if (encoder_settings.payload_name == "multiplex") {
|
||||
} else if (payload_name == "multiplex") {
|
||||
decoder.decoder = new MultiplexDecoderAdapter(
|
||||
new InternalDecoderFactory(), SdpVideoFormat(cricket::kVp9CodecName));
|
||||
} else {
|
||||
@ -112,5 +114,12 @@ VideoReceiveStream::Decoder CreateMatchingDecoder(
|
||||
}
|
||||
return decoder;
|
||||
}
|
||||
|
||||
VideoReceiveStream::Decoder CreateMatchingDecoder(
|
||||
const VideoSendStream::Config& config) {
|
||||
return CreateMatchingDecoder(config.rtp.payload_type,
|
||||
config.rtp.payload_name);
|
||||
}
|
||||
|
||||
} // namespace test
|
||||
} // namespace webrtc
|
||||
|
||||
Reference in New Issue
Block a user