Changes between Version 18 and Version 19 of HWAccelIntro


Ignore:
Timestamp:
Dec 11, 2015, 12:56:54 PM (2 years ago)
Author:
saste
Comment:

add QSV entry

Legend:

Unmodified
Added
Removed
Modified
  • HWAccelIntro

    v18 v19  
    7373https://developer.nvidia.com/nvidia-video-codec-sdk 
    7474 
     75== Intel QSV == 
     76 
     77Intel QSV (Quick Sync Video) is a technology which allows decoding and encoding using recent Intel CPU and integrated GPU, supported on recent Intel CPUs. See: 
     78http://www.intel.com/content/www/us/en/architecture-and-technology/quick-sync-video/quick-sync-video-general.html 
     79 
     80To enable QSV support, you need the Intel Media SDK integrated in the Intel Media Server Studio: 
     81https://software.intel.com/en-us/intel-media-server-studio 
     82 
     83The Intel Media Server studio is available for both Linux and Windows, and contains the libva and libdrm libraries, the libmfx dispatcher library and the intel drivers.  
     84libmfx is the library which selects the codec depending on the system capabilities, falling back to a software implementation if the hardware accelerated codec is not available). 
     85 
     86FFmpeg QSV support relies on libmfx, but the library provided by Intel does not come with {{{pkg-config}}} files and a proper installer. Thus the easiest to install the library is to use the libmfx version packaged by lu_zero here: 
     87https://github.com/lu-zero/mfx_dispatch 
     88 
     89Requirements on Windows: install the Intel Media SDK packaged in the Intel Media Server Studio, which comes with a graphic installer, and a MinGW compilation enviroment (for example provided by MSYS2 with a corresponding Mingw-w64 package). Then you need to build libmfx and install it in a path recognized by pkg-config. For example if you install in {{{/usr/local}}} then you need the update the {{{$PKG_CONFIG_PATH}}} environment variable to make it point to {{{/usr/local/lib/pkgconfig}}}. 
     90 
     91Requriments on Linux: you need either to rely on the Intel Media Server Studio for Linux, or use a recent enough supported system, with the libva and libdrm libraries, the libva Intel drivers, and the libmfx library packaged by lu_zero. 
     92Note: in case you use the Intel Media Server Studio generic installation script, the installation script may overwrite your system libraries and break the system. 
     93 
     94Check the following website for updated information about the Intel Graphics stack on the various Linux platforms: 
     95https://01.org/linuxgraphics 
     96 
     97To enable QSV support in the FFmpeg build, configure with {{{--enable-libmfx}}}. 
     98 
     99Support for decoding and encoding is integrated in FFmpeg through several codecs identified by the {{{_qsv}}} suffix. In particular, it currently supports MPEG2 video, VC1 (decoding only), H.264 and H.265. 
     100 
     101For example to encode to H.264 using {{{h264_qsv}}}, you can use the command: 
     102{{{ 
     103ffmpeg -i INPUT -c:v h264_qsv -preset:v faster out.qsv.mp4 
     104}}} 
     105 
    75106== OpenCL == 
    76107