Skip to content

Blurry picture on Intel gfx when VAAPI enabled

When VA-API hardware acceleration is enabled on Intel graphics (from Sandy Bridge to Haswell), the picture becomes constantly blurry. This can be easily seen in more static scenes, when picture is blurry at first but then suddenly clears/sharpens. Unwatchable quality.

Examples:

Same frame:

Two subsequent frames (first blurry, then the next frame where it clears/sharpens):

VLC: -- 2.2.0-rc2, but also reproducible on at least: 2.1.5, 2.1.4 series OS: -- Linux Mint 17.1 Rebecca (= Ubuntu 14.04 LTS) -- 3.13.0-37-generic Intel: -- xserver-xorg-video-intel = 2:2.99.910-0ubuntu1.4 -- i965-va-driver = 1.4.1veboxmaster1-3-veboxtrusty -- libva 1.4.0

Can not reproduce on mplayer-based players or derivatives with VAAPI (mplayer, mplayer-vaapi, smplayer, mpv).

Relevant thread on the forum (multiple users have this issue):

https://forum.videolan.org/viewtopic.php?f=13&t=120850

$ vlc -v thewaterdiviner.mov
VLC media player 2.2.0-rc2 Weatherwax (revision 2.2.0+ppa3.2)
[0000000001df2058] core libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
"sni-qt/16300" WARN  00:47:50.309 void StatusNotifierItemFactory::connectToSnw() Invalid interface to SNW_SERVICE 
[00007fdfecc01518] mp4 stream warning: unknown box type tapt (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type hdlr (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type cios (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type colr (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type colr (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type cslg (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type stps (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type gmin (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type tmcd (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type hdlr (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type cios (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown handler type in stsd (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type hdlr (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type cios (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type mp4a (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type      (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type chan (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type apmd (incompletely loaded)
[00007fdfecc01518] mp4 stream warning: unknown box type apmd (incompletely loaded)
[00007fdfecc01768] mp4 demux warning: elst box found
[00007fdfecc01768] mp4 demux warning: STTS table of 1 entries
[00007fdfecc01768] mp4 demux warning: CTTS table of 3442 entries
[00007fdfecc01768] mp4 demux warning: elst box found
[00007fdfecc01768] mp4 demux warning: STTS table of 1 entries
[00007fdfecc78968] faad decoder warning: decoded zero sample
libva info: VA-API version 0.36.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_36
libva info: va_openDriver() returns 0
[00007fdfecc63518] avcodec decoder: Using Intel i965 driver for Intel(R) Ivybridge Mobile - 1.4.1.pre1 (1.4.1.pre1) for hardware decoding.
[0000000001ebad78] pulse audio output warning: starting late (-14798 us)
[00007fdfecc01768] mp4 demux warning: recreate ES for track[Id 0x1]
libva info: VA-API version 0.36.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_36
libva info: va_openDriver() returns 0
[00007fdfecc77fa8] avcodec decoder: Using Intel i965 driver for Intel(R) Ivybridge Mobile - 1.4.1.pre1 (1.4.1.pre1) for hardware decoding.
$ vainfo
libva info: VA-API version 0.36.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_36
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.36 (libva 1.4.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Ivybridge Mobile - 1.4.1.pre1 (1.4.1.pre1)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information