IPTV Live Video Encoding & Streaming with Intel Quick Sync Video
Intel Quick Sync Video is powered by Intel CPU integrated graphics, which is available on most Intel Core processors starting with Sandy Bridge, and some Celeron & Pentium processors starting with Haswell. Visit Intel Product Specifications to find out if your processor is capable of Quick Sync Video.
Set up Intel Quick Sync Video Streaming on Windows
To set up Intel Quick Sync Video streaming on Windows, desktop OS like Windows 10 against server OS is recommended. Make sure to install latest Intel HD Graphics driver. Outdated video driver could cause unexpected encoding problems.
Set up Intel Quick Sync Video Streaming on Linux
Setting up Intel QSV on Linux platform is painful and we
STRONGLY recommend NOT doing this. If you are using recent Linux distros like
Ubuntu 22.04, it is lucky to have driver packages in release repos so you can
just apt-get
to install them. On older distros, you may
need to download and build drivers from sources on your own. For detailed
instructions, visit
Intel Client GPU Installation.
After installation, enter vainfo
in command console to make
sure Intel driver working correctly. If not, try environment values
LIBVA_DRIVER_NAME
like iHD or i965. And set
LIBVA_DRIVERS_PATH
if driver files cannot be found.
Set up Intel QSV Video Encoding
IPVTL supports H.264, HEVC, MPEG-2, VP9 and AV1 encoding with Intel QSV. In channel config, choose encodings with qsv to enable it.
Note different Intel processors have different capabilities of video encodings. For example 9th/10th generation Intel Core processors (Intel UHD Graphics 630) supports HEVC/H.265 main profile only, while 11th (Intel UHD Graphics 750) and above generations support HEVC main and scc (screen content coding) profile. For details please visit Media Capabilities Supported by Intel Hardware.
Set up Intel QSV Video Decoding
If the channel source video is encoded in H.264, HEVC or AV1, it is recommended to enable QSV decode to make pure GPU transcoding. To do that, select QSV H.264 or HEVC (as per source video format) in advanced video options -> Misc. -> GPU Decoding. This will make video decoding, resizing and encoding process (with deinterlacing if required) all in GPU, avoiding unnecessary picture data copy between system memory and video memory.