[mpv] Add BR perl(Encode) to build on F24 (merge from Adrian Reber PR)
by Sérgio M. Basto
commit 43f5d06f2e8a579ef6547f42c26d55ad1330c086
Author: Sérgio M. Basto <sergio(a)serjux.com>
Date: Thu Jun 30 23:31:10 2016 +0100
Add BR perl(Encode) to build on F24 (merge from Adrian Reber PR)
mpv.spec | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
---
diff --git a/mpv.spec b/mpv.spec
index 0f93627..1894899 100644
--- a/mpv.spec
+++ b/mpv.spec
@@ -1,6 +1,6 @@
Name: mpv
Version: 0.18.0
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Movie player playing most video formats and DVDs
License: GPLv2+
URL: http://%{name}.io/
@@ -51,6 +51,10 @@ BuildRequires: perl(Math::BigInt)
BuildRequires: perl(Math::BigRat)
%endif
+%if 0%{?fedora} >= 24
+BuildRequires: perl(Encode)
+%endif
+
Requires: hicolor-icon-theme
%description
@@ -144,6 +148,9 @@ fi
%{_libdir}/pkgconfig/mpv.pc
%changelog
+* Thu Jun 30 2016 Sérgio Basto <sergio(a)serjux.com> - 0.18.0-2
+- Add BR perl(Encode) to build on F24 (merge from Adrian Reber PR)
+
* Tue Jun 28 2016 Sérgio Basto <sergio(a)serjux.com> - 0.18.0-1
- Update to 0.18.0
8 years, 4 months
[vdr-markad/f24] replaced function avcodec_alloc_frame(); by av_frame_alloc(); due ffmpeg3 version
by Martin Gansser
commit 621eb46fa53f25bd4a70001a0fbb33e484f07925
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 18:27:15 2016 +0200
replaced function avcodec_alloc_frame(); by av_frame_alloc(); due ffmpeg3 version
vdr-markad.spec | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)
---
diff --git a/vdr-markad.spec b/vdr-markad.spec
index 88f6eef..8738ec5 100644
--- a/vdr-markad.spec
+++ b/vdr-markad.spec
@@ -1,17 +1,17 @@
-%global commit 74e2a8c5382fa8bfacd12274899112724a1e0d51
-%global shortcommit %(c=%{commit}; echo ${c:0:7})
+%global commit0 74e2a8c5382fa8bfacd12274899112724a1e0d51
+%global shortcommit0 %(c=%{commit0}; echo ${c:0:7})
%global gitdate 20151016
Name: vdr-markad
Version: 0.1.4
-Release: 8.%{gitdate}git%{shortcommit}%{?dist}
+Release: 9.%{gitdate}git%{shortcommit0}%{?dist}
Summary: Advanced commercial detection for VDR
License: GPLv2+
# how to get the tarball
# go to http://projects.vdr-developer.org/git/vdr-plugin-markad.git/commit/
# click the link behind commit, then select the download links below.
URL: http://projects.vdr-developer.org/projects/plg-markad
-Source0: http://projects.vdr-developer.org/git/vdr-plugin-markad.git/snapshot/vdr-...
+Source0: http://projects.vdr-developer.org/git/vdr-plugin-markad.git/snapshot/vdr-...
Source1: %{name}.conf
BuildRequires: vdr-devel >= 1.7.30
@@ -22,7 +22,11 @@ Requires: vdr(abi)%{?_isa} = %{vdr_apiversion}
VDR-Plugin: markad - %{summary}
%prep
-%setup -qn vdr-plugin-markad-%{commit}
+%setup -qn vdr-plugin-markad-%{commit0}
+
+# ffmpeg3 patch
+# replaced function avcodec_alloc_frame(); by av_frame_alloc();
+sed -i -e 's|avcodec_alloc_frame()|av_frame_alloc()|g' command/decoder.cpp
%build
make CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" %{?_smp_mflags} \
@@ -68,6 +72,9 @@ fi
%{vdr_vardir}/markad/
%changelog
+* Wed Jun 29 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.1.4-9.20151016git74e2a8c
+- replaced function avcodec_alloc_frame(); by av_frame_alloc(); due ffmpeg3 version
+
* Sat Oct 17 2015 Martin Gansser <martinkg(a)fedoraproject.org> - 0.1.4-8.20151016git74e2a8c
- rebuild for new git version
8 years, 4 months
[vdr-markad] replaced function avcodec_alloc_frame(); by av_frame_alloc(); due ffmpeg3 version
by Martin Gansser
commit 940cfa4ea3aad3b9e08ace6f7d20d03d853387e2
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 18:26:08 2016 +0200
replaced function avcodec_alloc_frame(); by av_frame_alloc(); due ffmpeg3 version
clog | 2 ++
1 file changed, 2 insertions(+)
---
diff --git a/clog b/clog
new file mode 100644
index 0000000..372f7d0
--- /dev/null
+++ b/clog
@@ -0,0 +1,2 @@
+replaced function avcodec_alloc_frame(); by av_frame_alloc(); due ffmpeg3 version
+
8 years, 4 months
[vdr-burn/f24] rebuild due new libvpx version
by Martin Gansser
commit 4c5628a114937e58fafe3e07f07e63d1c77a05df
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 18:16:07 2016 +0200
rebuild due new libvpx version
.gitignore | 1 +
vdr-burn-0.3.0-old-sd-recordings.patch | 11 +++++++++++
vdr-burn.spec | 10 +++++++++-
3 files changed, 21 insertions(+), 1 deletion(-)
---
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6a00d85
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/vdr-burn-0.3.0.tgz
diff --git a/vdr-burn-0.3.0-old-sd-recordings.patch b/vdr-burn-0.3.0-old-sd-recordings.patch
new file mode 100644
index 0000000..6861fb6
--- /dev/null
+++ b/vdr-burn-0.3.0-old-sd-recordings.patch
@@ -0,0 +1,11 @@
+--- menuburn.c.orig 2016-05-07 17:59:01.411687398 +0200
++++ menuburn.c 2016-05-07 18:00:32.771953590 +0200
+@@ -369,7 +369,7 @@
+
+ menu::recording_item* item = new menu::recording_item(rec, m_pathLevel);
+ string itemText( item->Text() );
+- if (!item->is_directory() && (is_H264 | !is_MPEG2))
++ if (!item->is_directory() && is_H264)
+ item->SetSelectable(false);
+ if (itemText.length() != 0 && (lastItem == 0 || itemText != lastText)) {
+ // select directory we are coming from as current item
diff --git a/vdr-burn.spec b/vdr-burn.spec
index 928fb19..e05ea5f 100644
--- a/vdr-burn.spec
+++ b/vdr-burn.spec
@@ -4,7 +4,7 @@
Name: vdr-%{pname}
Version: 0.3.0
-Release: 1%{?dist}
+Release: 3%{?dist}
Summary: DVD writing plugin for VDR
# genindex is GPLv2+, rest GPL+
@@ -14,6 +14,7 @@ Source0: https://projects.vdr-developer.org/attachments/download/2028/%{n
Source1: %{name}.conf
Source2: http://www.muempf.de/down/genindex-%{gver}.tar.gz
Patch0: %{name}-0.3.0-config.patch
+Patch1: %{name}-0.3.0-old-sd-recordings.patch
BuildRequires: vdr-devel >= 2.0.6
BuildRequires: boost-devel
@@ -41,6 +42,7 @@ recording summary exceeds one page).
%setup -q -c -a 2
mv %{pname}-%{version} burn ; cd burn
%patch0 -p2
+%patch1 -p0
sed -i -e 's|/var/lib/vdr/|%{vdr_vardir}/|g' chain-archive.c jobs.c scripts/vdrburn-*.sh
sed -i -e 's|"Vera"|"DejaVuSans"|g' skins.c
@@ -94,6 +96,12 @@ install -Dpm 644 %{SOURCE1} \
%changelog
+* Sat Jun 25 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.3.0-3
+- rebuild due new libvpx version
+
+* Sat May 07 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.3.0-2
+- Added vdr-burn-0.3.0-old-sd-recordings.patch
+
* Sun Apr 03 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.3.0-1
- Update to 0.3.0
8 years, 4 months
[vdr-burn] rebuild due new libvpx version
by Martin Gansser
commit 5ba2782e3c7e64bf467b7f3ff39eb61d05fbc6a5
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 18:12:12 2016 +0200
rebuild due new libvpx version
.gitignore | 2 +-
sources | 2 +-
vdr-burn-0.3.0-old-sd-recordings.patch | 11 +++++++++++
vdr-burn.spec | 5 ++++-
4 files changed, 17 insertions(+), 3 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index d5f559f..6a00d85 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-/vdr-burn-0.3.0-old-sd-recordings.patch
+/vdr-burn-0.3.0.tgz
diff --git a/sources b/sources
index 552bcd1..094d254 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-47328a3ab1179d234de2634c715672bd vdr-burn-0.3.0-old-sd-recordings.patch
+bfb1847462eea781f98634eb04faab3a vdr-burn-0.3.0.tgz
diff --git a/vdr-burn-0.3.0-old-sd-recordings.patch b/vdr-burn-0.3.0-old-sd-recordings.patch
new file mode 100644
index 0000000..6861fb6
--- /dev/null
+++ b/vdr-burn-0.3.0-old-sd-recordings.patch
@@ -0,0 +1,11 @@
+--- menuburn.c.orig 2016-05-07 17:59:01.411687398 +0200
++++ menuburn.c 2016-05-07 18:00:32.771953590 +0200
+@@ -369,7 +369,7 @@
+
+ menu::recording_item* item = new menu::recording_item(rec, m_pathLevel);
+ string itemText( item->Text() );
+- if (!item->is_directory() && (is_H264 | !is_MPEG2))
++ if (!item->is_directory() && is_H264)
+ item->SetSelectable(false);
+ if (itemText.length() != 0 && (lastItem == 0 || itemText != lastText)) {
+ // select directory we are coming from as current item
diff --git a/vdr-burn.spec b/vdr-burn.spec
index 34dd6cc..e05ea5f 100644
--- a/vdr-burn.spec
+++ b/vdr-burn.spec
@@ -4,7 +4,7 @@
Name: vdr-%{pname}
Version: 0.3.0
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: DVD writing plugin for VDR
# genindex is GPLv2+, rest GPL+
@@ -96,6 +96,9 @@ install -Dpm 644 %{SOURCE1} \
%changelog
+* Sat Jun 25 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.3.0-3
+- rebuild due new libvpx version
+
* Sat May 07 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.3.0-2
- Added vdr-burn-0.3.0-old-sd-recordings.patch
8 years, 4 months
[vdr-skindesigner/f23] Update to 1.1.5
by Martin Gansser
commit 28a03b3b701f059246869b4d546ef2379275fe62
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 18:01:57 2016 +0200
Update to 1.1.5
.gitignore | 1 +
sources | 2 +-
vdr-skindesigner.spec | 26 +++++++++++++++++++++++++-
3 files changed, 27 insertions(+), 2 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 18f8c0c..2e1ce77 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@ vdr-plugin-skindesigner-0.8.6.tar.bz2
vdr-plugin-skindesigner-0.9.1.tar.bz2
vdr-plugin-skindesigner-0.9.3.tar.bz2
vdr-plugin-skindesigner-0.9.5.tar.bz2
+/vdr-plugin-skindesigner-1.1.5.tar.bz2
diff --git a/sources b/sources
index 5786251..7a2cdbf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c86ce7f911916d3e281568f6442d2176 vdr-plugin-skindesigner-0.9.5.tar.bz2
+a3b643de73a4c4744be9b1473fed9b98 vdr-plugin-skindesigner-1.1.5.tar.bz2
diff --git a/vdr-skindesigner.spec b/vdr-skindesigner.spec
index 0b99596..45535ff 100644
--- a/vdr-skindesigner.spec
+++ b/vdr-skindesigner.spec
@@ -1,5 +1,5 @@
Name: vdr-skindesigner
-Version: 0.9.5
+Version: 1.1.5
Release: 1%{?dist}
Summary: A VDR skinning engine that displays XML based Skins
@@ -116,6 +116,30 @@ ldconfig -n %{buildroot}%{_libdir}
%{_includedir}/libskindesignerapi/*
%changelog
+* Sat Jun 25 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.5-1
+- Update to 1.1.5
+
+* Fri Jun 24 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.4-1
+- Update to 1.1.4
+
+* Mon Jun 13 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.3-1
+- Update to 1.1.3
+
+* Mon May 30 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.2-1
+- Update to 1.1.2
+
+* Fri May 27 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.0-1
+- Update to 1.1.0
+
+* Sat May 14 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.0.3-1
+- Update to 1.0.3
+
+* Mon May 02 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.0.2-1
+- Update to 1.0.2
+
+* Sun Apr 17 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.0.0-1
+- Update to 1.0.0
+
* Thu Mar 31 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.9.5-1
- Update to 0.9.5
8 years, 4 months
[vdr-skindesigner/f24] Update to 1.1.5
by Martin Gansser
commit d751a19c760ecc862af5d6e7af267915cde06ea8
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 17:59:56 2016 +0200
Update to 1.1.5
.gitignore | 1 +
sources | 2 +-
vdr-skindesigner.spec | 26 +++++++++++++++++++++++++-
3 files changed, 27 insertions(+), 2 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 18f8c0c..2e1ce77 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@ vdr-plugin-skindesigner-0.8.6.tar.bz2
vdr-plugin-skindesigner-0.9.1.tar.bz2
vdr-plugin-skindesigner-0.9.3.tar.bz2
vdr-plugin-skindesigner-0.9.5.tar.bz2
+/vdr-plugin-skindesigner-1.1.5.tar.bz2
diff --git a/sources b/sources
index 5786251..7a2cdbf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c86ce7f911916d3e281568f6442d2176 vdr-plugin-skindesigner-0.9.5.tar.bz2
+a3b643de73a4c4744be9b1473fed9b98 vdr-plugin-skindesigner-1.1.5.tar.bz2
diff --git a/vdr-skindesigner.spec b/vdr-skindesigner.spec
index 0b99596..45535ff 100644
--- a/vdr-skindesigner.spec
+++ b/vdr-skindesigner.spec
@@ -1,5 +1,5 @@
Name: vdr-skindesigner
-Version: 0.9.5
+Version: 1.1.5
Release: 1%{?dist}
Summary: A VDR skinning engine that displays XML based Skins
@@ -116,6 +116,30 @@ ldconfig -n %{buildroot}%{_libdir}
%{_includedir}/libskindesignerapi/*
%changelog
+* Sat Jun 25 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.5-1
+- Update to 1.1.5
+
+* Fri Jun 24 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.4-1
+- Update to 1.1.4
+
+* Mon Jun 13 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.3-1
+- Update to 1.1.3
+
+* Mon May 30 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.2-1
+- Update to 1.1.2
+
+* Fri May 27 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.1.0-1
+- Update to 1.1.0
+
+* Sat May 14 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.0.3-1
+- Update to 1.0.3
+
+* Mon May 02 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.0.2-1
+- Update to 1.0.2
+
+* Sun Apr 17 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 1.0.0-1
+- Update to 1.0.0
+
* Thu Mar 31 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.9.5-1
- Update to 0.9.5
8 years, 4 months
[vdr-softhddevice/f24] Added ffmpeg_2.9.patch
by Martin Gansser
commit ebc3142f6632998e7ca78b28d4437c11f2505148
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 17:54:24 2016 +0200
Added ffmpeg_2.9.patch
vdr-softhddevice.spec | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
---
diff --git a/vdr-softhddevice.spec b/vdr-softhddevice.spec
index 63bfb3c..0e7819b 100644
--- a/vdr-softhddevice.spec
+++ b/vdr-softhddevice.spec
@@ -1,21 +1,23 @@
-%global commit ee2311d25237b9828c1423505e5d4055a836414d
-%global shortcommit %(c=%{commit}; echo ${c:0:7})
-%global gitdate 20151006
+%global commit0 6dfa88aecf1b5a4c5932ba278209d9f22676547f
+%global shortcommit0 %(c=%{commit0}; echo ${c:0:7})
+%global gitdate 20151103
Name: vdr-softhddevice
Version: 0.6.1
-Release: 7.%{gitdate}git%{shortcommit}%{?dist}
+Release: 9.%{gitdate}git%{shortcommit0}%{?dist}
Summary: A software and GPU emulated HD output device plugin for VDR
License: AGPLv3
URL: http://projects.vdr-developer.org/projects/plg-softhddevice
-Source0: http://projects.vdr-developer.org/git/vdr-plugin-softhddevice.git/snapsho...
+Source0: http://projects.vdr-developer.org/git/vdr-plugin-softhddevice.git/snapsho...
# Configuration files for plugin parameters. These are Fedora specific and not in upstream.
Source1: %{name}.conf
# http://projects.vdr-developer.org/issues/1417
Patch0: exit-crash.patch
# http://projects.vdr-developer.org/issues/1916
Patch1: chartype.patch
+# https://projects.vdr-developer.org/issues/2424
+Patch2: ffmpeg_2.9.patch
BuildRequires: vdr-devel >= 1.7.22
BuildRequires: gettext
@@ -52,9 +54,10 @@ A software and GPU emulated HD output device plugin for VDR.
%prep
-%setup -qn vdr-plugin-softhddevice-%{commit}
+%setup -qn vdr-plugin-softhddevice-%{commit0}
%patch0 -p1
%patch1 -p0
+%patch2 -p1
# remove .git files and Gentoo files
rm -f .indent.pro .gitignore .gitattributes
@@ -82,6 +85,12 @@ install -Dpm 644 %{SOURCE1} \
%license AGPL-3.0.txt
%changelog
+* Tue Jun 28 2016 Martin Gansser <martinkg(a)fedoraproject.org> - 0.6.1-9.20151103git6dfa88a
+- Added ffmpeg_2.9.patch
+
+* Wed Nov 04 2015 Martin Gansser <martinkg(a)fedoraproject.org> - 0.6.1-8.20151103git6dfa88a
+- update for new git snapshot
+
* Wed Oct 07 2015 Martin Gansser <martinkg(a)fedoraproject.org> - 0.6.1-7.20151006gitee2311d
- update for new git snapshot
8 years, 4 months
[vdr-softhddevice/f24] Update to 1.1.5
by Martin Gansser
commit c9796fac6a0a91b7d06b53f792a58c6bae3a739b
Author: Martin Gansser <mgansser(a)alice.de>
Date: Thu Jun 30 17:46:19 2016 +0200
Update to 1.1.5
.gitignore | 1 +
ffmpeg_2.9.patch | 575 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
sources | 2 +-
3 files changed, 577 insertions(+), 1 deletion(-)
---
diff --git a/.gitignore b/.gitignore
index 6412d5e..cdc14d8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
vdr-plugin-softhddevice-ee2311d25237b9828c1423505e5d4055a836414d.tar.bz2
+/vdr-plugin-softhddevice-6dfa88aecf1b5a4c5932ba278209d9f22676547f.tar.bz2
diff --git a/ffmpeg_2.9.patch b/ffmpeg_2.9.patch
new file mode 100644
index 0000000..412d54c
--- /dev/null
+++ b/ffmpeg_2.9.patch
@@ -0,0 +1,575 @@
+Description: Replace deprecated FFmpeg API
+Author: Andreas Cadhalpun <Andreas.Cadhalpun(a)googlemail.com>
+Last-Update: <2015-11-02>
+
+--- a/codec.c
++++ b/codec.c
+@@ -151,7 +151,7 @@
+ //----------------------------------------------------------------------------
+
+ /**
+-** Callback to negotiate the PixelFormat.
++** Callback to negotiate the AVPixelFormat.
+ **
+ ** @param video_ctx codec context
+ ** @param fmt is the list of formats which are supported by
+@@ -159,8 +159,8 @@
+ ** valid format, the formats are ordered by
+ ** quality.
+ */
+-static enum PixelFormat Codec_get_format(AVCodecContext * video_ctx,
+- const enum PixelFormat *fmt)
++static enum AVPixelFormat Codec_get_format(AVCodecContext * video_ctx,
++ const enum AVPixelFormat *fmt)
+ {
+ VideoDecoder *decoder;
+
+@@ -187,6 +187,8 @@
+ return Video_get_format(decoder->HwDecoder, video_ctx, fmt);
+ }
+
++static void Codec_free_buffer(void *opaque, uint8_t *data);
++
+ /**
+ ** Video buffer management, get buffer for frame.
+ **
+@@ -195,7 +197,7 @@
+ ** @param video_ctx Codec context
+ ** @param frame Get buffer for this frame
+ */
+-static int Codec_get_buffer(AVCodecContext * video_ctx, AVFrame * frame)
++static int Codec_get_buffer2(AVCodecContext * video_ctx, AVFrame * frame, int flags)
+ {
+ VideoDecoder *decoder;
+
+@@ -205,19 +207,19 @@
+ // libav 0.8.5 53.35.0 still needs this
+ #endif
+ if (!decoder->GetFormatDone) { // get_format missing
+- enum PixelFormat fmts[2];
++ enum AVPixelFormat fmts[2];
+
+ fprintf(stderr, "codec: buggy libav, use ffmpeg\n");
+ Warning(_("codec: buggy libav, use ffmpeg\n"));
+ fmts[0] = video_ctx->pix_fmt;
+- fmts[1] = PIX_FMT_NONE;
++ fmts[1] = AV_PIX_FMT_NONE;
+ Codec_get_format(video_ctx, fmts);
+ }
+ #ifdef USE_VDPAU
+- // VDPAU: PIX_FMT_VDPAU_H264 .. PIX_FMT_VDPAU_VC1 PIX_FMT_VDPAU_MPEG4
+- if ((PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
+- && video_ctx->pix_fmt <= PIX_FMT_VDPAU_VC1)
+- || video_ctx->pix_fmt == PIX_FMT_VDPAU_MPEG4) {
++ // VDPAU: AV_PIX_FMT_VDPAU_H264 .. AV_PIX_FMT_VDPAU_VC1 AV_PIX_FMT_VDPAU_MPEG4
++ if ((AV_PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
++ && video_ctx->pix_fmt <= AV_PIX_FMT_VDPAU_VC1)
++ || video_ctx->pix_fmt == AV_PIX_FMT_VDPAU_MPEG4) {
+ unsigned surface;
+ struct vdpau_render_state *vrs;
+
+@@ -234,7 +236,8 @@
+ frame->age = 256 * 256 * 256 * 64;
+ #endif
+ // render
+- frame->data[0] = (void *)vrs;
++ frame->buf[0] = av_buffer_create((uint8_t*)vrs, 0, Codec_free_buffer, video_ctx, 0);
++ frame->data[0] = frame->buf[0]->data;
+ frame->data[1] = NULL;
+ frame->data[2] = NULL;
+ frame->data[3] = NULL;
+@@ -265,8 +268,9 @@
+ frame->age = 256 * 256 * 256 * 64;
+ #endif
+ // vaapi needs both fields set
+- frame->data[0] = (void *)(size_t) surface;
+- frame->data[3] = (void *)(size_t) surface;
++ frame->buf[0] = av_buffer_create((uint8_t*)(size_t)surface, 0, Codec_free_buffer, video_ctx, 0);
++ frame->data[0] = frame->buf[0]->data;
++ frame->data[3] = frame->data[0];
+
+ #if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(52,66,100)
+ // reordered frames
+@@ -279,29 +283,30 @@
+ return 0;
+ }
+ //Debug(3, "codec: fallback to default get_buffer\n");
+- return avcodec_default_get_buffer(video_ctx, frame);
++ return avcodec_default_get_buffer2(video_ctx, frame, flags);
+ }
+
+ /**
+ ** Video buffer management, release buffer for frame.
+ ** Called to release buffers which were allocated with get_buffer.
+ **
+-** @param video_ctx Codec context
+-** @param frame Release buffer for this frame
++** @param opaque opaque data
++** @param data buffer data
+ */
+-static void Codec_release_buffer(AVCodecContext * video_ctx, AVFrame * frame)
++static void Codec_free_buffer(void *opaque, uint8_t *data)
+ {
++ AVCodecContext *video_ctx = (AVCodecContext *)opaque;
+ #ifdef USE_VDPAU
+- // VDPAU: PIX_FMT_VDPAU_H264 .. PIX_FMT_VDPAU_VC1 PIX_FMT_VDPAU_MPEG4
+- if ((PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
+- && video_ctx->pix_fmt <= PIX_FMT_VDPAU_VC1)
+- || video_ctx->pix_fmt == PIX_FMT_VDPAU_MPEG4) {
++ // VDPAU: AV_PIX_FMT_VDPAU_H264 .. AV_PIX_FMT_VDPAU_VC1 AV_PIX_FMT_VDPAU_MPEG4
++ if ((AV_PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
++ && video_ctx->pix_fmt <= AV_PIX_FMT_VDPAU_VC1)
++ || video_ctx->pix_fmt == AV_PIX_FMT_VDPAU_MPEG4) {
+ VideoDecoder *decoder;
+ struct vdpau_render_state *vrs;
+ unsigned surface;
+
+ decoder = video_ctx->opaque;
+- vrs = (struct vdpau_render_state *)frame->data[0];
++ vrs = (struct vdpau_render_state *)data;
+ surface = vrs->surface;
+
+ //Debug(3, "codec: release surface %#010x\n", surface);
+@@ -309,7 +314,7 @@
+
+ av_freep(&vrs->bitstream_buffers);
+ vrs->bitstream_buffers_allocated = 0;
+- av_freep(&frame->data[0]);
++ av_freep(&data);
+
+ return;
+ }
+@@ -320,18 +325,13 @@
+ unsigned surface;
+
+ decoder = video_ctx->opaque;
+- surface = (unsigned)(size_t) frame->data[3];
++ surface = (unsigned)(size_t) data;
+
+ //Debug(3, "codec: release surface %#010x\n", surface);
+ VideoReleaseSurface(decoder->HwDecoder, surface);
+
+- frame->data[0] = NULL;
+- frame->data[3] = NULL;
+-
+ return;
+ }
+- //Debug(3, "codec: fallback to default release_buffer\n");
+- return avcodec_default_release_buffer(video_ctx, frame);
+ }
+
+ /// libav: compatibility hack
+@@ -358,10 +358,10 @@
+ int height)
+ {
+ #ifdef USE_VDPAU
+- // VDPAU: PIX_FMT_VDPAU_H264 .. PIX_FMT_VDPAU_VC1 PIX_FMT_VDPAU_MPEG4
+- if ((PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
+- && video_ctx->pix_fmt <= PIX_FMT_VDPAU_VC1)
+- || video_ctx->pix_fmt == PIX_FMT_VDPAU_MPEG4) {
++ // VDPAU: AV_PIX_FMT_VDPAU_H264 .. AV_PIX_FMT_VDPAU_VC1 AV_PIX_FMT_VDPAU_MPEG4
++ if ((AV_PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
++ && video_ctx->pix_fmt <= AV_PIX_FMT_VDPAU_VC1)
++ || video_ctx->pix_fmt == AV_PIX_FMT_VDPAU_MPEG4) {
+ VideoDecoder *decoder;
+ struct vdpau_render_state *vrs;
+
+@@ -523,9 +523,7 @@
+ if (video_codec->capabilities & CODEC_CAP_HWACCEL_VDPAU) {
+ // FIXME: get_format never called.
+ decoder->VideoCtx->get_format = Codec_get_format;
+- decoder->VideoCtx->get_buffer = Codec_get_buffer;
+- decoder->VideoCtx->release_buffer = Codec_release_buffer;
+- decoder->VideoCtx->reget_buffer = Codec_get_buffer;
++ decoder->VideoCtx->get_buffer2 = Codec_get_buffer2;
+ decoder->VideoCtx->draw_horiz_band = Codec_draw_horiz_band;
+ decoder->VideoCtx->slice_flags =
+ SLICE_FLAG_CODED_ORDER | SLICE_FLAG_ALLOW_FIELD;
+@@ -540,9 +538,7 @@
+ // our pixel format video hardware decoder hook
+ if (decoder->VideoCtx->hwaccel_context) {
+ decoder->VideoCtx->get_format = Codec_get_format;
+- decoder->VideoCtx->get_buffer = Codec_get_buffer;
+- decoder->VideoCtx->release_buffer = Codec_release_buffer;
+- decoder->VideoCtx->reget_buffer = Codec_get_buffer;
++ decoder->VideoCtx->get_buffer2 = Codec_get_buffer2;
+ #if 0
+ decoder->VideoCtx->thread_count = 1;
+ decoder->VideoCtx->draw_horiz_band = NULL;
+--- a/video.c
++++ b/video.c
+@@ -259,8 +259,8 @@
+ void (*const DelHwDecoder) (VideoHwDecoder *);
+ unsigned (*const GetSurface) (VideoHwDecoder *, const AVCodecContext *);
+ void (*const ReleaseSurface) (VideoHwDecoder *, unsigned);
+- enum PixelFormat (*const get_format) (VideoHwDecoder *, AVCodecContext *,
+- const enum PixelFormat *);
++ enum AVPixelFormat (*const get_format) (VideoHwDecoder *, AVCodecContext *,
++ const enum AVPixelFormat *);
+ void (*const RenderFrame) (VideoHwDecoder *, const AVCodecContext *,
+ const AVFrame *);
+ void *(*const GetHwAccelContext)(VideoHwDecoder *);
+@@ -1552,7 +1552,7 @@
+ /// flags for put surface for different resolutions groups
+ unsigned SurfaceFlagsTable[VideoResolutionMax];
+
+- enum PixelFormat PixFmt; ///< ffmpeg frame pixfmt
++ enum AVPixelFormat PixFmt; ///< ffmpeg frame pixfmt
+ int WrongInterlacedWarned; ///< warning about interlace flag issued
+ int Interlaced; ///< ffmpeg interlaced flag
+ int TopFieldFirst; ///< ffmpeg top field displayed first
+@@ -2056,7 +2056,7 @@
+ decoder->OutputWidth = VideoWindowWidth;
+ decoder->OutputHeight = VideoWindowHeight;
+
+- decoder->PixFmt = PIX_FMT_NONE;
++ decoder->PixFmt = AV_PIX_FMT_NONE;
+
+ decoder->Stream = stream;
+ if (!VaapiDecoderN) { // FIXME: hack sync on audio
+@@ -2546,7 +2546,7 @@
+ /// FIXME: must check if put/get with this format is supported (see intel)
+ ///
+ static int VaapiFindImageFormat(VaapiDecoder * decoder,
+- enum PixelFormat pix_fmt, VAImageFormat * format)
++ enum AVPixelFormat pix_fmt, VAImageFormat * format)
+ {
+ VAImageFormat *imgfrmts;
+ int imgfrmt_n;
+@@ -2557,12 +2557,12 @@
+ // NV12, YV12, I420, BGRA
+ // intel: I420 is native format for MPEG-2 decoded surfaces
+ // intel: NV12 is native format for H.264 decoded surfaces
+- case PIX_FMT_YUV420P:
+- case PIX_FMT_YUVJ420P:
++ case AV_PIX_FMT_YUV420P:
++ case AV_PIX_FMT_YUVJ420P:
+ // fourcc = VA_FOURCC_YV12; // YVU
+ fourcc = VA_FOURCC('I', '4', '2', '0'); // YUV
+ break;
+- case PIX_FMT_NV12:
++ case AV_PIX_FMT_NV12:
+ fourcc = VA_FOURCC_NV12;
+ break;
+ default:
+@@ -2631,7 +2631,7 @@
+ #endif
+ // FIXME: PixFmt not set!
+ //VaapiFindImageFormat(decoder, decoder->PixFmt, format);
+- VaapiFindImageFormat(decoder, PIX_FMT_NV12, format);
++ VaapiFindImageFormat(decoder, AV_PIX_FMT_NV12, format);
+
+ // FIXME: this image is only needed for software decoder and auto-crop
+ if (decoder->GetPutImage
+@@ -2901,7 +2901,7 @@
+ }
+
+ ///
+-/// Callback to negotiate the PixelFormat.
++/// Callback to negotiate the AVPixelFormat.
+ ///
+ /// @param fmt is the list of formats which are supported by the codec,
+ /// it is terminated by -1 as 0 is a valid format, the
+@@ -2909,10 +2909,10 @@
+ ///
+ /// @note + 2 surface for software deinterlace
+ ///
+-static enum PixelFormat Vaapi_get_format(VaapiDecoder * decoder,
+- AVCodecContext * video_ctx, const enum PixelFormat *fmt)
++static enum AVPixelFormat Vaapi_get_format(VaapiDecoder * decoder,
++ AVCodecContext * video_ctx, const enum AVPixelFormat *fmt)
+ {
+- const enum PixelFormat *fmt_idx;
++ const enum AVPixelFormat *fmt_idx;
+ VAProfile profiles[vaMaxNumProfiles(VaDisplay)];
+ int profile_n;
+ VAEntrypoint entrypoints[vaMaxNumEntrypoints(VaDisplay)];
+@@ -2996,16 +2996,16 @@
+ }
+ Debug(3, "codec: %d entrypoints\n", entrypoint_n);
+ // look through formats
+- for (fmt_idx = fmt; *fmt_idx != PIX_FMT_NONE; fmt_idx++) {
+- Debug(3, "\t%#010x %s\n", *fmt_idx, av_get_pix_fmt_name(*fmt_idx));
++ for (fmt_idx = fmt; *fmt_idx != AV_PIX_FMT_NONE; fmt_idx++) {
++ Debug(3, "\t%#010x %s\n", *fmt_idx, av_get_AV_PIX_FMT_name(*fmt_idx));
+ // check supported pixel format with entry point
+ switch (*fmt_idx) {
+- case PIX_FMT_VAAPI_VLD:
++ case AV_PIX_FMT_VAAPI_VLD:
+ e = VaapiFindEntrypoint(entrypoints, entrypoint_n,
+ VAEntrypointVLD);
+ break;
+- case PIX_FMT_VAAPI_MOCO:
+- case PIX_FMT_VAAPI_IDCT:
++ case AV_PIX_FMT_VAAPI_MOCO:
++ case AV_PIX_FMT_VAAPI_IDCT:
+ Debug(3, "codec: this VA-API pixel format is not supported\n");
+ default:
+ continue;
+@@ -3081,7 +3081,7 @@
+ }
+ #endif
+
+- Debug(3, "\t%#010x %s\n", fmt_idx[0], av_get_pix_fmt_name(fmt_idx[0]));
++ Debug(3, "\t%#010x %s\n", fmt_idx[0], av_get_AV_PIX_FMT_name(fmt_idx[0]));
+ return *fmt_idx;
+
+ slow_path:
+@@ -3090,7 +3090,7 @@
+ decoder->Entrypoint = VA_INVALID_ID;
+ decoder->VaapiContext->config_id = VA_INVALID_ID;
+ decoder->SurfacesNeeded = VIDEO_SURFACES_MAX + 2;
+- decoder->PixFmt = PIX_FMT_NONE;
++ decoder->PixFmt = AV_PIX_FMT_NONE;
+
+ decoder->InputWidth = 0;
+ decoder->InputHeight = 0;
+@@ -3291,8 +3291,8 @@
+
+ // FIXME: PixFmt not set!
+ //VaapiFindImageFormat(decoder, decoder->PixFmt, format);
+- VaapiFindImageFormat(decoder, PIX_FMT_NV12, format);
+- //VaapiFindImageFormat(decoder, PIX_FMT_YUV420P, format);
++ VaapiFindImageFormat(decoder, AV_PIX_FMT_NV12, format);
++ //VaapiFindImageFormat(decoder, AV_PIX_FMT_YUV420P, format);
+ if (vaCreateImage(VaDisplay, format, width, height,
+ decoder->Image) != VA_STATUS_SUCCESS) {
+ Error(_("video/vaapi: can't create image!\n"));
+@@ -3647,7 +3647,7 @@
+ if (decoder->Image->image_id == VA_INVALID_ID) {
+ VAImageFormat format[1];
+
+- VaapiFindImageFormat(decoder, PIX_FMT_NV12, format);
++ VaapiFindImageFormat(decoder, AV_PIX_FMT_NV12, format);
+ status =
+ vaCreateImage(VaDisplay, format, VideoWindowWidth,
+ VideoWindowHeight, decoder->Image);
+@@ -4292,8 +4292,8 @@
+ // I420 Y U V 2x2
+
+ // Intel needs NV12
+- VaapiFindImageFormat(decoder, PIX_FMT_NV12, format);
+- //VaapiFindImageFormat(decoder, PIX_FMT_YUV420P, format);
++ VaapiFindImageFormat(decoder, AV_PIX_FMT_NV12, format);
++ //VaapiFindImageFormat(decoder, AV_PIX_FMT_YUV420P, format);
+ for (i = 0; i < 5; ++i) {
+ if (vaCreateImage(decoder->VaDisplay, format, decoder->InputWidth,
+ decoder->InputHeight,
+@@ -4365,7 +4365,7 @@
+ if (decoder->Image->image_id == VA_INVALID_ID) {
+ VAImageFormat format[1];
+
+- VaapiFindImageFormat(decoder, PIX_FMT_NV12, format);
++ VaapiFindImageFormat(decoder, AV_PIX_FMT_NV12, format);
+ if (vaCreateImage(VaDisplay, format, decoder->InputWidth,
+ decoder->InputHeight, decoder->Image) != VA_STATUS_SUCCESS) {
+ Error(_("video/vaapi: can't create image!\n"));
+@@ -5706,8 +5706,8 @@
+ const AVCodecContext *))VaapiGetSurface,
+ .ReleaseSurface =
+ (void (*const) (VideoHwDecoder *, unsigned))VaapiReleaseSurface,
+- .get_format = (enum PixelFormat(*const) (VideoHwDecoder *,
+- AVCodecContext *, const enum PixelFormat *))Vaapi_get_format,
++ .get_format = (enum AVPixelFormat(*const) (VideoHwDecoder *,
++ AVCodecContext *, const enum AVPixelFormat *))Vaapi_get_format,
+ .RenderFrame = (void (*const) (VideoHwDecoder *,
+ const AVCodecContext *, const AVFrame *))VaapiSyncRenderFrame,
+ .GetHwAccelContext = (void *(*const)(VideoHwDecoder *))
+@@ -5748,8 +5748,8 @@
+ const AVCodecContext *))VaapiGetSurface,
+ .ReleaseSurface =
+ (void (*const) (VideoHwDecoder *, unsigned))VaapiReleaseSurface,
+- .get_format = (enum PixelFormat(*const) (VideoHwDecoder *,
+- AVCodecContext *, const enum PixelFormat *))Vaapi_get_format,
++ .get_format = (enum AVPixelFormat(*const) (VideoHwDecoder *,
++ AVCodecContext *, const enum AVPixelFormat *))Vaapi_get_format,
+ .RenderFrame = (void (*const) (VideoHwDecoder *,
+ const AVCodecContext *, const AVFrame *))VaapiSyncRenderFrame,
+ .GetHwAccelContext = (void *(*const)(VideoHwDecoder *))
+@@ -5804,7 +5804,7 @@
+ int OutputWidth; ///< real video output width
+ int OutputHeight; ///< real video output height
+
+- enum PixelFormat PixFmt; ///< ffmpeg frame pixfmt
++ enum AVPixelFormat PixFmt; ///< ffmpeg frame pixfmt
+ int WrongInterlacedWarned; ///< warning about interlace flag issued
+ int Interlaced; ///< ffmpeg interlaced flag
+ int TopFieldFirst; ///< ffmpeg top field displayed first
+@@ -6534,7 +6534,7 @@
+ decoder->OutputWidth = VideoWindowWidth;
+ decoder->OutputHeight = VideoWindowHeight;
+
+- decoder->PixFmt = PIX_FMT_NONE;
++ decoder->PixFmt = AV_PIX_FMT_NONE;
+
+ #ifdef USE_AUTOCROP
+ //decoder->AutoCropBuffer = NULL; // done by calloc
+@@ -7379,16 +7379,16 @@
+ }
+
+ ///
+-/// Callback to negotiate the PixelFormat.
++/// Callback to negotiate the AVPixelFormat.
+ ///
+ /// @param fmt is the list of formats which are supported by the codec,
+ /// it is terminated by -1 as 0 is a valid format, the
+ /// formats are ordered by quality.
+ ///
+-static enum PixelFormat Vdpau_get_format(VdpauDecoder * decoder,
+- AVCodecContext * video_ctx, const enum PixelFormat *fmt)
++static enum AVPixelFormat Vdpau_get_format(VdpauDecoder * decoder,
++ AVCodecContext * video_ctx, const enum AVPixelFormat *fmt)
+ {
+- const enum PixelFormat *fmt_idx;
++ const enum AVPixelFormat *fmt_idx;
+ VdpDecoderProfile profile;
+ int max_refs;
+
+@@ -7402,16 +7402,16 @@
+ // look through formats
+ //
+ Debug(3, "%s: codec %d fmts:\n", __FUNCTION__, video_ctx->codec_id);
+- for (fmt_idx = fmt; *fmt_idx != PIX_FMT_NONE; fmt_idx++) {
+- Debug(3, "\t%#010x %s\n", *fmt_idx, av_get_pix_fmt_name(*fmt_idx));
++ for (fmt_idx = fmt; *fmt_idx != AV_PIX_FMT_NONE; fmt_idx++) {
++ Debug(3, "\t%#010x %s\n", *fmt_idx, av_get_AV_PIX_FMT_name(*fmt_idx));
+ // check supported pixel format with entry point
+ switch (*fmt_idx) {
+- case PIX_FMT_VDPAU_H264:
+- case PIX_FMT_VDPAU_MPEG1:
+- case PIX_FMT_VDPAU_MPEG2:
+- case PIX_FMT_VDPAU_WMV3:
+- case PIX_FMT_VDPAU_VC1:
+- case PIX_FMT_VDPAU_MPEG4:
++ case AV_PIX_FMT_VDPAU_H264:
++ case AV_PIX_FMT_VDPAU_MPEG1:
++ case AV_PIX_FMT_VDPAU_MPEG2:
++ case AV_PIX_FMT_VDPAU_WMV3:
++ case AV_PIX_FMT_VDPAU_VC1:
++ case AV_PIX_FMT_VDPAU_MPEG4:
+ break;
+ default:
+ continue;
+@@ -7419,7 +7419,7 @@
+ break;
+ }
+
+- if (*fmt_idx == PIX_FMT_NONE) {
++ if (*fmt_idx == AV_PIX_FMT_NONE) {
+ Error(_("video/vdpau: no valid vdpau pixfmt found\n"));
+ goto slow_path;
+ }
+@@ -7526,14 +7526,14 @@
+ }
+ #endif
+
+- Debug(3, "\t%#010x %s\n", fmt_idx[0], av_get_pix_fmt_name(fmt_idx[0]));
++ Debug(3, "\t%#010x %s\n", fmt_idx[0], av_get_AV_PIX_FMT_name(fmt_idx[0]));
+ return *fmt_idx;
+
+ slow_path:
+ // no accelerated format found
+ decoder->Profile = VDP_INVALID_HANDLE;
+ decoder->SurfacesNeeded = VIDEO_SURFACES_MAX + 2;
+- decoder->PixFmt = PIX_FMT_NONE;
++ decoder->PixFmt = AV_PIX_FMT_NONE;
+
+ decoder->InputWidth = 0;
+ decoder->InputHeight = 0;
+@@ -8119,10 +8119,10 @@
+ //
+ // Hardware render
+ //
+- // VDPAU: PIX_FMT_VDPAU_H264 .. PIX_FMT_VDPAU_VC1 PIX_FMT_VDPAU_MPEG4
+- if ((PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
+- && video_ctx->pix_fmt <= PIX_FMT_VDPAU_VC1)
+- || video_ctx->pix_fmt == PIX_FMT_VDPAU_MPEG4) {
++ // VDPAU: AV_PIX_FMT_VDPAU_H264 .. AV_PIX_FMT_VDPAU_VC1 AV_PIX_FMT_VDPAU_MPEG4
++ if ((AV_PIX_FMT_VDPAU_H264 <= video_ctx->pix_fmt
++ && video_ctx->pix_fmt <= AV_PIX_FMT_VDPAU_VC1)
++ || video_ctx->pix_fmt == AV_PIX_FMT_VDPAU_MPEG4) {
+ struct vdpau_render_state *vrs;
+
+ vrs = (struct vdpau_render_state *)frame->data[0];
+@@ -8165,11 +8165,11 @@
+ // Copy data from frame to image
+ //
+ switch (video_ctx->pix_fmt) {
+- case PIX_FMT_YUV420P:
+- case PIX_FMT_YUVJ420P: // some streams produce this
++ case AV_PIX_FMT_YUV420P:
++ case AV_PIX_FMT_YUVJ420P: // some streams produce this
+ break;
+- case PIX_FMT_YUV422P:
+- case PIX_FMT_YUV444P:
++ case AV_PIX_FMT_YUV422P:
++ case AV_PIX_FMT_YUV444P:
+ default:
+ Fatal(_("video/vdpau: pixel format %d not supported\n"),
+ video_ctx->pix_fmt);
+@@ -9545,8 +9545,8 @@
+ const AVCodecContext *))VdpauGetSurface,
+ .ReleaseSurface =
+ (void (*const) (VideoHwDecoder *, unsigned))VdpauReleaseSurface,
+- .get_format = (enum PixelFormat(*const) (VideoHwDecoder *,
+- AVCodecContext *, const enum PixelFormat *))Vdpau_get_format,
++ .get_format = (enum AVPixelFormat(*const) (VideoHwDecoder *,
++ AVCodecContext *, const enum AVPixelFormat *))Vdpau_get_format,
+ .RenderFrame = (void (*const) (VideoHwDecoder *,
+ const AVCodecContext *, const AVFrame *))VdpauSyncRenderFrame,
+ .GetHwAccelContext = (void *(*const)(VideoHwDecoder *))
+@@ -9712,8 +9712,8 @@
+ #endif
+ .ReleaseSurface = NoopReleaseSurface,
+ #if 0
+- .get_format = (enum PixelFormat(*const) (VideoHwDecoder *,
+- AVCodecContext *, const enum PixelFormat *))Noop_get_format,
++ .get_format = (enum AVPixelFormat(*const) (VideoHwDecoder *,
++ AVCodecContext *, const enum AVPixelFormat *))Noop_get_format,
+ .RenderFrame = (void (*const) (VideoHwDecoder *,
+ const AVCodecContext *, const AVFrame *))NoopSyncRenderFrame,
+ .GetHwAccelContext = (void *(*const)(VideoHwDecoder *))
+@@ -9950,7 +9950,7 @@
+
+ case MapNotify:
+ Debug(3, "video/event: MapNotify\n");
+- // �wm workaround
++ // \B5wm workaround
+ VideoThreadLock();
+ xcb_change_window_attributes(Connection, VideoWindow,
+ XCB_CW_CURSOR, &VideoBlankCursor);
+@@ -10284,7 +10284,7 @@
+ }
+
+ ///
+-/// Callback to negotiate the PixelFormat.
++/// Callback to negotiate the AVPixelFormat.
+ ///
+ /// @param hw_decoder video hardware decoder
+ /// @param video_ctx ffmpeg video codec context
+@@ -10293,8 +10293,8 @@
+ /// valid format, the formats are ordered by
+ /// quality.
+ ///
+-enum PixelFormat Video_get_format(VideoHwDecoder * hw_decoder,
+- AVCodecContext * video_ctx, const enum PixelFormat *fmt)
++enum AVPixelFormat Video_get_format(VideoHwDecoder * hw_decoder,
++ AVCodecContext * video_ctx, const enum AVPixelFormat *fmt)
+ {
+ #ifdef DEBUG
+ int ms_delay;
+--- a/video.h
++++ b/video.h
+@@ -59,9 +59,9 @@
+ /// Release a video hardware surface
+ extern void VideoReleaseSurface(VideoHwDecoder *, unsigned);
+
+- /// Callback to negotiate the PixelFormat.
+-extern enum PixelFormat Video_get_format(VideoHwDecoder *, AVCodecContext *,
+- const enum PixelFormat *);
++ /// Callback to negotiate the AVPixelFormat.
++extern enum AVPixelFormat Video_get_format(VideoHwDecoder *, AVCodecContext *,
++ const enum AVPixelFormat *);
+
+ /// Render a ffmpeg frame.
+ extern void VideoRenderFrame(VideoHwDecoder *, const AVCodecContext *,
diff --git a/sources b/sources
index 5ebf80e..a7f860b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-4ee178a5210d007fc5abf6a7ae99f5e6 vdr-plugin-softhddevice-ee2311d25237b9828c1423505e5d4055a836414d.tar.bz2
+4f6ff23660aba7909318c583770812ea vdr-plugin-softhddevice-6dfa88aecf1b5a4c5932ba278209d9f22676547f.tar.bz2
8 years, 4 months