slackware-current/source/l/qt5/patches/qt5-webengine-ffmpeg5.patch
Patrick J Volkerding 1af8dbc03d Mon Oct 10 18:45:33 UTC 2022
ap/diffstat-1.65-x86_64-1.txz:  Upgraded.
ap/moc-2.6_alpha3-x86_64-1.txz:  Upgraded.
  Compiled against ffmpeg-5.1.2.
kde/attica-5.99.0-x86_64-1.txz:  Upgraded.
kde/baloo-5.99.0-x86_64-1.txz:  Upgraded.
kde/bluez-qt-5.99.0-x86_64-1.txz:  Upgraded.
kde/breeze-icons-5.99.0-noarch-1.txz:  Upgraded.
kde/digikam-7.8.0-x86_64-3.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
kde/extra-cmake-modules-5.99.0-x86_64-1.txz:  Upgraded.
kde/ffmpegthumbs-22.08.1-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
kde/frameworkintegration-5.99.0-x86_64-1.txz:  Upgraded.
kde/kactivities-5.99.0-x86_64-1.txz:  Upgraded.
kde/kactivities-stats-5.99.0-x86_64-1.txz:  Upgraded.
kde/kapidox-5.99.0-x86_64-1.txz:  Upgraded.
kde/karchive-5.99.0-x86_64-1.txz:  Upgraded.
kde/kauth-5.99.0-x86_64-1.txz:  Upgraded.
kde/kbookmarks-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcalendarcore-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcmutils-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcodecs-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcompletion-5.99.0-x86_64-1.txz:  Upgraded.
kde/kconfig-5.99.0-x86_64-1.txz:  Upgraded.
kde/kconfigwidgets-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcontacts-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcoreaddons-5.99.0-x86_64-1.txz:  Upgraded.
kde/kcrash-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdav-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdbusaddons-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdeclarative-5.99.0-x86_64-1.txz:  Upgraded.
kde/kded-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdelibs4support-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdesignerplugin-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdesu-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdewebkit-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdnssd-5.99.0-x86_64-1.txz:  Upgraded.
kde/kdoctools-5.99.0-x86_64-1.txz:  Upgraded.
kde/kemoticons-5.99.0-x86_64-1.txz:  Upgraded.
kde/kfilemetadata-5.99.0-x86_64-1.txz:  Upgraded.
  Compiled against ffmpeg-5.1.2.
