Commit Graph
10 Commits
Author SHA1 Message Date
dancingmirrors 409568b8d4 hasvk: We can use ARYSPC_LOD0 for layered DPB. 2026-07-21 22:25:28 +03:00
dancingmirrors 49447ce96e hasvk: Expose HASVK_DEBUG=video-debug and clean it up. 2026-07-21 22:25:28 +03:00
dancingmirrors c9dcef66aa hasvk: Emit MFX_AVC_WEIGHTOFFSET_STATE for both list 0 and list 1.
Fixes Haswell corruption with https://files.lynne.ee/testsamples/bbc2.sample.h264.
This is the correct thing to do anyway and only worked on Ivy Bridge by accident.

Assisted-by: Claude
2026-07-21 22:25:27 +03:00
dancingmirrors 564cead081 hasvk: Without a QPitch override gen7 can't reliably handle layered DPB.
Just accept corruption and avoid intermittent hangs when not tile aligned.
Breaks: dEQP-VK.video.decode.h264.interleaved_layered_dpb_video_layout

Assisted-by: Claude
2026-07-21 22:25:27 +03:00
dancingmirrors 4204b5ff5b hasvk: Initial layered DPB support and plenty of debug output.
Assisted-by: Claude
2026-07-21 22:25:27 +03:00
dancingmirrors 2e5cca4d05 hasvk: Properly handle interlaced video.
There was no handling here at all so the GPU would just hang immediately.

Assisted-by: Claude
2026-07-21 22:25:25 +03:00
dancingmirrors a7089e8341 hasvk: Clamp several MFX_AVC_IMG_STATE fields in case the slice parser fails us.
Also cap the reference frame count at the supported 16.

Assisted-by: Claude
2026-07-21 22:25:25 +03:00
dancingmirrors a2727d71b6 hasvk: Neutralize the unwritten chroma with monochrome video.
Otherwise we sample garbage with, say, yuvj420p.

Assisted-by: Claude
2026-07-21 22:25:23 +03:00
dancingmirrors 23b29b1f92 hasvk: Rework H.264 decode into long mode.
This is why the previously added slice header parser exists.

Assisted-by: Claude
2026-07-21 22:08:59 +03:00
dancingmirrors c3fe6d4a87 hasvk: Rename genX_video.c to genX_cmd_video.c to match ANV. 2026-07-21 22:08:59 +03:00