[ffmpeg/f40] Revert "Backport fixes for Mesa 24.0.6+ / 21.1.4+ changes for VA-API"
by Leigh Scott
commit 06b1d3413f7e4ab69e0ef5f75fc5c0300155229d
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Mon Jul 22 15:50:53 2024 +0100
Revert "Backport fixes for Mesa 24.0.6+ / 21.1.4+ changes for VA-API"
This reverts commit 6d25ae7fe97955a55c758edfa9d7c7e849cc24ba.
...decode-Make-it-possible-to-send-multiple-.patch | 137 ---------------------
...av1-Avoid-sending-the-same-slice-buffer-m.patch | 112 -----------------
ffmpeg.spec | 8 +-
3 files changed, 1 insertion(+), 256 deletions(-)
---
diff --git a/ffmpeg.spec b/ffmpeg.spec
index ba4c88d..b2adaca 100644
--- a/ffmpeg.spec
+++ b/ffmpeg.spec
@@ -98,7 +98,7 @@ ExclusiveArch: armv7hnl
Summary: Digital VCR and streaming server
Name: ffmpeg%{?flavor}
Version: 6.1.1
-Release: 14%{?date:.%{?date}%{?date:git}%{?rel}}%{?dist}
+Release: 13%{?date:.%{?date}%{?date:git}%{?rel}}%{?dist}
License: %{ffmpeg_license}
URL: https://ffmpeg.org/
%if 0%{?date}
@@ -113,9 +113,6 @@ Patch0: ffmpeg-chromium.patch
Patch1: https://src.fedoraproject.org/rpms/ffmpeg/raw/774d42a0072430fdef97ce11b40...
Patch2: https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/42982b5a5d46153...
Patch3: https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/fef22c87ada4517...
-# Fixes for Mesa 24.0.6+ / 24.1.4+ VA-API
-Patch4: 0001-lavc-vaapi_decode-Make-it-possible-to-send-multiple-.patch
-Patch5: 0002-lavc-vaapi_av1-Avoid-sending-the-same-slice-buffer-m.patch
Conflicts: %{name}-free
Provides: %{name}-bin = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
@@ -534,9 +531,6 @@ cp -pa %{buildroot}%{_libdir}/libavcodec.so.* \
%changelog
-* Sat Jul 20 2024 Neal Gompa <ngompa(a)fedoraproject.org> - 6.1.1-14
-- Backport fixes for Mesa 24.0.6+ / 21.1.4+ changes for VA-API
-
* Sat Jul 20 2024 Leigh Scott <leigh123linux(a)gmail.com> - 6.1.1-13
- rebuilt
4 months
[ffmpeg/f40] Revert "fix"
by Leigh Scott
commit 54bd2dbc93f3e8937b7b949a5466c426246d3f91
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Mon Jul 22 15:50:48 2024 +0100
Revert "fix"
This reverts commit 774c3dd1b1ac2162a7348d4734551de8f3033e20.
...decode-Make-it-possible-to-send-multiple-.patch | 74 ++++------------------
...av1-Avoid-sending-the-same-slice-buffer-m.patch | 9 +--
2 files changed, 18 insertions(+), 65 deletions(-)
---
diff --git a/0001-lavc-vaapi_decode-Make-it-possible-to-send-multiple-.patch b/0001-lavc-vaapi_decode-Make-it-possible-to-send-multiple-.patch
index 0ae7a76..34bca43 100644
--- a/0001-lavc-vaapi_decode-Make-it-possible-to-send-multiple-.patch
+++ b/0001-lavc-vaapi_decode-Make-it-possible-to-send-multiple-.patch
@@ -1,28 +1,28 @@
-From fe9d889dcd79ea18d4dfaa39df4ddbd4c8c3b15c Mon Sep 17 00:00:00 2001
+From 5176821735c397de2a108cd266a6c6759a5e0ffe Mon Sep 17 00:00:00 2001
From: David Rosca <nowrep(a)gmail.com>
Date: Wed, 8 May 2024 09:11:11 +0200
-Subject: [PATCH] lavc/vaapi_decode: Make it possible to send multiple slice
- params buffers
+Subject: [PATCH 1/2] lavc/vaapi_decode: Make it possible to send multiple
+ slice params buffers
Reviewed-by: Neal Gompa <ngompa13(a)gmail.com>
Signed-off-by: David Rosca <nowrep(a)gmail.com>
Signed-off-by: Haihao Xiang <haihao.xiang(a)intel.com>
+(cherry picked from commit fe9d889dcd79ea18d4dfaa39df4ddbd4c8c3b15c)
+
+[modified to drop h264/hevc/vc1 parts stripped in Fedora Linux]
---
libavcodec/vaapi_av1.c | 2 +-
libavcodec/vaapi_decode.c | 3 ++-
libavcodec/vaapi_decode.h | 1 +
- libavcodec/vaapi_h264.c | 2 +-
- libavcodec/vaapi_hevc.c | 4 ++--
libavcodec/vaapi_mjpeg.c | 2 +-
libavcodec/vaapi_mpeg2.c | 2 +-
libavcodec/vaapi_mpeg4.c | 2 +-
- libavcodec/vaapi_vc1.c | 2 +-
libavcodec/vaapi_vp8.c | 2 +-
libavcodec/vaapi_vp9.c | 2 +-
- 11 files changed, 13 insertions(+), 11 deletions(-)
+ 8 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/libavcodec/vaapi_av1.c b/libavcodec/vaapi_av1.c
-index f61bf63098..e184d01a43 100644
+index 1f9a6071ba..03771dd3e0 100644
--- a/libavcodec/vaapi_av1.c
+++ b/libavcodec/vaapi_av1.c
@@ -409,7 +409,7 @@ static int vaapi_av1_decode_slice(AVCodecContext *avctx,
@@ -35,10 +35,10 @@ index f61bf63098..e184d01a43 100644
buffer,
size);
diff --git a/libavcodec/vaapi_decode.c b/libavcodec/vaapi_decode.c
-index 7f2fe032db..7c91d50f7b 100644
+index ceac769c52..9344c21fd2 100644
--- a/libavcodec/vaapi_decode.c
+++ b/libavcodec/vaapi_decode.c
-@@ -63,6 +63,7 @@ int ff_vaapi_decode_make_param_buffer(AVCodecContext *avctx,
+@@ -62,6 +62,7 @@ int ff_vaapi_decode_make_param_buffer(AVCodecContext *avctx,
int ff_vaapi_decode_make_slice_buffer(AVCodecContext *avctx,
VAAPIDecodePicture *pic,
const void *params_data,
@@ -46,7 +46,7 @@ index 7f2fe032db..7c91d50f7b 100644
size_t params_size,
const void *slice_data,
size_t slice_size)
-@@ -88,7 +89,7 @@ int ff_vaapi_decode_make_slice_buffer(AVCodecContext *avctx,
+@@ -90,7 +91,7 @@ int ff_vaapi_decode_make_slice_buffer(AVCodecContext *avctx,
vas = vaCreateBuffer(ctx->hwctx->display, ctx->va_context,
VASliceParameterBufferType,
@@ -67,41 +67,6 @@ index 6beda14e52..702171e108 100644
size_t params_size,
const void *slice_data,
size_t slice_size);
-diff --git a/libavcodec/vaapi_h264.c b/libavcodec/vaapi_h264.c
-index 55cf5a05ee..b47531ce1c 100644
---- a/libavcodec/vaapi_h264.c
-+++ b/libavcodec/vaapi_h264.c
-@@ -375,7 +375,7 @@ static int vaapi_h264_decode_slice(AVCodecContext *avctx,
- slice_param.chroma_offset_l1);
-
- err = ff_vaapi_decode_make_slice_buffer(avctx, pic,
-- &slice_param, sizeof(slice_param),
-+ &slice_param, 1, sizeof(slice_param),
- buffer, size);
- if (err) {
- ff_vaapi_decode_cancel(avctx, pic);
-diff --git a/libavcodec/vaapi_hevc.c b/libavcodec/vaapi_hevc.c
-index 3bdd2dd1b8..3937b7574a 100644
---- a/libavcodec/vaapi_hevc.c
-+++ b/libavcodec/vaapi_hevc.c
-@@ -353,7 +353,7 @@ static int vaapi_hevc_end_frame(AVCodecContext *avctx)
- if (pic->last_size) {
- last_slice_param->LongSliceFlags.fields.LastSliceOfPic = 1;
- ret = ff_vaapi_decode_make_slice_buffer(avctx, &pic->pic,
-- &pic->last_slice_param, slice_param_size,
-+ &pic->last_slice_param, 1, slice_param_size,
- pic->last_buffer, pic->last_size);
- if (ret < 0)
- goto fail;
-@@ -471,7 +471,7 @@ static int vaapi_hevc_decode_slice(AVCodecContext *avctx,
-
- if (!sh->first_slice_in_pic_flag) {
- err = ff_vaapi_decode_make_slice_buffer(avctx, &pic->pic,
-- &pic->last_slice_param, slice_param_size,
-+ &pic->last_slice_param, 1, slice_param_size,
- pic->last_buffer, pic->last_size);
- pic->last_buffer = NULL;
- pic->last_size = 0;
diff --git a/libavcodec/vaapi_mjpeg.c b/libavcodec/vaapi_mjpeg.c
index 5b8d47bb2a..9557cf5f9b 100644
--- a/libavcodec/vaapi_mjpeg.c
@@ -141,19 +106,6 @@ index 363b686e42..612de10cd7 100644
buffer, size);
if (err < 0) {
ff_vaapi_decode_cancel(avctx, pic);
-diff --git a/libavcodec/vaapi_vc1.c b/libavcodec/vaapi_vc1.c
-index 5594118a69..abbe877dd8 100644
---- a/libavcodec/vaapi_vc1.c
-+++ b/libavcodec/vaapi_vc1.c
-@@ -490,7 +490,7 @@ static int vaapi_vc1_decode_slice(AVCodecContext *avctx, const uint8_t *buffer,
- };
-
- err = ff_vaapi_decode_make_slice_buffer(avctx, pic,
-- &slice_param, sizeof(slice_param),
-+ &slice_param, 1, sizeof(slice_param),
- buffer, size);
- if (err < 0) {
- ff_vaapi_decode_cancel(avctx, pic);
diff --git a/libavcodec/vaapi_vp8.c b/libavcodec/vaapi_vp8.c
index 31137a45bd..66fdde1f39 100644
--- a/libavcodec/vaapi_vp8.c
@@ -168,7 +120,7 @@ index 31137a45bd..66fdde1f39 100644
goto fail;
diff --git a/libavcodec/vaapi_vp9.c b/libavcodec/vaapi_vp9.c
-index b8e760c807..a28fc75a59 100644
+index 9dc7d5e72b..ff11022db7 100644
--- a/libavcodec/vaapi_vp9.c
+++ b/libavcodec/vaapi_vp9.c
@@ -158,7 +158,7 @@ static int vaapi_vp9_decode_slice(AVCodecContext *avctx,
@@ -181,5 +133,5 @@ index b8e760c807..a28fc75a59 100644
if (err) {
ff_vaapi_decode_cancel(avctx, pic);
--
-2.25.1
+2.45.1
diff --git a/0002-lavc-vaapi_av1-Avoid-sending-the-same-slice-buffer-m.patch b/0002-lavc-vaapi_av1-Avoid-sending-the-same-slice-buffer-m.patch
index 4d9af55..91d018a 100644
--- a/0002-lavc-vaapi_av1-Avoid-sending-the-same-slice-buffer-m.patch
+++ b/0002-lavc-vaapi_av1-Avoid-sending-the-same-slice-buffer-m.patch
@@ -1,7 +1,7 @@
-From d2d911eb9a2fc6eb8d86b3ae025a56c1a2692fba Mon Sep 17 00:00:00 2001
+From 1740980b070897fd147b2d1a5259c9d7957d58a8 Mon Sep 17 00:00:00 2001
From: David Rosca <nowrep(a)gmail.com>
Date: Wed, 8 May 2024 09:11:13 +0200
-Subject: [PATCH 1/1] lavc/vaapi_av1: Avoid sending the same slice buffer
+Subject: [PATCH 2/2] lavc/vaapi_av1: Avoid sending the same slice buffer
multiple times
When there are multiple tiles in one slice buffer, use multiple slice
@@ -11,12 +11,13 @@ increasing the bitstream size the driver will need to upload to hw.
Reviewed-by: Neal Gompa <ngompa13(a)gmail.com>
Signed-off-by: David Rosca <nowrep(a)gmail.com>
Signed-off-by: Haihao Xiang <haihao.xiang(a)intel.com>
+(cherry picked from commit d2d911eb9a2fc6eb8d86b3ae025a56c1a2692fba)
---
libavcodec/vaapi_av1.c | 47 +++++++++++++++++++++++++++++-------------
1 file changed, 33 insertions(+), 14 deletions(-)
diff --git a/libavcodec/vaapi_av1.c b/libavcodec/vaapi_av1.c
-index e184d01a43..fe0852318d 100644
+index 03771dd3e0..ea8dd4d93d 100644
--- a/libavcodec/vaapi_av1.c
+++ b/libavcodec/vaapi_av1.c
@@ -19,6 +19,7 @@
@@ -107,5 +108,5 @@ index e184d01a43..fe0852318d 100644
const FFHWAccel ff_av1_vaapi_hwaccel = {
--
-2.25.1
+2.45.1
4 months
[mesa-freeworld/f40] Reapply "sync with master"
by Leigh Scott
commit 41294e4b4381e27a8534666f09007d25fc014eb3
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Mon Jul 22 15:48:37 2024 +0100
Reapply "sync with master"
This reverts commit 3e41571bdf9f3784ed82fa8b9be203bf7dcef985.
mesa-freeworld.spec | 9 +-
revert-6746d4df-to-fix-av1-slice_data_offset.patch | 106 +++++++++++++++++++++
2 files changed, 114 insertions(+), 1 deletion(-)
---
diff --git a/mesa-freeworld.spec b/mesa-freeworld.spec
index 2dc2b91..2e69a22 100644
--- a/mesa-freeworld.spec
+++ b/mesa-freeworld.spec
@@ -71,7 +71,7 @@ Name: %{srcname}-freeworld
Summary: Mesa graphics libraries
%global ver 24.1.4
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
-Release: 1%{?dist}
+Release: 2%{?dist}
License: MIT AND BSD-3-Clause AND SGI-B-2.0
URL: http://www.mesa3d.org
@@ -83,6 +83,10 @@ Source1: Mesa-MLAA-License-Clarification-Email.txt
Source2: org.mesa3d.vaapi.freeworld.metainfo.xml
Source3: org.mesa3d.vdpau.freeworld.metainfo.xml
+# https://bugzilla.rpmfusion.org/show_bug.cgi?id=7007
+# https://gitlab.freedesktop.org/mesa/mesa/-/issues/11533
+Patch99: revert-6746d4df-to-fix-av1-slice_data_offset.patch
+
BuildRequires: meson >= 1.3.0
BuildRequires: gcc
BuildRequires: gcc-c++
@@ -341,6 +345,9 @@ rm -fr %{buildroot}%{_libdir}/libVkLayer_MESA_device_select.so
%endif
%changelog
+* Fri Jul 19 2024 Thorsten Leemhuis <fedora(a)leemhuis.info> - 24.1.4-2
+- add revert-6746d4df-to-fix-av1-slice_data_offset.patch
+
* Thu Jul 18 2024 Thorsten Leemhuis <fedora(a)leemhuis.info> - 24.1.4-1
- Update to 24.1.4
- Drop upstreamed patched
diff --git a/revert-6746d4df-to-fix-av1-slice_data_offset.patch b/revert-6746d4df-to-fix-av1-slice_data_offset.patch
new file mode 100644
index 0000000..1fff173
--- /dev/null
+++ b/revert-6746d4df-to-fix-av1-slice_data_offset.patch
@@ -0,0 +1,106 @@
+From 30f3844381cb567fde051591b0e0e08874204bfc Mon Sep 17 00:00:00 2001
+From: David Rosca <david.rosca(a)amd.com>
+Date: Thu, 18 Jul 2024 19:15:13 +0200
+Subject: [PATCH] Revert "frontends/va: Fix AV1 slice_data_offset with multiple
+ slice data buffers"
+
+This commit is fixing an issue where all AV1 slice data offsets always point
+into the first slice data buffer, even when multiple slice data buffers
+are submitted. However, after b0d6e58d88f ("Reapply "radeonsi/vcn: AV1 skip the redundant bs resize"")
+only the first slice data buffer will be sent to decoder and the incorrect
+behavior is required, so this commit also needs to be reverted.
+
+This reverts commit 6746d4df6eac83d048e88c2d54aa19e7c1a0a696.
+---
+ src/gallium/frontends/va/picture.c | 11 +++--------
+ src/gallium/frontends/va/picture_av1.c | 4 ++--
+ src/gallium/frontends/va/va_private.h | 2 +-
+ 3 files changed, 6 insertions(+), 11 deletions(-)
+
+diff --git a/src/gallium/frontends/va/picture.c b/src/gallium/frontends/va/picture.c
+index 59692aeee91cc..a2bb608ec96a8 100644
+--- a/src/gallium/frontends/va/picture.c
++++ b/src/gallium/frontends/va/picture.c
+@@ -299,7 +299,7 @@ handleIQMatrixBuffer(vlVaContext *context, vlVaBuffer *buf)
+ }
+
+ static void
+-handleSliceParameterBuffer(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices, unsigned slice_offset)
++handleSliceParameterBuffer(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices)
+ {
+ switch (u_reduce_video_profile(context->templat.profile)) {
+ case PIPE_VIDEO_FORMAT_MPEG12:
+@@ -331,7 +331,7 @@ handleSliceParameterBuffer(vlVaContext *context, vlVaBuffer *buf, unsigned num_s
+ break;
+
+ case PIPE_VIDEO_FORMAT_AV1:
+- vlVaHandleSliceParameterBufferAV1(context, buf, num_slices, slice_offset);
++ vlVaHandleSliceParameterBufferAV1(context, buf, num_slices);
+ break;
+
+ default:
+@@ -968,7 +968,6 @@ vlVaRenderPicture(VADriverContextP ctx, VAContextID context_id, VABufferID *buff
+
+ unsigned i;
+ unsigned slice_idx = 0;
+- unsigned slice_offset = 0;
+ vlVaBuffer *seq_param_buf = NULL;
+
+ if (!ctx)
+@@ -1024,17 +1023,13 @@ vlVaRenderPicture(VADriverContextP ctx, VAContextID context_id, VABufferID *buff
+
+ slice_idx is the zero based number of total slices received
+ before this call to handleSliceParameterBuffer
+-
+- slice_offset is the slice offset in bitstream buffer
+ */
+- handleSliceParameterBuffer(context, buf, slice_idx, slice_offset);
++ handleSliceParameterBuffer(context, buf, slice_idx);
+ slice_idx += buf->num_elements;
+ } break;
+
+ case VASliceDataBufferType:
+ vaStatus = handleVASliceDataBufferType(context, buf);
+- if (slice_idx)
+- slice_offset += buf->size;
+ break;
+
+ case VAProcPipelineParameterBufferType:
+diff --git a/src/gallium/frontends/va/picture_av1.c b/src/gallium/frontends/va/picture_av1.c
+index c014b0b1168ce..e6f2652e36234 100644
+--- a/src/gallium/frontends/va/picture_av1.c
++++ b/src/gallium/frontends/va/picture_av1.c
+@@ -396,7 +396,7 @@ void vlVaHandlePictureParameterBufferAV1(vlVaDriver *drv, vlVaContext *context,
+ context->desc.av1.slice_parameter.slice_count = 0;
+ }
+
+-void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices, unsigned slice_offset)
++void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices)
+ {
+ for (uint32_t buffer_idx = 0; buffer_idx < buf->num_elements; buffer_idx++) {
+ uint32_t slice_index =
+@@ -407,7 +407,7 @@ void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, un
+
+ VASliceParameterBufferAV1 *av1 = &(((VASliceParameterBufferAV1*)buf->data)[buffer_idx]);
+ context->desc.av1.slice_parameter.slice_data_size[slice_index] = av1->slice_data_size;
+- context->desc.av1.slice_parameter.slice_data_offset[slice_index] = slice_offset + av1->slice_data_offset;
++ context->desc.av1.slice_parameter.slice_data_offset[slice_index] = av1->slice_data_offset;
+ context->desc.av1.slice_parameter.slice_data_row[slice_index] = av1->tile_row;
+ context->desc.av1.slice_parameter.slice_data_col[slice_index] = av1->tile_column;
+ context->desc.av1.slice_parameter.slice_data_anchor_frame_idx[slice_index] = av1->anchor_frame_idx;
+diff --git a/src/gallium/frontends/va/va_private.h b/src/gallium/frontends/va/va_private.h
+index 007ed95ce7f7c..ad30f3bad2a91 100644
+--- a/src/gallium/frontends/va/va_private.h
++++ b/src/gallium/frontends/va/va_private.h
+@@ -540,7 +540,7 @@ void vlVaHandlePictureParameterBufferVP9(vlVaDriver *drv, vlVaContext *context,
+ void vlVaHandleSliceParameterBufferVP9(vlVaContext *context, vlVaBuffer *buf);
+ void vlVaDecoderVP9BitstreamHeader(vlVaContext *context, vlVaBuffer *buf);
+ void vlVaHandlePictureParameterBufferAV1(vlVaDriver *drv, vlVaContext *context, vlVaBuffer *buf);
+-void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices, unsigned slice_offset);
++void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices);
+ void getEncParamPresetH264(vlVaContext *context);
+ void getEncParamPresetH265(vlVaContext *context);
+ void getEncParamPresetAV1(vlVaContext *context);
+--
+GitLab
+
4 months
[mesa-freeworld] Reapply "add revert-6746d4df-to-fix-av1-slice_data_offset.patch"
by Leigh Scott
commit d36faa36f8e007d2bbec10e00c14f2ecdf32c337
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Mon Jul 22 15:45:00 2024 +0100
Reapply "add revert-6746d4df-to-fix-av1-slice_data_offset.patch"
This reverts commit abf2d4b89e5d9098f3ab30a8887a3f7a13047ffc.
mesa-freeworld.spec | 9 +-
revert-6746d4df-to-fix-av1-slice_data_offset.patch | 106 +++++++++++++++++++++
2 files changed, 114 insertions(+), 1 deletion(-)
---
diff --git a/mesa-freeworld.spec b/mesa-freeworld.spec
index 2dc2b91..2e69a22 100644
--- a/mesa-freeworld.spec
+++ b/mesa-freeworld.spec
@@ -71,7 +71,7 @@ Name: %{srcname}-freeworld
Summary: Mesa graphics libraries
%global ver 24.1.4
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
-Release: 1%{?dist}
+Release: 2%{?dist}
License: MIT AND BSD-3-Clause AND SGI-B-2.0
URL: http://www.mesa3d.org
@@ -83,6 +83,10 @@ Source1: Mesa-MLAA-License-Clarification-Email.txt
Source2: org.mesa3d.vaapi.freeworld.metainfo.xml
Source3: org.mesa3d.vdpau.freeworld.metainfo.xml
+# https://bugzilla.rpmfusion.org/show_bug.cgi?id=7007
+# https://gitlab.freedesktop.org/mesa/mesa/-/issues/11533
+Patch99: revert-6746d4df-to-fix-av1-slice_data_offset.patch
+
BuildRequires: meson >= 1.3.0
BuildRequires: gcc
BuildRequires: gcc-c++
@@ -341,6 +345,9 @@ rm -fr %{buildroot}%{_libdir}/libVkLayer_MESA_device_select.so
%endif
%changelog
+* Fri Jul 19 2024 Thorsten Leemhuis <fedora(a)leemhuis.info> - 24.1.4-2
+- add revert-6746d4df-to-fix-av1-slice_data_offset.patch
+
* Thu Jul 18 2024 Thorsten Leemhuis <fedora(a)leemhuis.info> - 24.1.4-1
- Update to 24.1.4
- Drop upstreamed patched
diff --git a/revert-6746d4df-to-fix-av1-slice_data_offset.patch b/revert-6746d4df-to-fix-av1-slice_data_offset.patch
new file mode 100644
index 0000000..1fff173
--- /dev/null
+++ b/revert-6746d4df-to-fix-av1-slice_data_offset.patch
@@ -0,0 +1,106 @@
+From 30f3844381cb567fde051591b0e0e08874204bfc Mon Sep 17 00:00:00 2001
+From: David Rosca <david.rosca(a)amd.com>
+Date: Thu, 18 Jul 2024 19:15:13 +0200
+Subject: [PATCH] Revert "frontends/va: Fix AV1 slice_data_offset with multiple
+ slice data buffers"
+
+This commit is fixing an issue where all AV1 slice data offsets always point
+into the first slice data buffer, even when multiple slice data buffers
+are submitted. However, after b0d6e58d88f ("Reapply "radeonsi/vcn: AV1 skip the redundant bs resize"")
+only the first slice data buffer will be sent to decoder and the incorrect
+behavior is required, so this commit also needs to be reverted.
+
+This reverts commit 6746d4df6eac83d048e88c2d54aa19e7c1a0a696.
+---
+ src/gallium/frontends/va/picture.c | 11 +++--------
+ src/gallium/frontends/va/picture_av1.c | 4 ++--
+ src/gallium/frontends/va/va_private.h | 2 +-
+ 3 files changed, 6 insertions(+), 11 deletions(-)
+
+diff --git a/src/gallium/frontends/va/picture.c b/src/gallium/frontends/va/picture.c
+index 59692aeee91cc..a2bb608ec96a8 100644
+--- a/src/gallium/frontends/va/picture.c
++++ b/src/gallium/frontends/va/picture.c
+@@ -299,7 +299,7 @@ handleIQMatrixBuffer(vlVaContext *context, vlVaBuffer *buf)
+ }
+
+ static void
+-handleSliceParameterBuffer(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices, unsigned slice_offset)
++handleSliceParameterBuffer(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices)
+ {
+ switch (u_reduce_video_profile(context->templat.profile)) {
+ case PIPE_VIDEO_FORMAT_MPEG12:
+@@ -331,7 +331,7 @@ handleSliceParameterBuffer(vlVaContext *context, vlVaBuffer *buf, unsigned num_s
+ break;
+
+ case PIPE_VIDEO_FORMAT_AV1:
+- vlVaHandleSliceParameterBufferAV1(context, buf, num_slices, slice_offset);
++ vlVaHandleSliceParameterBufferAV1(context, buf, num_slices);
+ break;
+
+ default:
+@@ -968,7 +968,6 @@ vlVaRenderPicture(VADriverContextP ctx, VAContextID context_id, VABufferID *buff
+
+ unsigned i;
+ unsigned slice_idx = 0;
+- unsigned slice_offset = 0;
+ vlVaBuffer *seq_param_buf = NULL;
+
+ if (!ctx)
+@@ -1024,17 +1023,13 @@ vlVaRenderPicture(VADriverContextP ctx, VAContextID context_id, VABufferID *buff
+
+ slice_idx is the zero based number of total slices received
+ before this call to handleSliceParameterBuffer
+-
+- slice_offset is the slice offset in bitstream buffer
+ */
+- handleSliceParameterBuffer(context, buf, slice_idx, slice_offset);
++ handleSliceParameterBuffer(context, buf, slice_idx);
+ slice_idx += buf->num_elements;
+ } break;
+
+ case VASliceDataBufferType:
+ vaStatus = handleVASliceDataBufferType(context, buf);
+- if (slice_idx)
+- slice_offset += buf->size;
+ break;
+
+ case VAProcPipelineParameterBufferType:
+diff --git a/src/gallium/frontends/va/picture_av1.c b/src/gallium/frontends/va/picture_av1.c
+index c014b0b1168ce..e6f2652e36234 100644
+--- a/src/gallium/frontends/va/picture_av1.c
++++ b/src/gallium/frontends/va/picture_av1.c
+@@ -396,7 +396,7 @@ void vlVaHandlePictureParameterBufferAV1(vlVaDriver *drv, vlVaContext *context,
+ context->desc.av1.slice_parameter.slice_count = 0;
+ }
+
+-void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices, unsigned slice_offset)
++void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices)
+ {
+ for (uint32_t buffer_idx = 0; buffer_idx < buf->num_elements; buffer_idx++) {
+ uint32_t slice_index =
+@@ -407,7 +407,7 @@ void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, un
+
+ VASliceParameterBufferAV1 *av1 = &(((VASliceParameterBufferAV1*)buf->data)[buffer_idx]);
+ context->desc.av1.slice_parameter.slice_data_size[slice_index] = av1->slice_data_size;
+- context->desc.av1.slice_parameter.slice_data_offset[slice_index] = slice_offset + av1->slice_data_offset;
++ context->desc.av1.slice_parameter.slice_data_offset[slice_index] = av1->slice_data_offset;
+ context->desc.av1.slice_parameter.slice_data_row[slice_index] = av1->tile_row;
+ context->desc.av1.slice_parameter.slice_data_col[slice_index] = av1->tile_column;
+ context->desc.av1.slice_parameter.slice_data_anchor_frame_idx[slice_index] = av1->anchor_frame_idx;
+diff --git a/src/gallium/frontends/va/va_private.h b/src/gallium/frontends/va/va_private.h
+index 007ed95ce7f7c..ad30f3bad2a91 100644
+--- a/src/gallium/frontends/va/va_private.h
++++ b/src/gallium/frontends/va/va_private.h
+@@ -540,7 +540,7 @@ void vlVaHandlePictureParameterBufferVP9(vlVaDriver *drv, vlVaContext *context,
+ void vlVaHandleSliceParameterBufferVP9(vlVaContext *context, vlVaBuffer *buf);
+ void vlVaDecoderVP9BitstreamHeader(vlVaContext *context, vlVaBuffer *buf);
+ void vlVaHandlePictureParameterBufferAV1(vlVaDriver *drv, vlVaContext *context, vlVaBuffer *buf);
+-void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices, unsigned slice_offset);
++void vlVaHandleSliceParameterBufferAV1(vlVaContext *context, vlVaBuffer *buf, unsigned num_slices);
+ void getEncParamPresetH264(vlVaContext *context);
+ void getEncParamPresetH265(vlVaContext *context);
+ void getEncParamPresetAV1(vlVaContext *context);
+--
+GitLab
+
4 months
[vdr-softhddevice] Update to 2.3.6
by Martin Gansser
commit 07f4fc669bf9ac30333ec3d5eeacb546af2e0725
Author: Martin Gansser <mgansser(a)netcom-mail.de>
Date: Mon Jul 22 08:28:34 2024 +0200
Update to 2.3.6
.gitignore | 1 +
sources | 2 +-
vdr-softhddevice.spec | 10 ++++++++--
3 files changed, 10 insertions(+), 3 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index d29572e..fbe5a8f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -49,3 +49,4 @@
/vdr-softhddevice-2.3.2.tar.gz
/vdr-softhddevice-2.3.3.tar.gz
/vdr-softhddevice-2.3.5.tar.gz
+/vdr-softhddevice-2.3.6.tar.gz
diff --git a/sources b/sources
index 9745804..d836b0e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (vdr-softhddevice-2.3.5.tar.gz) = cdf92d15048ba42631b78aa78babdb184cb3adce59cea98626367a38d8a85628394b3636c3f9b3c0819884913b6565f2a3f2c7f05398ce97fc92133688ea953c
+SHA512 (vdr-softhddevice-2.3.6.tar.gz) = 042406ee25d1e1571556bc53c561cb422684b210da2c7550318a6b89ba78063a60cd8d865fe4be3f18fb73c083c55f33047f6ac34f6b59d888f81b38f77a2c29
diff --git a/vdr-softhddevice.spec b/vdr-softhddevice.spec
index 064deb5..fa8c93f 100644
--- a/vdr-softhddevice.spec
+++ b/vdr-softhddevice.spec
@@ -1,11 +1,11 @@
# version we want build against
%global vdr_version 2.6.3
%if 0%{?fedora} >= 40
-%global vdr_version 2.6.7
+%global vdr_version 2.6.8
%endif
Name: vdr-softhddevice
-Version: 2.3.5
+Version: 2.3.6
Release: 1%{?dist}
Summary: A software and GPU emulated HD output device plugin for VDR
@@ -86,6 +86,12 @@ install -Dpm 644 %{SOURCE1} \
%license AGPL-3.0.txt
%changelog
+* Mon Jul 22 2024 Martin Gansser <martinkg(a)fedoraproject.org> - 2.3.6-1
+- Update to 2.3.6
+
+* Fri Jul 12 2024 Martin Gansser <martinkg(a)fedoraproject.org> - 2.3.5-2
+- Rebuilt for new VDR API version 2.6.8
+
* Tue Jul 09 2024 Martin Gansser <martinkg(a)fedoraproject.org> - 2.3.5-1
- Update to 2.3.5
4 months
[vdr-markad] Update to 4.0.2
by Martin Gansser
commit baa5218e010f888fca724620171eb9465f060312
Author: Martin Gansser <mgansser(a)netcom-mail.de>
Date: Mon Jul 22 08:17:59 2024 +0200
Update to 4.0.2
.gitignore | 1 +
sources | 2 +-
vdr-markad.spec | 5 ++++-
3 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index ae03625..34737e3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -98,3 +98,4 @@ vdr-plugin-markad-74e2a8c5382fa8bfacd12274899112724a1e0d51.tar.bz2
/vdr-markad-3.6.8.tar.gz
/vdr-markad-4.0.0.tar.gz
/vdr-markad-4.0.1.tar.gz
+/vdr-markad-4.0.2.tar.gz
diff --git a/sources b/sources
index d54e790..292ec57 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (vdr-markad-4.0.1.tar.gz) = de531263886a6344f477381819fbc0b9c1462784c03127c32d95f54b85dc37adb365f2ca259a1145e2d8ccdf4fed6ccc92a46943ef05ef7c5c6065ed1c2906d1
+SHA512 (vdr-markad-4.0.2.tar.gz) = 954fd34964eb5c64fbec3841807cdd79aa5aae0a409af13771be1d5953d194e88a77c148c65ec12fdda81ed6deefca4174be32a2ec8d4eb565e9003a73bfe476
diff --git a/vdr-markad.spec b/vdr-markad.spec
index 67ce484..f67a441 100644
--- a/vdr-markad.spec
+++ b/vdr-markad.spec
@@ -5,7 +5,7 @@
%endif
Name: vdr-markad
-Version: 4.0.1
+Version: 4.0.2
Release: 1%{?dist}
Summary: Advanced commercial detection for VDR
License: GPLv2+
@@ -72,6 +72,9 @@ fi
%doc html
%changelog
+* Mon Jul 22 2024 Martin Gansser <martinkg(a)fedoraproject.org> - 4.0.2-1
+- Update to 4.0.2
+
* Mon Jul 15 2024 Martin Gansser <martinkg(a)fedoraproject.org> - 4.0.1-1
- Update to 4.0.1
4 months
[jellyfin] New nupkg deps
by Michael Cronenworth
Summary of changes:
696352f... New nupkg deps (*)
(*) This commit already existed in another branch; no separate mail sent
4 months
[jellyfin/f40] New nupkg deps
by Michael Cronenworth
commit 696352fbea6a1aecbb7b255104da3d6ae4f81faa
Author: Michael Cronenworth <mike(a)cchtml.com>
Date: Sun Jul 21 22:22:43 2024 -0500
New nupkg deps
sources | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---
diff --git a/sources b/sources
index 6d4eda1..0ff5144 100644
--- a/sources
+++ b/sources
@@ -1,5 +1,5 @@
SHA512 (jellyfin-10.9.8.tar.gz) = 7e4b03af7ecead3fea8a4006e959ab4774314670b47a7119180dc41329635c29086afedf0113bc0814fcd3854389fc204cbc6e9acb91637fffa2c2997dee62c7
SHA512 (jellyfin-web-10.9.8.tar.gz) = 17d7fe6b6bd69d0d87e23135536b1e6036f6f56e3181a80849a44f96aa87d9c85a5bf2fa85dad743b92c3c20aaf2dc820f220f87288fb78b6a6557da42c0da99
SHA512 (jellyfin-npm.tar.xz) = c5954aa44be76dd155253b8892b64c67b94eb4f69dd18856fc6324cf84b34b1fafe6b8f75ef60b8efde30ce18ba7ba6f2a2bce282faa7e9ff61384b066ee6435
-SHA512 (jellyfin-nupkgs.tar.xz) = bf1dfad0173de35c8f700920ae9529b8c61c02aad3ee2b0b9655858a723dfa043453741a38fb96dd908620e12a8a3841ac40377decc37eaebeb85804047f2a00
+SHA512 (jellyfin-nupkgs.tar.xz) = ef9fa1ea74c8fb7c269eb84b0f7aba10dca115bbd07d21ee842a01ef88c07d21bfa4d70f9c625de557fdaf7b773ac4fa3ec2adb68b8c891476142da0b119e5d3
SHA512 (jellyfin-nupkgs-system.tar.xz) = b394274d5518ecfc34b2357710852e07a4e9087d416cd460b3ba2bad45f49c06b9a9d6cbaef9ad3e70c5e4dd829dd30fd033ab55403cdaa8f9205c21cc2886a7
4 months
[jellyfin/f40] Update to 10.9.8
by Michael Cronenworth
Summary of changes:
cda7d90... Update to 10.9.8 (*)
(*) This commit already existed in another branch; no separate mail sent
4 months
[jellyfin] Update to 10.9.8
by Michael Cronenworth
commit cda7d9086400b93fb2c4c94dcbbf7df05e64cf0f
Author: Michael Cronenworth <mike(a)cchtml.com>
Date: Sun Jul 21 22:01:47 2024 -0500
Update to 10.9.8
jellyfin-offline.sh | 2 +-
jellyfin-web-package-lock.json | 16 ++++++++--------
jellyfin.spec | 5 ++++-
sources | 6 +++---
4 files changed, 16 insertions(+), 13 deletions(-)
---
diff --git a/jellyfin-offline.sh b/jellyfin-offline.sh
index 9c593f5..1353550 100755
--- a/jellyfin-offline.sh
+++ b/jellyfin-offline.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-JELLYFIN_VERSION=10.9.7
+JELLYFIN_VERSION=10.9.8
# Retrieve neccessary .NET NuGet packages for offline building
tar xf jellyfin-${JELLYFIN_VERSION}.tar.gz
diff --git a/jellyfin-web-package-lock.json b/jellyfin-web-package-lock.json
index b5d140c..21e9ea5 100644
--- a/jellyfin-web-package-lock.json
+++ b/jellyfin-web-package-lock.json
@@ -1,12 +1,12 @@
{
"name": "jellyfin-web",
- "version": "10.9.7",
+ "version": "10.9.8",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "jellyfin-web",
- "version": "10.9.7",
+ "version": "10.9.8",
"license": "GPL-2.0-or-later",
"dependencies": {
"@emotion/react": "11.11.4",
@@ -6684,9 +6684,9 @@
"dev": true
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001642",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001642.tgz",
- "integrity": "sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA==",
+ "version": "1.0.30001643",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz",
+ "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==",
"dev": true,
"funding": [
{
@@ -27737,9 +27737,9 @@
"dev": true
},
"caniuse-lite": {
- "version": "1.0.30001642",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001642.tgz",
- "integrity": "sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA==",
+ "version": "1.0.30001643",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz",
+ "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==",
"dev": true
},
"canvas": {
diff --git a/jellyfin.spec b/jellyfin.spec
index fd878cc..43c72ec 100644
--- a/jellyfin.spec
+++ b/jellyfin.spec
@@ -11,7 +11,7 @@
%endif
Name: jellyfin
-Version: 10.9.7
+Version: 10.9.8
Release: 1%{?dist}
Summary: The Free Software Media System
License: GPL-2.0-only
@@ -301,6 +301,9 @@ fi
%changelog
+* Sun Jul 21 2024 Michael Cronenworth <mike(a)cchtml.com> - 10.9.8-1
+- Update to 10.9.8
+
* Sat Jul 13 2024 Michael Cronenworth <mike(a)cchtml.com> - 10.9.7-1
- Update to 10.9.7
diff --git a/sources b/sources
index 0691a81..6d4eda1 100644
--- a/sources
+++ b/sources
@@ -1,5 +1,5 @@
-SHA512 (jellyfin-10.9.7.tar.gz) = f67ada4aa9da98dc4464f9615d1c77cd3064d4396fd820f2040ad6d0776dbc832c18bd4d76b5a3bd74a9a9256d6f70c6a26add6e837556dbfc75eeb2be7da787
-SHA512 (jellyfin-web-10.9.7.tar.gz) = 3c1953c693431e9d1ffaf646d406768f41d392f70f1771fd6b995caed1c7ff48d59c5ea9e72aa5b9ebf7646dc5231a301872c40855fac23264462b215b7d1e27
-SHA512 (jellyfin-npm.tar.xz) = 588c1003f1dad33165f34f6be10a253fa0143433ee6021858a4744780477733803436f62c091daa4e3a5ccea8a59faf06fff33c0260507970b8cbac6bcadc1a0
+SHA512 (jellyfin-10.9.8.tar.gz) = 7e4b03af7ecead3fea8a4006e959ab4774314670b47a7119180dc41329635c29086afedf0113bc0814fcd3854389fc204cbc6e9acb91637fffa2c2997dee62c7
+SHA512 (jellyfin-web-10.9.8.tar.gz) = 17d7fe6b6bd69d0d87e23135536b1e6036f6f56e3181a80849a44f96aa87d9c85a5bf2fa85dad743b92c3c20aaf2dc820f220f87288fb78b6a6557da42c0da99
+SHA512 (jellyfin-npm.tar.xz) = c5954aa44be76dd155253b8892b64c67b94eb4f69dd18856fc6324cf84b34b1fafe6b8f75ef60b8efde30ce18ba7ba6f2a2bce282faa7e9ff61384b066ee6435
SHA512 (jellyfin-nupkgs.tar.xz) = bf1dfad0173de35c8f700920ae9529b8c61c02aad3ee2b0b9655858a723dfa043453741a38fb96dd908620e12a8a3841ac40377decc37eaebeb85804047f2a00
SHA512 (jellyfin-nupkgs-system.tar.xz) = b394274d5518ecfc34b2357710852e07a4e9087d416cd460b3ba2bad45f49c06b9a9d6cbaef9ad3e70c5e4dd829dd30fd033ab55403cdaa8f9205c21cc2886a7
4 months