kde/kglobalaccel-5.99.0-x86_64-1.txz:  Upgraded.
kde/kguiaddons-5.99.0-x86_64-1.txz:  Upgraded.
kde/kholidays-5.99.0-x86_64-1.txz:  Upgraded.
kde/khtml-5.99.0-x86_64-1.txz:  Upgraded.
kde/ki18n-5.99.0-x86_64-1.txz:  Upgraded.
kde/kiconthemes-5.99.0-x86_64-1.txz:  Upgraded.
kde/kidletime-5.99.0-x86_64-1.txz:  Upgraded.
kde/kimageformats-5.99.0-x86_64-1.txz:  Upgraded.
kde/kinit-5.99.0-x86_64-1.txz:  Upgraded.
kde/kio-5.99.0-x86_64-1.txz:  Upgraded.
kde/kirigami2-5.99.0-x86_64-1.txz:  Upgraded.
kde/kitemmodels-5.99.0-x86_64-1.txz:  Upgraded.
kde/kitemviews-5.99.0-x86_64-1.txz:  Upgraded.
kde/kjobwidgets-5.99.0-x86_64-1.txz:  Upgraded.
kde/kjs-5.99.0-x86_64-1.txz:  Upgraded.
kde/kjsembed-5.99.0-x86_64-1.txz:  Upgraded.
kde/kmediaplayer-5.99.0-x86_64-1.txz:  Upgraded.
kde/knewstuff-5.99.0-x86_64-1.txz:  Upgraded.
kde/knotifications-5.99.0-x86_64-1.txz:  Upgraded.
kde/knotifyconfig-5.99.0-x86_64-1.txz:  Upgraded.
kde/kpackage-5.99.0-x86_64-1.txz:  Upgraded.
kde/kparts-5.99.0-x86_64-1.txz:  Upgraded.
kde/kpeople-5.99.0-x86_64-1.txz:  Upgraded.
kde/kplotting-5.99.0-x86_64-1.txz:  Upgraded.
kde/kpty-5.99.0-x86_64-1.txz:  Upgraded.
kde/kquickcharts-5.99.0-x86_64-1.txz:  Upgraded.
kde/kross-5.99.0-x86_64-1.txz:  Upgraded.
kde/krunner-5.99.0-x86_64-1.txz:  Upgraded.
kde/kservice-5.99.0-x86_64-1.txz:  Upgraded.
kde/ktexteditor-5.99.0-x86_64-1.txz:  Upgraded.
kde/ktextwidgets-5.99.0-x86_64-1.txz:  Upgraded.
kde/kunitconversion-5.99.0-x86_64-1.txz:  Upgraded.
kde/kwallet-5.99.0-x86_64-1.txz:  Upgraded.
kde/kwayland-5.99.0-x86_64-1.txz:  Upgraded.
kde/kwidgetsaddons-5.99.0-x86_64-1.txz:  Upgraded.
kde/kwindowsystem-5.99.0-x86_64-1.txz:  Upgraded.
kde/kxmlgui-5.99.0-x86_64-1.txz:  Upgraded.
kde/kxmlrpcclient-5.99.0-x86_64-1.txz:  Upgraded.
kde/modemmanager-qt-5.99.0-x86_64-1.txz:  Upgraded.
kde/networkmanager-qt-5.99.0-x86_64-1.txz:  Upgraded.
kde/oxygen-icons5-5.99.0-noarch-1.txz:  Upgraded.
kde/plasma-framework-5.99.0-x86_64-1.txz:  Upgraded.
kde/prison-5.99.0-x86_64-1.txz:  Upgraded.
kde/purpose-5.99.0-x86_64-1.txz:  Upgraded.
kde/qqc2-desktop-style-5.99.0-x86_64-1.txz:  Upgraded.
kde/solid-5.99.0-x86_64-1.txz:  Upgraded.
kde/sonnet-5.99.0-x86_64-1.txz:  Upgraded.
kde/syndication-5.99.0-x86_64-1.txz:  Upgraded.
kde/syntax-highlighting-5.99.0-x86_64-1.txz:  Upgraded.
kde/threadweaver-5.99.0-x86_64-1.txz:  Upgraded.
l/QtAV-20220226_fdc613dc-x86_64-1.txz:  Upgraded.
  Compiled against ffmpeg-5.1.2.
l/alsa-plugins-1.2.7.1-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
l/ffmpeg-5.1.2-x86_64-1.txz:  Upgraded.
  Shared library .so-version bump.
  Enabled glslang and vulkan. Thanks to Heinz Wiesinger.
l/gegl-0.4.38-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
l/gst-plugins-libav-1.20.3-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
l/harfbuzz-5.3.0-x86_64-1.txz:  Upgraded.
l/imagemagick-7.1.0_50-x86_64-1.txz:  Upgraded.
l/libvncserver-0.9.13-x86_64-4.txz:  Rebuilt.
  Disabled ffmpeg support (not compatible with ffmpeg5).
l/mlt-7.8.0-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
l/opencv-4.6.0-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
l/pcre2-10.40-x86_64-2.txz:  Rebuilt.
  Moved shared libraries into /lib${LIBDIRSUFFIX}. Thanks to TommyC7.
l/pipewire-0.3.59-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
l/qt5-5.15.6_20220928_06b700dd-x86_64-1.txz:  Upgraded.
  Compiled against ffmpeg-5.1.2.
n/libgpg-error-1.46-x86_64-2.txz:  Rebuilt.
  Rebuilt with --enable-install-gpg-error-config to fix regression building
  gpgme. Thanks to nobodino and ponce.
