chromium-browser-stable-sla.../chromium-40-sorenson-spark.patch

431 lines
13 KiB
Diff
Raw Normal View History

2019-04-13 22:52:15 +03:00
diff -up chromium-62.0.3192.0/media/base/mime_util_internal.h.wmvflvmpg chromium-62.0.3192.0/media/base/mime_util_internal.h
--- chromium-62.0.3192.0/media/base/mime_util_internal.h.wmvflvmpg 2017-08-30 15:52:00.602204610 +0200
+++ chromium-62.0.3192.0/media/base/mime_util_internal.h 2017-08-30 15:52:00.616204356 +0200
2019-09-13 00:11:53 +03:00
@@ -48,7 +48,20 @@ class MEDIA_EXPORT MimeUtil {
2019-04-13 22:52:15 +03:00
MP2,
MPEG4_SP,
MPEG4_ASP,
- LAST_CODEC = MPEG4_ASP
+ MSMPEG4v1,
+ MSMPEG4v2,
+ MSMPEG4v3,
+ WMV7,
+ WMV8,
+ WMV9,
+ VC1,
2019-09-13 00:11:53 +03:00
+ WMA1,
+ WMA2,
2019-04-13 22:52:15 +03:00
+ VP6,
+ MPEG1,
+ MPEG2,
+ FLV1,
+ LAST_CODEC = FLV1
};
// Platform configuration structure. Controls which codecs are supported at
diff -up chromium-51.0.2687.0/media/ffmpeg/ffmpeg_common.cc.flv1 chromium-51.0.2687.0/media/ffmpeg/ffmpeg_common.cc
--- chromium-51.0.2687.0/media/ffmpeg/ffmpeg_common.cc.flv1 2016-03-23 18:22:20.227596097 +0100
+++ chromium-51.0.2687.0/media/ffmpeg/ffmpeg_common.cc 2016-03-23 18:22:20.245595771 +0100
2019-09-13 00:11:53 +03:00
@@ -120,6 +120,10 @@ AudioCodec CodecIDToAudioCodec(AVCodecID
return kCodecMP2;
case AV_CODEC_ID_DTS:
return kCodecDTS;
+ case AV_CODEC_ID_WMAV1:
+ return kCodecWMA1;
+ case AV_CODEC_ID_WMAV2:
+ return kCodecWMA2;
default:
DVLOG(1) << "Unknown audio CodecID: " << codec_id;
}
@@ -179,6 +183,10 @@ AVCodecID AudioCodecToCodecID(AudioCodec
return AV_CODEC_ID_MP2;
case kCodecDTS:
return AV_CODEC_ID_DTS;
+ case kCodecWMA1:
+ return AV_CODEC_ID_WMAV1;
+ case kCodecWMA2:
+ return AV_CODEC_ID_WMAV2;
default:
DVLOG(1) << "Unknown AudioCodec: " << audio_codec;
}
2019-04-13 22:52:15 +03:00
@@ -197,6 +197,28 @@
return kCodecVP9;
case AV_CODEC_ID_AV1:
return kCodecAV1;
+ case AV_CODEC_ID_MSMPEG4V1:
+ return kCodecMSMPEG4V1;
+ case AV_CODEC_ID_MSMPEG4V2:
+ return kCodecMSMPEG4V2;
+ case AV_CODEC_ID_MSMPEG4V3:
+ return kCodecMSMPEG4V3;
+ case AV_CODEC_ID_WMV1:
+ return kCodecWMV7;
+ case AV_CODEC_ID_WMV2:
+ return kCodecWMV8;
+ case AV_CODEC_ID_WMV3:
+ return kCodecWMV9;
+ case AV_CODEC_ID_VC1:
+ return kCodecVC1;
+ case AV_CODEC_ID_VP6:
+ return kCodecVP6;
+ case AV_CODEC_ID_MPEG1VIDEO:
+ return kCodecMPEG1;
+ case AV_CODEC_ID_MPEG2VIDEO:
+ return kCodecMPEG2;
+ case AV_CODEC_ID_FLV1:
+ return kCodecSorensonSpark;
default:
DVLOG(1) << "Unknown video CodecID: " << codec_id;
}
@@ -221,6 +223,28 @@
return AV_CODEC_ID_VP9;
case kCodecAV1:
return AV_CODEC_ID_AV1;
+ case kCodecMSMPEG4V1:
+ return AV_CODEC_ID_MSMPEG4V1;
+ case kCodecMSMPEG4V2:
+ return AV_CODEC_ID_MSMPEG4V2;
+ case kCodecMSMPEG4V3:
+ return AV_CODEC_ID_MSMPEG4V3;
+ case kCodecWMV7:
+ return AV_CODEC_ID_WMV1;
+ case kCodecWMV8:
+ return AV_CODEC_ID_WMV2;
+ case kCodecWMV9:
+ return AV_CODEC_ID_WMV3;
+ case kCodecVC1:
+ return AV_CODEC_ID_VC1;
+ case kCodecVP6:
+ return AV_CODEC_ID_VP6;
+ case kCodecMPEG1:
+ return AV_CODEC_ID_MPEG1VIDEO;
+ case kCodecMPEG2:
+ return AV_CODEC_ID_MPEG2VIDEO;
+ case kCodecSorensonSpark:
+ return AV_CODEC_ID_FLV1;
default:
DVLOG(1) << "Unknown VideoCodec: " << video_codec;
}
--- chromium-56.0.2924.10/media/remoting/proto_enum_utils.cc.bak.2 2016-12-01 23:42:15.717317808 +0100
+++ chromium-56.0.2924.10/media/remoting/proto_enum_utils.cc 2016-12-01 23:44:59.695754038 +0100
2020-10-22 17:33:11 +03:00
@@ -36,6 +36,8 @@
2019-09-13 00:11:53 +03:00
CASE_RETURN_OTHER(kCodecMpegHAudio);
CASE_RETURN_OTHER(kCodecMP2);
CASE_RETURN_OTHER(kCodecDTS);
+ CASE_RETURN_OTHER(kCodecWMA1);
+ CASE_RETURN_OTHER(kCodecWMA2);
}
return base::nullopt; // Not a 'default' to ensure compile-time checks.
}
2020-10-22 17:33:11 +03:00
@@ -65,6 +67,8 @@
2019-09-13 00:11:53 +03:00
CASE_RETURN_OTHER(kCodecMpegHAudio);
CASE_RETURN_OTHER(kCodecMP2);
CASE_RETURN_OTHER(kCodecDTS);
+ CASE_RETURN_OTHER(kCodecWMA1);
+ CASE_RETURN_OTHER(kCodecWMA2);
}
return base::nullopt; // Not a 'default' to ensure compile-time checks.
}
2020-10-22 17:33:11 +03:00
@@ -211,6 +215,15 @@
2019-04-13 22:52:15 +03:00
CASE_RETURN_OTHER(kCodecHEVC);
CASE_RETURN_OTHER(kCodecDolbyVision);
CASE_RETURN_OTHER(kCodecAV1);
+ CASE_RETURN_OTHER(kCodecMSMPEG4V1);
+ CASE_RETURN_OTHER(kCodecMSMPEG4V2);
+ CASE_RETURN_OTHER(kCodecMSMPEG4V3);
+ CASE_RETURN_OTHER(kCodecWMV7);
+ CASE_RETURN_OTHER(kCodecWMV8);
+ CASE_RETURN_OTHER(kCodecWMV9);
+ CASE_RETURN_OTHER(kCodecVP6);
+ CASE_RETURN_OTHER(kCodecMPEG1);
+ CASE_RETURN_OTHER(kCodecSorensonSpark);
}
return base::nullopt; // Not a 'default' to ensure compile-time checks.
}
2020-10-22 17:33:11 +03:00
@@ -231,6 +244,15 @@
2019-04-13 22:52:15 +03:00
CASE_RETURN_OTHER(kCodecHEVC);
CASE_RETURN_OTHER(kCodecDolbyVision);
CASE_RETURN_OTHER(kCodecAV1);
+ CASE_RETURN_OTHER(kCodecMSMPEG4V1);
+ CASE_RETURN_OTHER(kCodecMSMPEG4V2);
+ CASE_RETURN_OTHER(kCodecMSMPEG4V3);
+ CASE_RETURN_OTHER(kCodecWMV7);
+ CASE_RETURN_OTHER(kCodecWMV8);
+ CASE_RETURN_OTHER(kCodecWMV9);
+ CASE_RETURN_OTHER(kCodecVP6);
+ CASE_RETURN_OTHER(kCodecMPEG1);
+ CASE_RETURN_OTHER(kCodecSorensonSpark);
}
return base::nullopt; // Not a 'default' to ensure compile-time checks.
}
--- chromium-56.0.2924.10/media/remoting/media_remoting_rpc.proto.bak.2 2016-12-02 02:15:05.660562641 +0100
+++ chromium-56.0.2924.10/media/remoting/media_remoting_rpc.proto 2016-12-02 02:15:48.885796867 +0100
2019-09-13 00:11:53 +03:00
@@ -69,6 +69,8 @@ message AudioDecoderConfig {
kCodecMpegHAudio = 17;
kCodecMP2 = 18;
kCodecDTS = 19;
+ kCodecWMA1 = 20;
+ kCodecWMA2 = 21;
}
// Proto version of media::SampleFormat.
2019-04-13 22:52:15 +03:00
@@ -154,6 +154,15 @@
kCodecHEVC = 8;
kCodecDolbyVision = 9;
kCodecAV1 = 10;
+ kCodecMSMPEG4V1 = 11;
+ kCodecMSMPEG4V2 = 12;
+ kCodecMSMPEG4V3 = 13;
+ kCodecWMV7 = 14;
+ kCodecWMV8 = 15;
+ kCodecWMV9 = 16;
+ kCodecVP6 = 17;
+ kCodecMPEG1 = 18;
+ kCodecSorensonSpark = 19;
}
// Proto version of media::VideoCodecProfile.
--- chromium-56.0.2924.10/media/base/video_codecs.h.bak 2016-12-05 00:29:39.341097040 +0100
+++ chromium-56.0.2924.10/media/base/video_codecs.h 2016-12-05 00:30:04.352645151 +0100
@@ -31,12 +31,21 @@
kCodecHEVC,
kCodecDolbyVision,
kCodecAV1,
+ kCodecMSMPEG4V1,
+ kCodecMSMPEG4V2,
+ kCodecMSMPEG4V3,
+ kCodecWMV7,
+ kCodecWMV8,
+ kCodecWMV9,
+ kCodecVP6,
+ kCodecMPEG1,
+ kCodecSorensonSpark,
// DO NOT ADD RANDOM VIDEO CODECS!
//
// The only acceptable time to add a new codec is if there is production code
// that uses said codec in the same CL.
- kVideoCodecMax = kCodecAV1, // Must equal the last "real" codec above.
+ kVideoCodecMax = kCodecSorensonSpark, // Must equal the last "real" codec above.
};
// Video codec profiles. Keep in sync with mojo::VideoCodecProfile (see
--- chromium-56.0.2924.10/media/base/video_codecs.cc.bak 2016-11-29 21:04:19.000000000 +0100
+++ chromium-56.0.2924.10/media/base/video_codecs.cc 2016-12-05 00:32:51.625621718 +0100
2020-10-22 17:33:11 +03:00
@@ -38,6 +38,24 @@
2019-04-13 22:52:15 +03:00
return "vp9";
case kCodecAV1:
return "av1";
+ case kCodecMSMPEG4V1:
+ return "msmpeg4v1";
+ case kCodecMSMPEG4V2:
+ return "msmpeg4v2";
+ case kCodecMSMPEG4V3:
2019-09-13 00:11:53 +03:00
+ return "msmpeg4v3";
2019-04-13 22:52:15 +03:00
+ case kCodecWMV7:
+ return "wmv1";
+ case kCodecWMV8:
+ return "wmv2";
+ case kCodecWMV9:
+ return "wmv3";
+ case kCodecVP6:
+ return "vp6";
+ case kCodecMPEG1:
+ return "mpeg1video";
+ case kCodecSorensonSpark:
+ return "flv1";
}
NOTREACHED();
return "";
2020-10-22 17:33:11 +03:00
@@ -886,6 +904,28 @@
return;
}
2019-04-13 22:52:15 +03:00
#endif
+ if (codec_id == "msmpeg4v1")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "msmpeg4v2")
2020-10-22 17:33:11 +03:00
+ return;
2019-09-13 00:11:53 +03:00
+ if (codec_id == "msmpeg4v3")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "wmv1")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "wmv2")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "wmv3")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "vc1")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "vp6")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "mpeg1video")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "mpeg2video")
2020-10-22 17:33:11 +03:00
+ return;
2019-04-13 22:52:15 +03:00
+ if (codec_id == "flv1")
2020-10-22 17:33:11 +03:00
+ return;
codec = kUnknownVideoCodec;
2019-04-13 22:52:15 +03:00
}
--- chromium-56.0.2924.21/media/filters/ffmpeg_video_decoder.cc.flv 2016-12-10 20:33:18.005427356 +0100
+++ chromium-56.0.2924.21/media/filters/ffmpeg_video_decoder.cc 2016-12-10 20:34:28.610202853 +0100
@@ -46,6 +46,15 @@
case kCodecTheora:
case kCodecMPEG4:
+ case kCodecMSMPEG4V1:
+ case kCodecMSMPEG4V2:
+ case kCodecMSMPEG4V3:
+ case kCodecWMV7:
+ case kCodecWMV8:
+ case kCodecWMV9:
+ case kCodecVP6:
+ case kCodecMPEG1:
+ case kCodecSorensonSpark:
// No extra threads for these codecs.
break;
--- chromium-73.0.3683.75/media/base/supported_types.cc.flv 2019-03-17 18:44:45.934825471 +0100
+++ chromium-73.0.3683.75/media/base/supported_types.cc 2019-03-17 18:44:50.562746764 +0100
2019-09-13 00:11:53 +03:00
@@ -150,6 +150,8 @@ bool IsAudioCodecProprietary(AudioCodec
case kCodecGSM_MS:
case kCodecALAC:
case kCodecMpegHAudio:
+ case kCodecWMA1:
+ case kCodecWMA2:
return true;
case kCodecFLAC:
@@ -189,6 +191,8 @@ bool IsDefaultSupportedAudioType(const A
case kCodecALAC:
case kCodecAC3:
case kCodecDTS:
+ case kCodecWMA1:
+ case kCodecWMA2:
return true;
case kCodecAMR_NB:
2019-04-13 22:52:15 +03:00
@@ -217,6 +217,15 @@ bool IsVideoCodecProprietary(VideoCodec
case kCodecMPEG4:
case kCodecHEVC:
case kCodecDolbyVision:
+ case kCodecMSMPEG4V1:
+ case kCodecMSMPEG4V2:
+ case kCodecMSMPEG4V3:
+ case kCodecWMV7:
+ case kCodecWMV8:
+ case kCodecWMV9:
+ case kCodecVP6:
+ case kCodecMPEG1:
+ case kCodecSorensonSpark:
return true;
case kUnknownVideoCodec:
case kCodecTheora:
2019-09-13 00:11:53 +03:00
@@ -254,6 +263,15 @@ bool IsDefaultSupportedVideoType(const V
case kCodecMPEG2:
case kCodecHEVC:
case kCodecMPEG4:
+ case kCodecMSMPEG4V1:
+ case kCodecMSMPEG4V2:
+ case kCodecMSMPEG4V3:
+ case kCodecWMV7:
+ case kCodecWMV8:
+ case kCodecWMV9:
+ case kCodecVP6:
+ case kCodecMPEG1:
+ case kCodecSorensonSpark:
2019-04-13 22:52:15 +03:00
return true;
2019-09-13 00:11:53 +03:00
case kUnknownVideoCodec:
--- chromium-74.0.3729.40/media/base/audio_codecs.cc.wma 2019-03-29 22:57:18.887316626 +0100
+++ chromium-74.0.3729.40/media/base/audio_codecs.cc 2019-03-29 23:15:45.965274473 +0100
@@ -50,6 +50,10 @@ std::string GetCodecName(AudioCodec code
return "mp2";
case kCodecDTS:
return "dts";
+ case kCodecWMA1:
+ return "wma1";
+ case kCodecWMA2:
+ return "wma2";
}
2020-04-12 15:35:33 +03:00
}
@@ -89,6 +93,10 @@ AudioCodec StringToAudioCodec(const std:
2019-09-13 00:11:53 +03:00
return kCodecMP2;
if (codec_id == "dts")
return kCodecDTS;
+ if (codec_id == "wma1")
+ return kCodecWMA1;
+ if (codec_id == "wma2")
+ return kCodecWMA2;
return kUnknownAudioCodec;
}
--- chromium-74.0.3729.40/media/base/audio_codecs.h.wma 2019-03-29 22:57:18.889316591 +0100
+++ chromium-74.0.3729.40/media/base/audio_codecs.h 2019-03-29 23:17:16.560724846 +0100
@@ -35,13 +35,15 @@ enum AudioCodec {
kCodecMpegHAudio = 17,
kCodecMP2 = 18,
kCodecDTS = 19,
+ kCodecWMA1 = 20,
+ kCodecWMA2 = 21,
// DO NOT ADD RANDOM AUDIO CODECS!
//
// The only acceptable time to add a new codec is if there is production code
// that uses said codec in the same CL.
// Must always be equal to the largest entry ever logged.
- kAudioCodecMax = kCodecDTS,
+ kAudioCodecMax = kCodecWMA2,
};
2020-04-12 15:35:33 +03:00
enum class AudioCodecProfile {
2019-09-13 00:11:53 +03:00
--- chromium-74.0.3729.40/media/base/mime_util_internal.cc.wma 2019-03-29 22:57:18.903316352 +0100
+++ chromium-74.0.3729.40/media/base/mime_util_internal.cc 2019-03-29 23:29:55.405768520 +0100
@@ -100,6 +100,8 @@ const StringToCodecMap& GetStringToCodec
{"vc-1", MimeUtil::VC1},
{"vp6", MimeUtil::VP6},
{"mpeg1", MimeUtil::MPEG1},
+ {"wma1", MimeUtil::WMA1},
+ {"wma2", MimeUtil::WMA2},
});
return *kStringToCodecMap;
@@ -180,6 +181,10 @@ AudioCodec MimeUtilToAudioCodec(MimeUtil
return kCodecDTS;
case MimeUtil::MP2:
return kCodecMP2;
+ case MimeUtil::WMA1:
+ return kCodecWMA1;
+ case MimeUtil::WMA2:
+ return kCodecWMA2;
default:
break;
}
@@ -307,6 +312,8 @@ void MimeUtil::AddSupportedMediaFormats(
matroska_audio_codecs.emplace(MPEG4_AAC);
matroska_audio_codecs.emplace(PCM);
matroska_audio_codecs.emplace(FLAC);
+ matroska_audio_codecs.emplace(WMA1);
+ matroska_audio_codecs.emplace(WMA2);
CodecSet matroska_video_codecs;
matroska_video_codecs.emplace(THEORA);
--- chromium-74.0.3729.40/media/base/media_types.cc.gcc8 2019-03-27 19:50:19.000000000 +0100
+++ chromium-74.0.3729.40/media/base/media_types.cc 2019-03-30 21:18:15.797174455 +0100
@@ -36,6 +36,15 @@ VideoType VideoType::FromDecoderConfig(c
case kCodecVC1:
case kCodecMPEG2:
case kCodecMPEG4:
+ case kCodecMSMPEG4V1:
+ case kCodecMSMPEG4V2:
+ case kCodecMSMPEG4V3:
+ case kCodecWMV7:
+ case kCodecWMV8:
+ case kCodecWMV9:
+ case kCodecVP6:
+ case kCodecMPEG1:
+ case kCodecSorensonSpark:
break;
case kCodecH264:
case kCodecVP9: