Skip to content

VLC for Windows not displaying ffv1 10/12/16-bit grayscale videos

I'm reporting an issue of VLC not displaying MKV videos encoded with ffv1 codec with 10/12/16-bit grayscale pixel formats.

With the latest version (v3.0.17.4), I cannot play back the ffv1/mkv encoded videos with the following console message (repeated for each frame).

[ffv1 @ 0000020065a746c0] get_buffer() failed
[ffv1 @ 0000020065a746c0] thread_get_buffer() failed

While no video window is shown, the progress bar on the playlist shows the correct duration and displays the progress.

Looking at the source code (libavcodec/ffv1dec.c), it appears these videos should be supported.

I've attached the test videos that I created with the FFmpeg (v5.0.1) commands:

ffmpeg -f lavfi -i testsrc=d=5 -vcodec ffv1 -pix_fmt gray test8.mkv
ffmpeg -f lavfi -i testsrc=d=5 -vcodec ffv1 -pix_fmt gray10le test10.mkv
ffmpeg -f lavfi -i testsrc=d=5 -vcodec ffv1 -pix_fmt gray12le test12.mkv
ffmpeg -f lavfi -i testsrc=d=5 -vcodec ffv1 -pix_fmt gray16le test16.mkv

test8.mkv test10.mkv test12.mkv test16.mkv

The 8-bit video is the only one plays on VLC while all the videos played back fine on ffplay.

Edited by Kesh Ikuma
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information