forked from marfrit/marfrit-packages
daedalus-v4l2: 6e6dfa1 -> 1d8f5af — pause-time tiny-bitstream filter (#18)
Picks up reauktion/daedalus-v4l2 PR #18 (closes #17): daemon drops degenerate (<4 byte) bitstreams at REQ_DECODE entry instead of letting avcodec_send_packet emit AVERROR_INVALIDDATA, replies RESP_FRAME NO_FRAME so libva's V4L2 surface pool stays alive. Fixes the Firefox YouTube avc1 pause→resume regression observed on higgs: libva-v4l2-request-fourier flushes a 3-byte stub into OUTPUT_MPLANE at the pause boundary; the old daemon path turned that into a decode failure, Firefox marked H.264-via-VAAPI as broken for the session, and routed every subsequent frame to libmozavcodec SW. After this bump the daemon logs 'tiny bitstream 3 bytes — dropping as no-op' and the next real REQ_DECODE proceeds normally. Wire protocol unchanged. daedalus-v4l2-dkms bump not needed.
This commit is contained in:
@@ -23,12 +23,12 @@ _upstreampkg=daedalus-v4l2
|
||||
# (daedalus-v4l2#11). Daemon still needs daedalus-fourier at
|
||||
# build time (Arch packaging for that is a follow-up; Debian side
|
||||
# fetches inline via build-deb.sh).
|
||||
_commit=6e6dfa144da7bc7fa8be50c8da91d7d1c6132a2c
|
||||
_commit=1d8f5af1646c7c09b75e07be0c2763b37ea367e6
|
||||
|
||||
# 0.1.0 (pre-1.0) + commit count + short sha. Bump the .Y on each
|
||||
# Phase 8.x close. pkgver() recomputes at build time.
|
||||
pkgver=0.1.0.r41.6e6dfa1
|
||||
pkgrel=1 # reset for new upstream pin (6e6dfa1 — soname 62 via /opt/fourier)
|
||||
pkgver=0.1.0.r43.1d8f5af
|
||||
pkgrel=1 # reset for new upstream pin (1d8f5af — pause-time tiny-bitstream filter, closes #17)
|
||||
pkgdesc="Userspace daemon for the daedalus-v4l2 V4L2 stateless decoder shim (VP9/AV1/H.264 on Pi 5 / CM5)"
|
||||
arch=('aarch64')
|
||||
url="https://git.reauktion.de/reauktion/daedalus-v4l2"
|
||||
|
||||
Vendored
+3
-3
@@ -19,9 +19,9 @@ set -euo pipefail
|
||||
# source tree we own in marfrit-packages. Headers + .pc files
|
||||
# come from ffmpeg-v4l2-request-fourier (installed by the CI
|
||||
# workflow before this script runs; see PKG_CONFIG_PATH below).
|
||||
UPSTREAM_COMMIT=6e6dfa144da7bc7fa8be50c8da91d7d1c6132a2c
|
||||
PKGVER=0.1.0+r41+g6e6dfa1
|
||||
PKGREL=1 # reset for new upstream pin (6e6dfa1 — soname 62 via /opt/fourier)
|
||||
UPSTREAM_COMMIT=1d8f5af1646c7c09b75e07be0c2763b37ea367e6
|
||||
PKGVER=0.1.0+r43+g1d8f5af
|
||||
PKGREL=1 # reset for new upstream pin (1d8f5af — pause-time tiny-bitstream filter, closes #17)
|
||||
|
||||
# daedalus-fourier pin. d87239d = marfrit/daedalus-fourier PR #1 merge
|
||||
# (install rules + pkg-config, enables this consumer to find_package
|
||||
|
||||
+20
@@ -1,3 +1,23 @@
|
||||
daedalus-v4l2 (0.1.0+r43+g1d8f5af-1) bookworm trixie; urgency=medium
|
||||
|
||||
* Bump to 1d8f5af — picks up daedalus-v4l2 PR #18 (closes #17).
|
||||
Daemon now drops degenerate (<4 byte) bitstreams at the REQ_DECODE
|
||||
entry instead of letting avcodec_send_packet return
|
||||
AVERROR_INVALIDDATA. Reply RESP_FRAME with status=
|
||||
DAEDALUS_DECODE_NO_FRAME so libva's V4L2 surface pool stays
|
||||
healthy.
|
||||
* Fixes the Firefox YouTube avc1 pause→resume regression observed
|
||||
on higgs: libva-v4l2-request-fourier flushes a 3-byte stub
|
||||
(presumably a bare NAL start code) into OUTPUT_MPLANE at the
|
||||
pause boundary; the old INVALIDDATA error path made Firefox
|
||||
fall off to libmozavcodec SW for the rest of the session. With
|
||||
this filter the daemon logs the sentinel as 'tiny bitstream 3
|
||||
bytes — dropping as no-op' and the next real REQ_DECODE
|
||||
proceeds normally.
|
||||
* Wire protocol unchanged. No daedalus-v4l2-dkms bump needed.
|
||||
|
||||
-- Markus Fritsche <mfritsche@reauktion.de> Fri, 22 May 2026 17:30:00 +0000
|
||||
|
||||
daedalus-v4l2 (0.1.0+r41+g6e6dfa1-1) bookworm trixie; urgency=medium
|
||||
|
||||
* Bump to 6e6dfa1 — daedalus-v4l2 PR #16. Daemon dlopens Kwiboo
|
||||
|
||||
Reference in New Issue
Block a user