Use **** code for codec of unknown type

This allows dumping kVideoCodecGeneric to IVF.

Bug: none
Change-Id: I71ae5f11dc226f68aa60e4423556feb1af96d11c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/226865
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34543}
diff --git a/modules/video_coding/utility/ivf_file_writer.cc b/modules/video_coding/utility/ivf_file_writer.cc
index 496da89..77c90ee 100644
--- a/modules/video_coding/utility/ivf_file_writer.cc
+++ b/modules/video_coding/utility/ivf_file_writer.cc
@@ -88,8 +88,13 @@
       ivf_header[11] = '4';
       break;
     default:
-      RTC_LOG(LS_ERROR) << "Unknown CODEC type: " << codec_type_;
-      return false;
+      // For unknown codec type use **** code. You can specify actual payload
+      // format when playing the video with ffplay: ffplay -f H263 file.ivf
+      ivf_header[8] = '*';
+      ivf_header[9] = '*';
+      ivf_header[10] = '*';
+      ivf_header[11] = '*';
+      break;
   }
 
   ByteWriter<uint16_t>::WriteLittleEndian(&ivf_header[12], width_);
diff --git a/modules/video_coding/utility/ivf_file_writer_unittest.cc b/modules/video_coding/utility/ivf_file_writer_unittest.cc
index 8e781a7..1a84d44 100644
--- a/modules/video_coding/utility/ivf_file_writer_unittest.cc
+++ b/modules/video_coding/utility/ivf_file_writer_unittest.cc
@@ -167,6 +167,11 @@
   RunBasicFileStructureTest(kVideoCodecH264, fourcc, true);
 }
 
+TEST_F(IvfFileWriterTest, WritesBasicUnknownCodecFileMsTimestamp) {
+  const uint8_t fourcc[4] = {'*', '*', '*', '*'};
+  RunBasicFileStructureTest(kVideoCodecGeneric, fourcc, true);
+}
+
 TEST_F(IvfFileWriterTest, ClosesWhenReachesLimit) {
   const uint8_t fourcc[4] = {'V', 'P', '8', '0'};
   const int kWidth = 320;