113 lines
4.6 KiB
Diff
113 lines
4.6 KiB
Diff
diff -up qtwebengine-everywhere-src-5.15.18/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc.ffmpeg8 qtwebengine-everywhere-src-5.15.18/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc
|
|
--- qtwebengine-everywhere-src-5.15.18/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc.ffmpeg8 2025-11-02 21:41:06.931797956 +0000
|
|
+++ qtwebengine-everywhere-src-5.15.18/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc 2025-11-02 23:06:28.874349338 +0000
|
|
@@ -237,22 +237,22 @@ AVCodecID VideoCodecToCodecID(VideoCodec
|
|
static VideoCodecProfile ProfileIDToVideoCodecProfile(int profile) {
|
|
// Clear out the CONSTRAINED & INTRA flags which are strict subsets of the
|
|
// corresponding profiles with which they're used.
|
|
- profile &= ~FF_PROFILE_H264_CONSTRAINED;
|
|
- profile &= ~FF_PROFILE_H264_INTRA;
|
|
+ profile &= ~AV_PROFILE_H264_CONSTRAINED;
|
|
+ profile &= ~AV_PROFILE_H264_INTRA;
|
|
switch (profile) {
|
|
- case FF_PROFILE_H264_BASELINE:
|
|
+ case AV_PROFILE_H264_BASELINE:
|
|
return H264PROFILE_BASELINE;
|
|
- case FF_PROFILE_H264_MAIN:
|
|
+ case AV_PROFILE_H264_MAIN:
|
|
return H264PROFILE_MAIN;
|
|
- case FF_PROFILE_H264_EXTENDED:
|
|
+ case AV_PROFILE_H264_EXTENDED:
|
|
return H264PROFILE_EXTENDED;
|
|
- case FF_PROFILE_H264_HIGH:
|
|
+ case AV_PROFILE_H264_HIGH:
|
|
return H264PROFILE_HIGH;
|
|
- case FF_PROFILE_H264_HIGH_10:
|
|
+ case AV_PROFILE_H264_HIGH_10:
|
|
return H264PROFILE_HIGH10PROFILE;
|
|
- case FF_PROFILE_H264_HIGH_422:
|
|
+ case AV_PROFILE_H264_HIGH_422:
|
|
return H264PROFILE_HIGH422PROFILE;
|
|
- case FF_PROFILE_H264_HIGH_444_PREDICTIVE:
|
|
+ case AV_PROFILE_H264_HIGH_444_PREDICTIVE:
|
|
return H264PROFILE_HIGH444PREDICTIVEPROFILE;
|
|
default:
|
|
DVLOG(1) << "Unknown profile id: " << profile;
|
|
@@ -263,23 +263,23 @@ static VideoCodecProfile ProfileIDToVide
|
|
static int VideoCodecProfileToProfileID(VideoCodecProfile profile) {
|
|
switch (profile) {
|
|
case H264PROFILE_BASELINE:
|
|
- return FF_PROFILE_H264_BASELINE;
|
|
+ return AV_PROFILE_H264_BASELINE;
|
|
case H264PROFILE_MAIN:
|
|
- return FF_PROFILE_H264_MAIN;
|
|
+ return AV_PROFILE_H264_MAIN;
|
|
case H264PROFILE_EXTENDED:
|
|
- return FF_PROFILE_H264_EXTENDED;
|
|
+ return AV_PROFILE_H264_EXTENDED;
|
|
case H264PROFILE_HIGH:
|
|
- return FF_PROFILE_H264_HIGH;
|
|
+ return AV_PROFILE_H264_HIGH;
|
|
case H264PROFILE_HIGH10PROFILE:
|
|
- return FF_PROFILE_H264_HIGH_10;
|
|
+ return AV_PROFILE_H264_HIGH_10;
|
|
case H264PROFILE_HIGH422PROFILE:
|
|
- return FF_PROFILE_H264_HIGH_422;
|
|
+ return AV_PROFILE_H264_HIGH_422;
|
|
case H264PROFILE_HIGH444PREDICTIVEPROFILE:
|
|
- return FF_PROFILE_H264_HIGH_444_PREDICTIVE;
|
|
+ return AV_PROFILE_H264_HIGH_444_PREDICTIVE;
|
|
default:
|
|
DVLOG(1) << "Unknown VideoCodecProfile: " << profile;
|
|
}
|
|
- return FF_PROFILE_UNKNOWN;
|
|
+ return AV_PROFILE_UNKNOWN;
|
|
}
|
|
|
|
SampleFormat AVSampleFormatToSampleFormat(AVSampleFormat sample_format,
|
|
@@ -415,7 +415,7 @@ bool AVCodecContextToAudioDecoderConfig(
|
|
// TODO(dalecurtis): Just use the profile from the codec context if ffmpeg
|
|
// ever starts supporting xHE-AAC.
|
|
constexpr uint8_t kXHEAAc = 41;
|
|
- if (codec == kCodecAAC && codec_context->profile == FF_PROFILE_UNKNOWN ||
|
|
+ if (codec == kCodecAAC && codec_context->profile == AV_PROFILE_UNKNOWN ||
|
|
codec_context->profile == kXHEAAc) {
|
|
// Errors aren't fatal here, so just drop any MediaLog messages.
|
|
NullMediaLog media_log;
|
|
@@ -537,16 +537,16 @@ bool AVStreamToVideoDecoderConfig(const
|
|
break;
|
|
case kCodecVP9:
|
|
switch (codec_context->profile) {
|
|
- case FF_PROFILE_VP9_0:
|
|
+ case AV_PROFILE_VP9_0:
|
|
profile = VP9PROFILE_PROFILE0;
|
|
break;
|
|
- case FF_PROFILE_VP9_1:
|
|
+ case AV_PROFILE_VP9_1:
|
|
profile = VP9PROFILE_PROFILE1;
|
|
break;
|
|
- case FF_PROFILE_VP9_2:
|
|
+ case AV_PROFILE_VP9_2:
|
|
profile = VP9PROFILE_PROFILE2;
|
|
break;
|
|
- case FF_PROFILE_VP9_3:
|
|
+ case AV_PROFILE_VP9_3:
|
|
profile = VP9PROFILE_PROFILE3;
|
|
break;
|
|
default:
|
|
@@ -645,9 +645,15 @@ bool AVStreamToVideoDecoderConfig(const
|
|
coded_size, visible_rect, natural_size, extra_data,
|
|
GetEncryptionScheme(stream));
|
|
|
|
+#if (LIBAVFORMAT_VERSION_MAJOR < 62)
|
|
if (stream->nb_side_data) {
|
|
for (int i = 0; i < stream->nb_side_data; ++i) {
|
|
AVPacketSideData side_data = stream->side_data[i];
|
|
+#else
|
|
+ if (stream->codecpar->nb_coded_side_data) {
|
|
+ for (int i = 0; i < stream->codecpar->nb_coded_side_data; ++i) {
|
|
+ const auto& side_data = stream->codecpar->coded_side_data[i];
|
|
+#endif
|
|
if (side_data.type != AV_PKT_DATA_MASTERING_DISPLAY_METADATA)
|
|
continue;
|
|
|