[compat-ffmpeg28] fixup libs name
by Nicolas Chauvet
commit 8e952b636c6d8458cb9a8b00a1677d6bbe8de74f
Author: Nicolas Chauvet <kwizart(a)gmail.com>
Date: Tue Feb 20 17:02:07 2018 +0100
fixup libs name
compat-ffmpeg28.spec | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/compat-ffmpeg28.spec b/compat-ffmpeg28.spec
index 099bc10..8276fe8 100644
--- a/compat-ffmpeg28.spec
+++ b/compat-ffmpeg28.spec
@@ -79,8 +79,8 @@ Provides: ffmpeg-libs%{_isa} = %{version}-100
Obsoletes: ffmpeg-libs%{_isa} < %{version}-100
Provides: ffmpeg-compat%{_isa} = %{version}-100
Obsoletes: ffmpeg-compat%{_isa} < %{version}-100
-Provides: compat-ffmpeg%{_isa} = 1:%{version}-100
-Obsoletes: compat-ffmpeg%{_isa} < 1:%{version}-100
+Provides: compat-ffmpeg-libs%{_isa} = 1:%{version}-100
+Obsoletes: compat-ffmpeg-libs%{_isa} < 1:%{version}-100
%description
6 years, 9 months
[compat-ffmpeg28] WIP: reduce dependencies
by Nicolas Chauvet
commit 1486f569522cd4ee2fdedccbd3ae23c94e003dd0
Author: Nicolas Chauvet <kwizart(a)gmail.com>
Date: Tue Feb 6 15:24:23 2018 +0100
WIP: reduce dependencies
compat-ffmpeg28.spec | 30 ++++++++++++++++++++++++++----
1 file changed, 26 insertions(+), 4 deletions(-)
---
diff --git a/compat-ffmpeg28.spec b/compat-ffmpeg28.spec
index 71ef33a..099bc10 100644
--- a/compat-ffmpeg28.spec
+++ b/compat-ffmpeg28.spec
@@ -1,12 +1,18 @@
%if 0%{?rhel}
-%global _without_frei0r 1
%global _without_vpx 1
%endif
+%global _without_frei0r 1
+%global _without_ladspa 1
+%global _without_openal 1
+%global _without_pulse 1
+%global _without_vaapi 1
+%global _without_x264 1
+%global _without_x265 1
Summary: Digital VCR and streaming server
Name: compat-ffmpeg28
Version: 2.8.13
-Release: 2%{?dist}
+Release: 3%{?dist}
%if 0%{?!_without_amr:1}
License: GPLv3+
%else
@@ -41,7 +47,6 @@ BuildRequires: libvdpau-devel
BuildRequires: libvorbis-devel
%{?!_without_vpx:BuildRequires: libvpx-devel >= 0.9.1}
%ifarch %{ix86} x86_64
-BuildRequires: libXvMC-devel
%{?!_without_vaapi:BuildRequires: libva-devel >= 0.31.0}
%endif
%{!?_without_amr:BuildRequires: opencore-amr-devel vo-amrwbenc-devel}
@@ -52,7 +57,6 @@ BuildRequires: opus-devel
%{!?_without_pulse:BuildRequires: pulseaudio-libs-devel}
BuildRequires: perl(Pod::Man)
BuildRequires: schroedinger-devel
-BuildRequires: SDL-devel
BuildRequires: soxr-devel
BuildRequires: speex-devel
BuildRequires: subversion
@@ -66,6 +70,19 @@ BuildRequires: zlib-devel
BuildRequires: yasm
%endif
+# This package is specially usefull for firefox
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1435212
+Supplements: firefox
+
+# Obsoletes/Provides introduced in f28
+Provides: ffmpeg-libs%{_isa} = %{version}-100
+Obsoletes: ffmpeg-libs%{_isa} < %{version}-100
+Provides: ffmpeg-compat%{_isa} = %{version}-100
+Obsoletes: ffmpeg-compat%{_isa} < %{version}-100
+Provides: compat-ffmpeg%{_isa} = 1:%{version}-100
+Obsoletes: compat-ffmpeg%{_isa} < 1:%{version}-100
+
+
%description
FFmpeg is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
@@ -216,6 +233,11 @@ fi
%changelog
+* Tue Feb 20 2018 Nicolas Chauvet <kwizart(a)gmail.com> - 2.8.13-3
+- Clean uneeded dependencies
+- Add supplements for firefox (until it gains ffmpeg-3.5 support)
+- Add Obsoletes/Provides
+
* Fri Feb 02 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 2.8.13-2
- Rebase ffmpeg to compat-ffmpeg28
6 years, 9 months
[qmplay2] Revert 'Add missing isa'
by Leigh Scott
commit 2c9f4a7bbad750e97d5dedef8b08fe42b72777de
Author: leigh123linux <leigh123linux(a)googlemail.com>
Date: Tue Feb 20 11:33:14 2018 +0000
Revert 'Add missing isa'
qmplay2.spec | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
---
diff --git a/qmplay2.spec b/qmplay2.spec
index 5f34087..de6e04d 100644
--- a/qmplay2.spec
+++ b/qmplay2.spec
@@ -44,7 +44,7 @@ ffmpeg and libmodplug (including J2B). It has an integrated Youtube browser.
%package kde-integration
Summary: %{pname} KDE integration subpackage
-Requires: %{name}%{?_isa} = %{version}-%{release}
+Requires: %{name} = %{version}-%{release}
Requires: kde-workspace-common
BuildArch: noarch
@@ -125,7 +125,6 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/*.appdata.
- Rebuild for new ffmpeg snapshot
- Add build reqiures cmake3 and ninja-build
- Fix scriplets
-- Add missing isa
* Sat Jan 27 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 17.12.31-4
- Rebuild for new libcdio
6 years, 9 months
[qmplay2] Rebuild for new ffmpeg snapshot
by Leigh Scott
commit 0cf7a95f2cec30b9d5ab2e08276af7a710418c81
Author: leigh123linux <leigh123linux(a)googlemail.com>
Date: Tue Feb 20 10:48:21 2018 +0000
Rebuild for new ffmpeg snapshot
qmplay2.spec | 38 +++++++++++++++-----------------------
1 file changed, 15 insertions(+), 23 deletions(-)
---
diff --git a/qmplay2.spec b/qmplay2.spec
index 0d4ca23..5f34087 100644
--- a/qmplay2.spec
+++ b/qmplay2.spec
@@ -3,12 +3,14 @@
Name: qmplay2
Version: 17.12.31
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: A Qt based media player, streamer and downloader
License: LGPLv3+
-Url: http://zaps166.sourceforge.net/?app=QMPlay2
+URL: http://zaps166.sourceforge.net/?app=QMPlay2
Source: https://github.com/zaps166/QMPlay2/releases/download/%{version}/%{pname}-...
+BuildRequires: cmake3
+BuildRequires: ninja-build
BuildRequires: kde-workspace-devel
BuildRequires: pkgconfig(Qt5)
BuildRequires: pkgconfig(Qt5X11Extras)
@@ -42,7 +44,7 @@ ffmpeg and libmodplug (including J2B). It has an integrated Youtube browser.
%package kde-integration
Summary: %{pname} KDE integration subpackage
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: kde-workspace-common
BuildArch: noarch
@@ -71,12 +73,13 @@ mkdir -p %{_target_platform}
pushd %{_target_platform}
%cmake \
-DCMAKE_BUILD_TYPE='Debug' \
+ -GNinja \
..
popd
-%make_build -C %{_target_platform}
+%ninja_build -C %{_target_platform}
%install
-%make_install -C %{_target_platform}
+%ninja_install -C %{_target_platform}
find %{buildroot}%{_datadir}/%{name} -name "*.qm" | sed 's:'%{buildroot}'::
s:.*/\([a-zA-Z]\{2\}\).qm:%lang(\1) \0:' > %{name}.lang
@@ -93,24 +96,7 @@ mv %{buildroot}/%{_datadir}/metainfo/QMPlay2.appdata.xml \
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/*.appdata.xml
-%post
-/sbin/ldconfig
-/usr/bin/update-mime-database %{_datadir}/mime &> /dev/null || :
-touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
-/usr/bin/update-desktop-database &> /dev/null || :
-
-%postun
-/sbin/ldconfig
-if [ $1 -eq 0 ] ; then
- /usr/bin/update-mime-database %{_datadir}/mime &> /dev/null || :
- touch --no-create %{_datadir}/icons/hicolor &>/dev/null
- /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
-fi
-/usr/bin/update-desktop-database &> /dev/null || :
-
-%posttrans
-/usr/bin/update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || :
-/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+%ldconfig_scriptlets
%files -f %{name}.lang
%doc AUTHORS ChangeLog README.md TODO
@@ -135,6 +121,12 @@ fi
%{_includedir}/%{pname}
%changelog
+* Tue Feb 20 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 17.12.31-5
+- Rebuild for new ffmpeg snapshot
+- Add build reqiures cmake3 and ninja-build
+- Fix scriplets
+- Add missing isa
+
* Sat Jan 27 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 17.12.31-4
- Rebuild for new libcdio
6 years, 9 months
[gnome-mpv/f26: 3/3] Merge branch 'master' into f26
by Vasiliy Glazov
commit 77732315a9d0a4d0f2b6fd0625fa3d73714cd77f
Merge: 856058e 8f65486
Author: Vasiliy Glazov <v.glazov(a)javad.com>
Date: Tue Feb 20 12:10:07 2018 +0300
Merge branch 'master' into f26
.gitignore | 1 +
gnome-mpv.spec | 15 +++---
sources | 2 +-
...-appdata-and-add-missing-meson-build-file.patch | 57 ----------------------
4 files changed, 11 insertions(+), 64 deletions(-)
---
6 years, 9 months
[gnome-mpv/f26] (3 commits) ...Merge branch 'master' into f26
by Vasiliy Glazov
Summary of changes:
99c333a... Update to 0.14. (*)
8f65486... Drop patch, correct appdata and desktop files paths. (*)
7773231... Merge branch 'master' into f26
(*) This commit already existed in another branch; no separate mail sent
6 years, 9 months
[qt5-qtwebengine-freeworld] Backport https://chromium-review.googlesource.com/889686
by Kevin Kofler
commit 8b5ea73366c4e0c47452c99186dab6f9916efe58
Author: Kevin Kofler <kevin.kofler(a)chello.at>
Date: Tue Feb 20 03:31:57 2018 +0100
Backport https://chromium-review.googlesource.com/889686
https://chromium-review.googlesource.com/c/chromium/src/+/889686
media: Increase DecoderBuffer::kPaddingSize to 64
qt5-qtwebengine-freeworld.spec | 1 +
qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch | 12 ++++++++++++
2 files changed, 13 insertions(+)
---
diff --git a/qt5-qtwebengine-freeworld.spec b/qt5-qtwebengine-freeworld.spec
index c913faf..2acf3f5 100644
--- a/qt5-qtwebengine-freeworld.spec
+++ b/qt5-qtwebengine-freeworld.spec
@@ -107,6 +107,7 @@ Patch23: qtwebengine-everywhere-src-5.10.0-QTBUG-64759.patch
Patch100: qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts.patch
# fix build with FFmpeg 3.5 (apply conditionally because it breaks older FFmpeg)
# backport of: https://chromium-review.googlesource.com/c/chromium/src/+/754261
+# https://chromium-review.googlesource.com/c/chromium/src/+/889686
Patch101: qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
# handled by qt5-srpm-macros, which defines %%qt5_qtwebengine_arches
diff --git a/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch b/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
index 9b8ec0e..92fce9e 100644
--- a/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
+++ b/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
@@ -1,3 +1,15 @@
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/base/decoder_buffer.h qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/base/decoder_buffer.h
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/base/decoder_buffer.h 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/base/decoder_buffer.h 2018-02-20 03:30:04.193950423 +0100
+@@ -37,7 +37,7 @@
+ : public base::RefCountedThreadSafe<DecoderBuffer> {
+ public:
+ enum {
+- kPaddingSize = 32,
++ kPaddingSize = 64,
+ #if defined(ARCH_CPU_ARM_FAMILY)
+ kAlignmentSize = 16
+ #else
diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc
--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc 2018-02-02 11:39:52.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc 2018-02-20 00:36:46.538199224 +0100
6 years, 9 months
[smplayer] Fix one GCC 8 warning Build simple_web_server with rpm CFLAGS Better ifdefs scriptlets
by Sérgio M. Basto
commit f090b97d526195598caab9fb3d3acdddf0f74670
Author: Sérgio M. Basto <sergio(a)serjux.com>
Date: Tue Feb 20 00:56:35 2018 +0000
Fix one GCC 8 warning
Build simple_web_server with rpm CFLAGS
Better ifdefs scriptlets
smplayer.spec | 23 +++++++++++++++--------
webserver.patch | 14 +++++++++++++-
2 files changed, 28 insertions(+), 9 deletions(-)
---
diff --git a/smplayer.spec b/smplayer.spec
index f7c6147..23c9788 100644
--- a/smplayer.spec
+++ b/smplayer.spec
@@ -3,7 +3,7 @@ Version: 18.2.2
%global smtube_ver 18.1.0
%global smplayer_themes_ver 17.3.0
%global smplayer_skins_ver 15.2.0
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: A graphical frontend for mplayer and mpv
Group: Applications/Multimedia
@@ -42,12 +42,11 @@ BuildRequires: pkgconfig(zlib)
BuildRequires: pkgconfig(Qt5WebKit)
Requires: hicolor-icon-theme
# smplayer without mplayer is quite useless
-%if 0%{?fedora}
+%if 0%{?fedora} || 0%{?rhel} > 7
Recommends: smtube
-Recommends: mplayer
Requires: mplayer-backend
-%endif
-%if 0%{?rhel}
+Suggests: mplayer
+%else
Requires: mplayer
%endif
@@ -71,10 +70,9 @@ Summary: YouTube browser for SMPlayer
Group: Applications/Multimedia
License: GPLv2+
URL: http://www.smtube.org
-%if 0%{?fedora}
+%if 0%{?fedora} || 0%{?rhel} > 7
Recommends: smplayer
-%endif
-%if 0%{?rhel}
+%else
Requires: smplayer
%endif
@@ -144,6 +142,10 @@ pushd smplayer-skins-%{smplayer_skins_ver}
mv Changelog Changelog-skins.txt
%make_build
popd
+pushd webserver
+export CFLAGS_EXTRA="%{__global_compiler_flags}"
+%make_build
+popd
%install
%make_install PREFIX=%{_prefix} DOC_PATH=%{_docdir}/%{name}
@@ -210,6 +212,11 @@ fi
%{_datadir}/smplayer/themes/
%changelog
+* Tue Feb 20 2018 Sérgio Basto <sergio(a)serjux.com> - 18.2.2-3
+- Fix one GCC 8 warning
+- Build simple_web_server with rpm CFLAGS
+- Better ifdefs scriptlets
+
* Mon Feb 19 2018 Sérgio Basto <sergio(a)serjux.com> - 18.2.2-2
- Mute GCC 8 warnings
diff --git a/webserver.patch b/webserver.patch
index b8df1da..5607502 100644
--- a/webserver.patch
+++ b/webserver.patch
@@ -6,7 +6,19 @@ diff -rup smplayer-18.2.0/webserver/Makefile smplayer-18.2.2/webserver/Makefile
SOURCES = main.c mongoose.c
-CFLAGS = -O2 -W -Wall -Werror -Wno-unused-function $(CFLAGS_EXTRA) $(MODULE_CFLAGS)
-+CFLAGS = -O2 -W -Wall -Werror -Wno-unused-function -Wno-format-truncation -Wno-stringop-truncation $(CFLAGS_EXTRA) $(MODULE_CFLAGS)
++CFLAGS = -O2 -W -Wall -Werror -Wno-unused-function -Wno-format-truncation $(CFLAGS_EXTRA) $(MODULE_CFLAGS)
ifeq ($(OS), Windows_NT)
CFLAGS += -lws2_32
+diff -rup smplayer-18.2.2/webserver/mongoose.c smplayer-18.2.0/webserver/mongoose.c
+--- smplayer-18.2.2/webserver/mongoose.c 2017-01-10 18:06:03.000000000 +0000
++++ smplayer-18.2.0/webserver/mongoose.c 2018-02-19 05:41:51.135640350 +0000
+@@ -10789,6 +11655,8 @@ int mg_resolve_async_opt(struct mg_mgr *
+ }
+
+ strncpy(req->name, name, sizeof(req->name));
++ req->name[sizeof(req->name) - 1] = '\0';
++
+ req->query = query;
+ req->callback = cb;
+ req->data = data;
6 years, 9 months
[qt5-qtwebengine-freeworld] Fix build with FFmpeg 3.5 (apply conditionally because it breaks older FFmpeg)
by Kevin Kofler
commit bb7eb80def7c06ea0395af3c3466ef8515f1802c
Author: Kevin Kofler <kevin.kofler(a)chello.at>
Date: Tue Feb 20 00:49:10 2018 +0100
Fix build with FFmpeg 3.5 (apply conditionally because it breaks older FFmpeg)
qt5-qtwebengine-freeworld.spec | 7 +
qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch | 218 +++++++++++++++++++++++
2 files changed, 225 insertions(+)
---
diff --git a/qt5-qtwebengine-freeworld.spec b/qt5-qtwebengine-freeworld.spec
index 7362d3b..c913faf 100644
--- a/qt5-qtwebengine-freeworld.spec
+++ b/qt5-qtwebengine-freeworld.spec
@@ -105,6 +105,9 @@ Patch23: qtwebengine-everywhere-src-5.10.0-QTBUG-64759.patch
# see: http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts
# backport of: https://chromium-review.googlesource.com/c/chromium/src/+/731871
Patch100: qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts.patch
+# fix build with FFmpeg 3.5 (apply conditionally because it breaks older FFmpeg)
+# backport of: https://chromium-review.googlesource.com/c/chromium/src/+/754261
+Patch101: qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
# handled by qt5-srpm-macros, which defines %%qt5_qtwebengine_arches
ExclusiveArch: %{qt5_qtwebengine_arches}
@@ -334,6 +337,9 @@ This version is compiled with support for patent-encumbered codecs enabled.
%patch23 -p1 -b .QTBUG-64759
%endif
%patch100 -p1 -b .no-aspirational-scripts
+%if 0%{?fedora} > 27
+%patch101 -p1 -b .ffmpeg35
+%endif
# fix // in #include in content/renderer/gpu to avoid debugedit failure
sed -i -e 's!gpu//!gpu/!g' \
src/3rdparty/chromium/content/renderer/gpu/compositor_forwarding_message_filter.cc
@@ -417,6 +423,7 @@ echo "%{_libdir}/%{name}" \
- Rediff (unfuzz) no-sse2 patch
- Workaround FTBFS with GCC 8, build with -fabi-version=11 on F28+ (rh#1545918)
- Reenable system libvpx on F28+, Rawhide (future F28) has libvpx 1.7.0 now
+- Fix build with FFmpeg 3.5 (apply conditionally because it breaks older FFmpeg)
* Sat Dec 30 2017 Kevin Kofler <Kevin(a)tigcc.ticalc.org> - 5.10.0-1
- Update to 5.10.0
diff --git a/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch b/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
new file mode 100644
index 0000000..9b8ec0e
--- /dev/null
+++ b/qtwebengine-everywhere-src-5.10.1-ffmpeg35.patch
@@ -0,0 +1,218 @@
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc 2018-02-20 00:36:46.538199224 +0100
+@@ -71,11 +71,11 @@
+ if (config.extra_data) {
+ codec_context->extradata_size = config.extra_data_size;
+ codec_context->extradata = reinterpret_cast<uint8_t*>(
+- av_malloc(config.extra_data_size + FF_INPUT_BUFFER_PADDING_SIZE));
++ av_malloc(config.extra_data_size + AV_INPUT_BUFFER_PADDING_SIZE));
+ memcpy(codec_context->extradata, config.extra_data,
+ config.extra_data_size);
+ memset(codec_context->extradata + config.extra_data_size, '\0',
+- FF_INPUT_BUFFER_PADDING_SIZE);
++ AV_INPUT_BUFFER_PADDING_SIZE);
+ } else {
+ codec_context->extradata = NULL;
+ codec_context->extradata_size = 0;
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_video_decoder.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_video_decoder.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_video_decoder.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/cdm/ppapi/external_clear_key/ffmpeg_cdm_video_decoder.cc 2018-02-20 00:36:46.538199224 +0100
+@@ -101,11 +101,11 @@
+ if (config.extra_data) {
+ codec_context->extradata_size = config.extra_data_size;
+ codec_context->extradata = reinterpret_cast<uint8_t*>(
+- av_malloc(config.extra_data_size + FF_INPUT_BUFFER_PADDING_SIZE));
++ av_malloc(config.extra_data_size + AV_INPUT_BUFFER_PADDING_SIZE));
+ memcpy(codec_context->extradata, config.extra_data,
+ config.extra_data_size);
+ memset(codec_context->extradata + config.extra_data_size, 0,
+- FF_INPUT_BUFFER_PADDING_SIZE);
++ AV_INPUT_BUFFER_PADDING_SIZE);
+ } else {
+ codec_context->extradata = NULL;
+ codec_context->extradata_size = 0;
+@@ -164,7 +164,6 @@
+ codec_context_->err_recognition = AV_EF_CAREFUL;
+ codec_context_->thread_count = kDecodeThreads;
+ codec_context_->opaque = this;
+- codec_context_->flags |= CODEC_FLAG_EMU_EDGE;
+
+ AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ if (!codec) {
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc 2018-02-20 00:36:46.538199224 +0100
+@@ -30,10 +30,10 @@
+
+ } // namespace
+
+-// Why FF_INPUT_BUFFER_PADDING_SIZE? FFmpeg assumes all input buffers are
++// Why AV_INPUT_BUFFER_PADDING_SIZE? FFmpeg assumes all input buffers are
+ // padded. Check here to ensure FFmpeg only receives data padded to its
+ // specifications.
+-static_assert(DecoderBuffer::kPaddingSize >= FF_INPUT_BUFFER_PADDING_SIZE,
++static_assert(DecoderBuffer::kPaddingSize >= AV_INPUT_BUFFER_PADDING_SIZE,
+ "DecoderBuffer padding size does not fit ffmpeg requirement");
+
+ // Alignment requirement by FFmpeg for input and output buffers. This need to
+@@ -444,11 +444,11 @@
+ } else {
+ codec_context->extradata_size = config.extra_data().size();
+ codec_context->extradata = reinterpret_cast<uint8_t*>(
+- av_malloc(config.extra_data().size() + FF_INPUT_BUFFER_PADDING_SIZE));
++ av_malloc(config.extra_data().size() + AV_INPUT_BUFFER_PADDING_SIZE));
+ memcpy(codec_context->extradata, &config.extra_data()[0],
+ config.extra_data().size());
+ memset(codec_context->extradata + config.extra_data().size(), '\0',
+- FF_INPUT_BUFFER_PADDING_SIZE);
++ AV_INPUT_BUFFER_PADDING_SIZE);
+ }
+ }
+
+@@ -585,11 +585,11 @@
+ } else {
+ codec_context->extradata_size = config.extra_data().size();
+ codec_context->extradata = reinterpret_cast<uint8_t*>(
+- av_malloc(config.extra_data().size() + FF_INPUT_BUFFER_PADDING_SIZE));
++ av_malloc(config.extra_data().size() + AV_INPUT_BUFFER_PADDING_SIZE));
+ memcpy(codec_context->extradata, &config.extra_data()[0],
+ config.extra_data().size());
+ memset(codec_context->extradata + config.extra_data().size(), '\0',
+- FF_INPUT_BUFFER_PADDING_SIZE);
++ AV_INPUT_BUFFER_PADDING_SIZE);
+ }
+ }
+
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h 2018-02-20 00:36:46.538199224 +0100
+@@ -24,22 +24,7 @@
+
+ // Include FFmpeg header files.
+ extern "C" {
+-#if !BUILDFLAG(USE_SYSTEM_FFMPEG)
+-// Disable deprecated features which result in spammy compile warnings. This
+-// list of defines must mirror those in the 'defines' section of FFmpeg's
+-// BUILD.gn file or the headers below will generate different structures!
+-#define FF_API_CONVERGENCE_DURATION 0
+-#endif // !BUILDFLAG(USE_SYSTEM_FFMPEG)
+-// Upstream libavcodec/utils.c still uses the deprecated
+-// av_dup_packet(), causing deprecation warnings.
+-// The normal fix for such things is to disable the feature as below,
+-// but the upstream code does not yet compile with it disabled.
+-// (In this case, the fix is replacing the call with a new function.)
+-// In the meantime, we directly disable those warnings in the C file.
+-//#define FF_API_AVPACKET_OLD_API 0
+-
+ // Temporarily disable possible loss of data warning.
+-// TODO(scherkus): fix and upstream the compiler warnings.
+ MSVC_PUSH_DISABLE_WARNING(4244);
+ #include <libavcodec/avcodec.h>
+ #include <libavformat/avformat.h>
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_aac_bitstream_converter.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_aac_bitstream_converter.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_aac_bitstream_converter.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_aac_bitstream_converter.cc 2018-02-20 00:37:14.173777777 +0100
+@@ -239,8 +239,9 @@
+
+ // Release the old packet.
+ av_packet_unref(packet);
+- *packet = dest_packet; // Finally, replace the values in the input packet.
+
++ // Finally, replace the values in the input packet.
++ memcpy(packet, &dest_packet, sizeof(*packet));
+ return true;
+ }
+
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc 2018-02-20 00:37:14.173777777 +0100
+@@ -323,7 +323,6 @@
+
+ codec_context_->opaque = this;
+ codec_context_->get_buffer2 = GetAudioBufferImpl;
+- codec_context_->refcounted_frames = 1;
+
+ if (config.codec() == kCodecOpus)
+ codec_context_->request_sample_fmt = AV_SAMPLE_FMT_FLT;
+@@ -368,7 +367,7 @@
+ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
+ AVFrame* frame,
+ int flags) {
+- DCHECK(s->codec->capabilities & CODEC_CAP_DR1);
++ DCHECK(s->codec->capabilities & AV_CODEC_CAP_DR1);
+ DCHECK_EQ(s->codec_type, AVMEDIA_TYPE_AUDIO);
+
+ // Since this routine is called by FFmpeg when a buffer is required for audio
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_demuxer_unittest.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_demuxer_unittest.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_demuxer_unittest.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_demuxer_unittest.cc 2018-02-20 00:37:14.174777762 +0100
+@@ -878,7 +878,8 @@
+ EXPECT_LT(bytes_read_with_video_disabled, bytes_read_with_video_enabled);
+ }
+
+-TEST_F(FFmpegDemuxerTest, Read_DiscardDisabledTextStream) {
++// WebM text track discarding doesn't work in ffmpeg. http://crbug.com/681886.
++TEST_F(FFmpegDemuxerTest, DISABLED_Read_DiscardDisabledTextStream) {
+ // This test case reads the same video frame twice, first with the text track
+ // enabled, then with the text track disabled. When the text track is
+ // disabled, FFmpegDemuxer sets the AVDISCARD_ALL flag on the corresponding
+@@ -1081,11 +1082,11 @@
+ base::RunLoop().Run();
+
+ // Text read #1.
+- text_stream->Read(NewReadCB(FROM_HERE, 19, 500000, true));
++ text_stream->Read(NewReadCB(FROM_HERE, 19, 1000000, true));
+ base::RunLoop().Run();
+
+ // Text read #2.
+- text_stream->Read(NewReadCB(FROM_HERE, 19, 1000000, true));
++ text_stream->Read(NewReadCB(FROM_HERE, 19, 1500000, true));
+ base::RunLoop().Run();
+ }
+
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc 2018-02-20 00:37:14.174777762 +0100
+@@ -73,8 +73,9 @@
+
+ // At the end we must destroy the old packet.
+ av_packet_unref(packet);
+- *packet = dest_packet; // Finally, replace the values in the input packet.
+
++ // Finally, replace the values in the input packet.
++ memcpy(packet, &dest_packet, sizeof(*packet));
+ return true;
+ }
+
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc 2018-02-20 00:37:14.174777762 +0100
+@@ -86,8 +86,9 @@
+
+ // At the end we must destroy the old packet.
+ av_packet_unref(packet);
+- *packet = dest_packet; // Finally, replace the values in the input packet.
+
++ // Finally, replace the values in the input packet.
++ memcpy(packet, &dest_packet, sizeof(*packet));
+ return true;
+ }
+
+diff -ur qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc
+--- qtwebengine-everywhere-src-5.10.1/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc 2018-02-02 11:39:52.000000000 +0100
++++ qtwebengine-everywhere-src-5.10.1-ffmpeg35/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc 2018-02-20 00:37:14.174777762 +0100
+@@ -427,12 +427,10 @@
+ codec_context_->thread_type =
+ FF_THREAD_SLICE | (low_delay ? 0 : FF_THREAD_FRAME);
+ codec_context_->opaque = this;
+- codec_context_->flags |= CODEC_FLAG_EMU_EDGE;
+ codec_context_->get_buffer2 = GetVideoBufferImpl;
+- codec_context_->refcounted_frames = 1;
+
+ if (decode_nalus_)
+- codec_context_->flags2 |= CODEC_FLAG2_CHUNKS;
++ codec_context_->flags2 |= AV_CODEC_FLAG2_CHUNKS;
+
+ AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ if (!codec || avcodec_open2(codec_context_.get(), codec, NULL) < 0) {
6 years, 9 months