Allow to set av1 scalability mode after encoder is constructed

Bug: webrtc:11404
Change-Id: I70b4115c8afdc4f32fd876d31d54b7d95d0a7e1b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/188582
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32437}
diff --git a/modules/video_coding/decoder_database.cc b/modules/video_coding/decoder_database.cc
index 32be39b..a7a4b8f 100644
--- a/modules/video_coding/decoder_database.cc
+++ b/modules/video_coding/decoder_database.cc
@@ -96,7 +96,7 @@
   dec_map_.erase(it);
   if (payload_type == current_payload_type_) {
     // This codec is currently in use.
-    memset(&receive_codec_, 0, sizeof(VideoCodec));
+    receive_codec_ = {};
     current_payload_type_ = 0;
   }
   return true;
@@ -113,7 +113,7 @@
   // If decoder exists - delete.
   if (ptr_decoder_) {
     ptr_decoder_.reset();
-    memset(&receive_codec_, 0, sizeof(VideoCodec));
+    receive_codec_ = {};
     current_payload_type_ = 0;
   }
   ptr_decoder_ = CreateAndInitDecoder(frame, &receive_codec_);
@@ -126,7 +126,7 @@
   if (ptr_decoder_->RegisterDecodeCompleteCallback(decoded_frame_callback) <
       0) {
     ptr_decoder_.reset();
-    memset(&receive_codec_, 0, sizeof(VideoCodec));
+    receive_codec_ = {};
     current_payload_type_ = 0;
     return nullptr;
   }
@@ -178,7 +178,7 @@
     RTC_LOG(LS_ERROR) << "Failed to initialize decoder. Error code: " << err;
     return nullptr;
   }
-  memcpy(new_codec, decoder_item->settings.get(), sizeof(VideoCodec));
+  *new_codec = *decoder_item->settings.get();
   return ptr_decoder;
 }