x/libva-utils-2.16.0-x86_64-1.txz:  Upgraded.
x/wayland-protocols-1.27-noarch-1.txz:  Upgraded.
xap/MPlayer-20221009-x86_64-1.txz:  Upgraded.
  Compiled against ffmpeg-5.1.2.
xap/audacious-plugins-4.2-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
xap/ffmpegthumbnailer-2.2.2-x86_64-4.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
xap/freerdp-2.8.0-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
xap/ssr-0.4.4-x86_64-1.txz:  Upgraded.
  Compiled against ffmpeg-5.1.2.
xap/xine-lib-1.2.12-x86_64-2.txz:  Rebuilt.
  Recompiled against ffmpeg-5.1.2.
2022-10-11 07:00:35 +02:00

150 lines
7.2 KiB
Diff

diff --git a/chromium/media/ffmpeg/ffmpeg_common.h b/chromium/media/ffmpeg/ffmpeg_common.h
index 2734a485cbd..70b1877a43c 100644
--- a/chromium/media/ffmpeg/ffmpeg_common.h
+++ b/chromium/media/ffmpeg/ffmpeg_common.h
@@ -29,6 +29,7 @@ extern "C" {
#include <libavformat/avformat.h>
#include <libavformat/avio.h>
#include <libavutil/avutil.h>
+#include <libavutil/channel_layout.h>
#include <libavutil/imgutils.h>
#include <libavutil/log.h>
#include <libavutil/mastering_display_metadata.h>
diff --git a/chromium/media/filters/audio_file_reader.cc b/chromium/media/filters/audio_file_reader.cc
index cb81d920def..bd73908d0ca 100644
--- a/chromium/media/filters/audio_file_reader.cc
+++ b/chromium/media/filters/audio_file_reader.cc
@@ -85,7 +85,7 @@ bool AudioFileReader::OpenDemuxer() {
}
bool AudioFileReader::OpenDecoder() {
- AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ const AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
if (codec) {
// MP3 decodes to S16P which we don't support, tell it to use S16 instead.
if (codec_context_->sample_fmt == AV_SAMPLE_FMT_S16P)
diff --git a/chromium/media/filters/ffmpeg_audio_decoder.cc b/chromium/media/filters/ffmpeg_audio_decoder.cc
index 0d825ed791b..72fac6167ef 100644
--- a/chromium/media/filters/ffmpeg_audio_decoder.cc
+++ b/chromium/media/filters/ffmpeg_audio_decoder.cc
@@ -329,7 +329,7 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
}
}
- AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ const AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
if (!codec ||
avcodec_open2(codec_context_.get(), codec, &codec_options) < 0) {
DLOG(ERROR) << "Could not initialize audio decoder: "
diff --git a/chromium/media/filters/ffmpeg_demuxer.cc b/chromium/media/filters/ffmpeg_demuxer.cc
index d34db63f3ef..427565b00c1 100644
--- a/chromium/media/filters/ffmpeg_demuxer.cc
+++ b/chromium/media/filters/ffmpeg_demuxer.cc
@@ -98,12 +98,12 @@ static base::TimeDelta ExtractStartTime(AVStream* stream) {
// Next try to use the first DTS value, for codecs where we know PTS == DTS
// (excludes all H26x codecs). The start time must be returned in PTS.
- if (stream->first_dts != kNoFFmpegTimestamp &&
+ if (av_stream_get_first_dts(stream) != kNoFFmpegTimestamp &&
stream->codecpar->codec_id != AV_CODEC_ID_HEVC &&
stream->codecpar->codec_id != AV_CODEC_ID_H264 &&
stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) {
const base::TimeDelta first_pts =
- ConvertFromTimeBase(stream->time_base, stream->first_dts);
+ ConvertFromTimeBase(stream->time_base, av_stream_get_first_dts(stream));
if (first_pts < start_time)
start_time = first_pts;
}
@@ -408,11 +408,11 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
scoped_refptr<DecoderBuffer> buffer;
if (type() == DemuxerStream::TEXT) {
- int id_size = 0;
+ size_t id_size = 0;
uint8_t* id_data = av_packet_get_side_data(
packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
- int settings_size = 0;
+ size_t settings_size = 0;
uint8_t* settings_data = av_packet_get_side_data(
packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
@@ -424,7 +424,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
side_data.data(), side_data.size());
} else {
- int side_data_size = 0;
+ size_t side_data_size = 0;
uint8_t* side_data = av_packet_get_side_data(
packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
@@ -485,7 +485,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
packet->size - data_offset);
}
- int skip_samples_size = 0;
+ size_t skip_samples_size = 0;
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));
diff --git a/chromium/media/filters/ffmpeg_glue.cc b/chromium/media/filters/ffmpeg_glue.cc
index 0ef3521473d..8483ecc348f 100644
--- a/chromium/media/filters/ffmpeg_glue.cc
+++ b/chromium/media/filters/ffmpeg_glue.cc
@@ -59,7 +59,6 @@ static int64_t AVIOSeekOperation(void* opaque, int64_t offset, int whence) {
}
void FFmpegGlue::InitializeFFmpeg() {
- av_register_all();
}
static void LogContainer(bool is_local_file,
@@ -95,9 +94,6 @@ FFmpegGlue::FFmpegGlue(FFmpegURLProtocol* protocol) {
// Enable fast, but inaccurate seeks for MP3.
format_context_->flags |= AVFMT_FLAG_FAST_SEEK;
- // Ensures we can read out various metadata bits like vp8 alpha.
- format_context_->flags |= AVFMT_FLAG_KEEP_SIDE_DATA;
-
// Ensures format parsing errors will bail out. From an audit on 11/2017, all
// instances were real failures. Solves bugs like http://crbug.com/710791.
format_context_->error_recognition |= AV_EF_EXPLODE;
diff --git a/chromium/media/filters/ffmpeg_video_decoder.cc b/chromium/media/filters/ffmpeg_video_decoder.cc
index ef12477ee89..7996606f5f9 100644
--- a/chromium/media/filters/ffmpeg_video_decoder.cc
+++ b/chromium/media/filters/ffmpeg_video_decoder.cc
@@ -391,7 +391,7 @@ bool FFmpegVideoDecoder::ConfigureDecoder(const VideoDecoderConfig& config,
if (decode_nalus_)
codec_context_->flags2 |= AV_CODEC_FLAG2_CHUNKS;
- AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ const AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
if (!codec || avcodec_open2(codec_context_.get(), codec, NULL) < 0) {
ReleaseFFmpegResources();
return false;
diff --git a/chromium/media/filters/media_file_checker.cc b/chromium/media/filters/media_file_checker.cc
index 59c2a2fc618..1a9872c7acb 100644
--- a/chromium/media/filters/media_file_checker.cc
+++ b/chromium/media/filters/media_file_checker.cc
@@ -68,7 +68,7 @@ bool MediaFileChecker::Start(base::TimeDelta check_time) {
auto context = AVStreamToAVCodecContext(format_context->streams[i]);
if (!context)
continue;
- AVCodec* codec = avcodec_find_decoder(cp->codec_id);
+ const AVCodec* codec = avcodec_find_decoder(cp->codec_id);
if (codec && avcodec_open2(context.get(), codec, nullptr) >= 0) {
auto loop = std::make_unique<FFmpegDecodingLoop>(context.get());
stream_contexts[i] = {std::move(context), std::move(loop)};
diff --git a/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc b/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
index 9002b874611..d12fade8b63 100644
--- a/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
+++ b/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
@@ -203,7 +203,7 @@ int32_t H264DecoderImpl::InitDecode(const VideoCodec* codec_settings,
// a pointer |this|.
av_context_->opaque = this;
- AVCodec* codec = avcodec_find_decoder(av_context_->codec_id);
+ const AVCodec* codec = avcodec_find_decoder(av_context_->codec_id);
if (!codec) {
// This is an indication that FFmpeg has not been initialized or it has not
// been compiled/initialized with the correct set of codecs.