blob: 438004ea39dc2f697f5e28e8d4945a52d461e615 (
plain)
From 7ed9b1f3a6b5e73a39daf906c8e8c19e93fce4b4 Mon Sep 17 00:00:00 2001
From: Stephen Seo <seo.disparate@gmail.com>
Date: Wed, 29 Nov 2023 22:06:09 +0900
Subject: [PATCH] deps/media-playback: Use new (nb_)coded_side_data FFmpeg 6.1
API
Fixes for using FFmpeg 6.1 due to deprecations. Uses `#if` macros to
allow builds for using older versions of FFmpeg.
The change in deps/media-playback/media-playback/decode.c is due to
FFmpeg moving "side_data" into AVCodecParameters which is mentioned in
commit [1] in FFmpeg's repository.
In summary of the "side_data" change, AVStream.side_data is deprecated
and replaced with AVStream.codecpar->coded_side_data, and
AVStream.nb_side_data is replaced with
AVStream.codecpar->nb_coded_side_data.
[1]: avcodec/codec_par: add side data to AVCodecParameters
https://github.com/FFmpeg/FFmpeg/commit/21d7cc6fa9a26e94965fa71b25655d07568450fe
---
deps/media-playback/media-playback/decode.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/deps/media-playback/media-playback/decode.c b/deps/media-playback/media-playback/decode.c
index 55b91c140ace4..40853f171bde7 100644
--- a/deps/media-playback/media-playback/decode.c
+++ b/deps/media-playback/media-playback/decode.c
@@ -114,8 +114,14 @@ static uint16_t get_max_luminance(const AVStream *stream)
{
uint32_t max_luminance = 0;
+#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(60, 31, 102)
for (int i = 0; i < stream->nb_side_data; i++) {
const AVPacketSideData *const sd = &stream->side_data[i];
+#else
+ for (int i = 0; i < stream->codecpar->nb_coded_side_data; i++) {
+ const AVPacketSideData *const sd =
+ &stream->codecpar->coded_side_data[i];
+#endif
switch (sd->type) {
case AV_PKT_DATA_MASTERING_DISPLAY_METADATA: {
const AVMasteringDisplayMetadata *mastering =
|