From 67d23043f3e3c3589dfe884f6ce4ee74b9674cba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= Date: Mon, 4 Jul 2022 09:46:36 +0200 Subject: [PATCH] Fix config of number of temporal layers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Needed to produce correct VideoLayersAllocation extension for scalability mode L1T2. The value in the `spatialLayers` array is used on this line: https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/video/video_stream_encoder.cc;drc=c374d11fac252535ccba15975568b1f6552c117e;l=320 Bug: webrtc:11607 Change-Id: I3bcfe738627e0af6f203a9b0f6e5323492e68987 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267621 Reviewed-by: Danil Chapovalov Reviewed-by: Erik Språng Commit-Queue: Niels Moller Cr-Commit-Position: refs/heads/main@{#37414} --- modules/video_coding/video_codec_initializer.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/video_coding/video_codec_initializer.cc b/modules/video_coding/video_codec_initializer.cc index cece073aaa..e1885d74c8 100644 --- a/modules/video_coding/video_codec_initializer.cc +++ b/modules/video_coding/video_codec_initializer.cc @@ -170,7 +170,9 @@ VideoCodec VideoCodecInitializer::VideoEncoderConfigToVideoCodec( video_codec.spatialLayers[0].height = video_codec.height; video_codec.spatialLayers[0].maxFramerate = max_framerate; video_codec.spatialLayers[0].numberOfTemporalLayers = - streams[0].num_temporal_layers.value_or(1); + streams[0].scalability_mode.has_value() + ? ScalabilityModeToNumTemporalLayers(*streams[0].scalability_mode) + : streams[0].num_temporal_layers.value_or(1); // Set codec specific options if (config.encoder_specific_settings)