I can find why I can't play any mkv file with vlc, it seems there is a drawing error, is there a workaround or something ? I have optimus (intel+nvidia) and i'm using bumblebee with last nvidia driver 358.

VLC media player 2.2.1 Terry Pratchett (Weatherwax) (revision 2.2.1-0-ga425c42)
[0000000001686148] core libvlc: Lancement de vlc avec l'interface par défaut. Utilisez « cvlc » pour démarrer VLC sans interface.
libva info: VA-API version 0.38.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_38
libva info: va_openDriver() returns 0
[00007f5994c75a08] avcodec decoder: Using OpenGL/VAAPI/libswscale backend for VDPAU for hardware decoding.
[00007f59986dbea8] adjust filter error: Unsupported input chroma (VDV0)
[00007f59986dd2a8] sharpen filter error: Unsupported chroma (VDV0)
[00007f59986dd2a8] vdpau_sharpen filter error: sharpening/blurring not supported by VDPAU device
[00007f598803c038] core video output error: Failed to create video filter2 'sharpen'
[00007f598803c038] core video output error: Failed to add filter 'sharpen'
[VS] error (vdpDecoderRender_h264): no surfaces left in buffer
[VS] error (vdpDecoderRender_h264): no surfaces left in buffer
[VS] error (vdpDecoderRender_h264): no surfaces left in buffer
[VS] error (vdpDecoderRender_h264): no surfaces left in buffer
[VS] error (vdpDecoderRender_h264): no surfaces left in buffer
[VS] error (vdpVideoSurfaceGetBitsYCbCr): not implemented conversion VA FOURCC Y -> VDP_YCBCR_FORMAT_YV12
[00007f59985cc008] vdpau_chroma filter error: video surface export failure: VDP_STATUS_INVALID_Y_CB_CR_FORMAT
[VS] error (vdpVideoSurfaceGetBitsYCbCr): not implemented conversion VA FOURCC Y -> VDP_YCBCR_FORMAT_YV12
[00007f59985cc008] vdpau_chroma filter error: video surface export failure: VDP_STATUS_INVALID_Y_CB_CR_FORMAT
[VS] error (vdpVideoSurfaceGetBitsYCbCr): not implemented conversion VA FOURCC Y -> VDP_YCBCR_FORMAT_YV12
up vote 16 down vote accepted

Ok all i had to do according this https://bbs.archlinux.org/viewtopic.php?id=199749 is to launch vlc with vlc --avcodec-hw=vaapi or to change vlc settings in "codec" and choose vaapi via x11 instead of vdpau.

  • 2
    Thanks for this post! You can make this setting permanent by editing your ~/.config/vlc/vlcrc file and setting avcodec-hw=vaapi. – tony mancill Oct 17 '16 at 0:13
  • I found that while using this switch made video visible again, it would not scale up from the original video size to the size of my monitor. – Andrew Apr 3 '17 at 12:20

If you like your system clean, you can also remove vdpau drivers (packages look like vdpau-driver-all:amd64 and mesa-vdpau-drivers:amd64). This will force the use of VAAPI.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.