libva-v4l2-request-fourier: bump pin to c454618 (#15 transparent resize)

Bumps both Arch PKGBUILD and Debian build-deb.sh pins to PR #16 —
codec_store_buffer + request_pool_resize transparent OUTPUT-pool grow
on a mid-session resolution upshift overrun.  Picks up the frame-
survival path that supersedes #13's drop-and-recreate fallback.

Dual-pin per feedback_marfrit_packages_dual_pin so both Arch and
Debian repos see check-already-published.sh report a new version.
This commit is contained in:
2026-05-21 13:24:21 +02:00
parent 9301894997
commit ce2fff1a4f
2 changed files with 35 additions and 32 deletions
+18 -16
View File
@@ -10,23 +10,25 @@
# Upstream fork: https://git.reauktion.de/marfrit/libva-v4l2-request-fourier
set -euo pipefail
# Same pin as the Arch PKGBUILD. 2860d75 = PR #14 merge "picture:
# bounds-check codec_store_buffer slice writes against source_size
# (#13)" — guards the three append sites in codec_store_buffer's
# VASliceDataBufferType branch (H.264 Annex-B start code, VP8
# uncompressed-header pad, slice payload) against the OUTPUT pool
# slot's fixed sizeimage; returns VA_STATUS_ERROR_ALLOCATION_FAILED
# with a request_log line instead of memcpy'ing past the mmap on a
# resolution upshift mid-stream. Fixes a SIGSEGV in mpv
# --hwdec=vaapi-copy and a heap-corruption hazard in Firefox RDD.
# The root-cause refactor (re-init OUTPUT pool / re-create surfaces
# on resolution change, or grow source_data on demand) is tracked
# as the follow-up backlog item; this is the memory-safety floor.
# Same pin as the Arch PKGBUILD. c454618 = PR #16 merge "picture,
# request_pool: transparent OUTPUT-pool resize on bitstream overrun
# (#15)" — follow-up root-cause fix to #13/#14. On a mid-stream
# bitstream-budget overrun (typical cause: SPS-driven resolution
# upshift in an adaptive-bitrate stream), codec_store_buffer now
# snapshots the in-flight surface's accumulated bytes, releases its
# OUTPUT pool slot, calls request_pool_resize (STREAMOFF →
# REQBUFS(0) → S_FMT with 2×sizeimage hint, capped at 1 GiB, page-
# aligned → CREATE_BUFS → mmap → media_request_alloc → STREAMON),
# re-acquires a slot, re-mirrors the surface's source_{data,size,
# request_fd}, restores the bytes, and continues. The frame
# survives instead of being dropped back to libavcodec for surface
# recreation. CAPTURE side untouched (per-queue V4L2 streaming
# independence).
#
# Prior pin (77f9236) = PR #12 merge — av1_set_controls
# (V4L2_CID_STATELESS_AV1_SEQUENCE for the daedalus daemon track).
UPSTREAM_COMMIT=2860d75afe6a8e34df6afb508ff85c822bf9e908
PKGVER=1.0.0+r388+g2860d75
# Prior pin (2860d75) = PR #14 merge — codec_store_buffer bounds-
# check floor (#13).
UPSTREAM_COMMIT=c454618ae11addce2e17b560f4deeacbed067d98
PKGVER=1.0.0+r390+gc454618
PKGREL=1
HERE=$(dirname "$(readlink -f "$0")")