diff options
Diffstat (limited to 'gnu/packages/patches/ungoogled-chromium-ffmpeg-compat.patch')
-rw-r--r-- | gnu/packages/patches/ungoogled-chromium-ffmpeg-compat.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/gnu/packages/patches/ungoogled-chromium-ffmpeg-compat.patch b/gnu/packages/patches/ungoogled-chromium-ffmpeg-compat.patch new file mode 100644 index 0000000000..636f518a33 --- /dev/null +++ b/gnu/packages/patches/ungoogled-chromium-ffmpeg-compat.patch @@ -0,0 +1,68 @@ +The bundled ffmpeg in Chromium is newer than the one in Guix. Patch so +we can build with the new and old ffmpeg versions. + +Taken from Gentoo: +https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-93-fix-build-with-system-ffmpeg.patch + +diff --git a/media/filters/audio_decoder_unittest.cc b/media/filters/audio_decoder_unittest.cc +--- a/media/filters/audio_decoder_unittest.cc ++++ b/media/filters/audio_decoder_unittest.cc +@@ -109,7 +109,11 @@ void SetDiscardPadding(AVPacket* packet, + } + + // If the timestamp is positive, try to use FFmpeg's discard data. ++#if LIBAVUTIL_VERSION_MAJOR < 57 ++ int skip_samples_size = 0; ++#else + size_t skip_samples_size = 0; ++#endif + const uint32_t* skip_samples_ptr = + reinterpret_cast<const uint32_t*>(av_packet_get_side_data( + packet, AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size)); +diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc +--- a/media/filters/ffmpeg_demuxer.cc ++++ b/media/filters/ffmpeg_demuxer.cc +@@ -427,11 +427,19 @@ void FFmpegDemuxerStream::EnqueuePacket( + scoped_refptr<DecoderBuffer> buffer; + + if (type() == DemuxerStream::TEXT) { ++#if LIBAVUTIL_VERSION_MAJOR < 57 ++ int id_size = 0; ++#else + size_t id_size = 0; ++#endif + uint8_t* id_data = av_packet_get_side_data( + packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size); + ++#if LIBAVUTIL_VERSION_MAJOR < 57 ++ int settings_size = 0; ++#else + size_t settings_size = 0; ++#endif + uint8_t* settings_data = av_packet_get_side_data( + packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size); + +@@ -443,7 +451,11 @@ void FFmpegDemuxerStream::EnqueuePacket( + buffer = DecoderBuffer::CopyFrom(packet->data, packet->size, + side_data.data(), side_data.size()); + } else { ++#if LIBAVUTIL_VERSION_MAJOR < 57 ++ int side_data_size = 0; ++#else + size_t side_data_size = 0; ++#endif + uint8_t* side_data = av_packet_get_side_data( + packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size); + +@@ -504,7 +516,11 @@ void FFmpegDemuxerStream::EnqueuePacket( + packet->size - data_offset); + } + ++#if LIBAVUTIL_VERSION_MAJOR < 57 ++ int skip_samples_size = 0; ++#else + size_t skip_samples_size = 0; ++#endif + const uint32_t* skip_samples_ptr = + reinterpret_cast<const uint32_t*>(av_packet_get_side_data( + packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size)); |