libva-v4l2-request-fourier: c1bb444 -> 77f9236 (PR #12 / issue #11 libva side)

Bumps both Arch (PKGBUILD) and Debian (build-deb.sh) sides in one commit
this time — following the dual-pin lesson from PR #53.

77f9236 = libva PR #12 merge: src/av1.{c,h} implements av1_set_controls
mapping VAPictureParameterBufferAV1 onto struct v4l2_ctrl_av1_sequence,
queued via S_EXT_CTRLS as V4L2_CID_STATELESS_AV1_SEQUENCE.  The
daedalus_v4l2 daemon track will consume the ctrl to synthesise an
OBU_SEQUENCE_HEADER and prepend it to the slice bitstream, so libdav1d
can parse the OUTPUT buffer that ffmpeg-vaapi delivers without the
sequence header.

Until the daemon-side OBU synth lands (issue #11 operator track), the
SEQUENCE ctrl is just sitting in the request unused.  Harmless on the
RK3588 vpu981 hardware path (vpu981 parses OBU bytes directly, ignores
the ctrl payload).

pkgver: r382.c1bb444 -> r386.77f9236 (commit count 382 -> 386, two new
upstream commits: 9fa18f2 av1 + 77f9236 merge).
pkgrel: 1 (fresh pkgver, no rebuild-only iteration).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
claude-noether
2026-05-20 21:17:54 +02:00
parent eab66cfab8
commit 9580f33cb6
2 changed files with 32 additions and 31 deletions
+17 -17
View File
@@ -24,29 +24,29 @@ pkgname=libva-v4l2-request-fourier
epoch=1 epoch=1
_upstreampkg=libva-v4l2-request _upstreampkg=libva-v4l2-request
# Pin the fork tip. c1bb444 = PR #9 merge "h264: max_num_ref_frames # Pin the fork tip. 77f9236 = PR #12 merge "av1: populate
# fallback + libva-boundary instrumentation (#8)" — addresses the # V4L2_CID_STATELESS_AV1_SEQUENCE in codec_set_controls (#11 libva side)"
# libva-side portion of marfrit/libva-v4l2-request-fourier#8: the # — addresses the libva-side portion of marfrit/libva-v4l2-request-fourier#11.
# daedalus_v4l2-via-libavcodec strict consumer rejected frames whose # Adds src/av1.{c,h} with av1_set_controls that maps VAAPI's
# sps.max_num_ref_frames was 0 (older ffmpeg-vaapi paths leave the # VAPictureParameterBufferAV1.seq_info_fields onto struct
# field unset and HW decoders tolerated it). Adds a per-profile spec # v4l2_ctrl_av1_sequence and queues V4L2_CID_STATELESS_AV1_SEQUENCE via
# minimum fallback (counts valid DPB entries first; 1 for baseline / # S_EXT_CTRLS. The daedalus_v4l2 daemon track is the consumer that turns
# 4 for main+high if even that is 0) and a one-line request_log at # the ctrl into an OBU_SEQUENCE_HEADER and prepends it to the slice
# h264_set_controls entry dumping raw VAAPI bitfields (seq_fields, # bitstream so libdav1d can parse the (sequence-header-stripped) OUTPUT
# pic_fields, num_ref_frames, bit_depth_*) for disambiguating where # buffer that ffmpeg-vaapi delivers. Until the daemon side lands the ctrl
# the still-open PPS-flag-zero portion of issue #8 originates. # is just sitting in the request unused — no-cost no-op for HW decoders
# (vpu981 parses OBU bytes directly).
# #
# Prior pin (9898331) was the LIBVA-2 close — config-side video_fd_daedalus # Prior pin (c1bb444) = PR #9 merge — h264_set_controls
# added to the profile enumeration probe array. c332d34 (LIBVA-1) added # max_num_ref_frames fallback + libva-boundary instrumentation for the
# the per-codec dispatch. Earlier de27e95 (Phase 8.13 diagnostic), # daedalus consumer-strict path (issue #8 libva side).
# 7ac934e (iter38b multi-device probe + MAX_PROFILES bounds-check fix). _commit=77f92364661419f6e5a7bd827c1b845b4e426569
_commit=c1bb444d0731ca7ca831c7e01ec4b52ed736ca8e
# Project version from meson.build (1.0.0) + commit count + short sha, # Project version from meson.build (1.0.0) + commit count + short sha,
# matching the ffmpeg-v4l2-request-fourier convention. Recomputed at # matching the ffmpeg-v4l2-request-fourier convention. Recomputed at
# build time by pkgver() below; the static value here is a placeholder # build time by pkgver() below; the static value here is a placeholder
# so AUR-style consumers see something coherent before src/ exists. # so AUR-style consumers see something coherent before src/ exists.
pkgver=1.0.0.r382.c1bb444 pkgver=1.0.0.r386.77f9236
pkgrel=1 pkgrel=1
pkgdesc="VA-API backend for V4L2 stateless decoders (multiplanar fork — fourier umbrella)" pkgdesc="VA-API backend for V4L2 stateless decoders (multiplanar fork — fourier umbrella)"
arch=('aarch64') arch=('aarch64')
+15 -14
View File
@@ -10,21 +10,22 @@
# Upstream fork: https://git.reauktion.de/marfrit/libva-v4l2-request-fourier # Upstream fork: https://git.reauktion.de/marfrit/libva-v4l2-request-fourier
set -euo pipefail set -euo pipefail
# Same pin as the Arch PKGBUILD. c1bb444 = PR #9 merge "h264: # Same pin as the Arch PKGBUILD. 77f9236 = PR #12 merge "av1:
# max_num_ref_frames fallback + libva-boundary instrumentation (#8)" — # populate V4L2_CID_STATELESS_AV1_SEQUENCE in codec_set_controls
# addresses the libva-side portion of marfrit/libva-v4l2-request-fourier#8. # (#11 libva side)" — adds src/av1.{c,h} with av1_set_controls that
# The daedalus_v4l2-via-libavcodec strict consumer rejected frames whose # maps VAAPI's VAPictureParameterBufferAV1.seq_info_fields onto
# sps.max_num_ref_frames was 0 (older ffmpeg-vaapi paths leave the field # struct v4l2_ctrl_av1_sequence and queues V4L2_CID_STATELESS_AV1_
# unset and HW decoders tolerated it). PR adds a per-profile spec # SEQUENCE via S_EXT_CTRLS. The daedalus_v4l2 daemon track is the
# minimum fallback (counts valid DPB entries first; 1 for baseline / 4 # consumer that turns the ctrl into an OBU_SEQUENCE_HEADER and
# for main+high if even that is 0) and a one-line request_log at # prepends it to the slice bitstream so libdav1d can parse the
# h264_set_controls entry dumping raw VAAPI bitfields for diagnosing # (sequence-header-stripped) OUTPUT buffer that ffmpeg-vaapi
# the still-open PPS-flag-zero portion of issue #8. # delivers.
# #
# Prior pin (9898331) was the LIBVA-2 close — config-side # Prior pin (c1bb444) = PR #9 merge — h264_set_controls
# video_fd_daedalus added to the profile enumeration probe array. # max_num_ref_frames fallback + libva-boundary instrumentation for
UPSTREAM_COMMIT=c1bb444d0731ca7ca831c7e01ec4b52ed736ca8e # the daedalus consumer-strict path (issue #8 libva side).
PKGVER=1.0.0+r382+gc1bb444 UPSTREAM_COMMIT=77f92364661419f6e5a7bd827c1b845b4e426569
PKGVER=1.0.0+r386+g77f9236
PKGREL=1 PKGREL=1
HERE=$(dirname "$(readlink -f "$0")") HERE=$(dirname "$(readlink -f "$0")")