Handle null structure for invalid scalability mode case
The scalability mode could be something invalid set by user, in this case, |num_spatial_layers| should not be updated. Bug: chromium:1292923 Change-Id: I78e1a6f12cf6d165597205608e4c124117a3d01b Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251560 Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Commit-Queue: Zhaoliang Ma <zhaoliang.ma@intel.com> Cr-Commit-Position: refs/heads/main@{#35985}
This commit is contained in:
parent
54d1344d98
commit
ea8dfd5011
@ -70,8 +70,13 @@ void FrameEncodeMetadataWriter::OnEncoderInit(const VideoCodec& codec) {
|
||||
codec_settings_.ScalabilityMode() != "") {
|
||||
std::unique_ptr<ScalableVideoController> structure =
|
||||
CreateScalabilityStructure(codec_settings_.ScalabilityMode());
|
||||
RTC_DCHECK(structure);
|
||||
num_spatial_layers = structure->StreamConfig().num_spatial_layers;
|
||||
if (structure) {
|
||||
num_spatial_layers = structure->StreamConfig().num_spatial_layers;
|
||||
} else {
|
||||
// |structure| maybe nullptr if the scalability mode is invalid.
|
||||
RTC_LOG(LS_WARNING) << "Cannot create ScalabilityStructure, since the "
|
||||
"scalability mode is invalid";
|
||||
}
|
||||
}
|
||||
num_spatial_layers_ = std::max(num_spatial_layers, size_t{1});
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user