[GF108M][VA API] Garbled/Discolored H.264 video playback
On a ThinkPad T430 with an Nvidia GF108M [NVS 5400M] (with the Intel video card disabled in EFI PXE) running Sway (on Wayland) on Debian testing on Linux 5.9 with firmware extracted from 340.108, most videos encoded using H.264 are unwatchable due to garbled and discolored video. For example, https://archive.org/download/BigBuckBunny_328/BigBuckBunny_512kb.mp4 played with mpv --hwdec=vaapi --hwdec-codecs=all BigBuckBunny_512kb.mp4
prints "Using hardware decoding (vaapi)." and produces:
If I understand correctly, GF108M has VP4.2, which shows H.264 as supported on https://nouveau.freedesktop.org/VideoAcceleration.html yet the issue appears on all kernels I tested (back as far as Linux 4.19). I could test with previous Mesa versions or even older kernels if there's good reason to think it may be supported.
For reference, vainfo
shows:
vainfo: VA-API version: 1.9 (libva 2.9.0)
vainfo: Driver version: Mesa Gallium driver 20.2.2 for NVC1
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
Before installing the firmware, the only entrypoint was VAProfileNone : VAEntrypointVideoProc
and mpv would fail with "h264: No support for codec h264 profile 578".
If there's anything else I can do to diagnose the issue or test potential fixes, let me know.
Thanks, Kevin