Skip to main content

Using Intel QuickSync Encoders

In order to use QuickSync encoders, the following packages should be installed. This setup procedure is for ubuntu 18.04.

QuickSync is supported in Ant Media Server v2.4.0 and later versions.

Basic requirements

sudo apt install cmake build-essential pkg-config autoconf libtool libdrm-dev libva-dev libx11-dev

Make sure to enable the graphics cards in BIOS (Chipset > North Bridge > Graphics Configuration):

Install GMMLIB

git clone https://github.com/intel/gmmlib.git cd gmmlib/ mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release -DARCH=64 .. make sudo make install cd ../..

Install Libva

git clone https://github.com/intel/libva.git cd libva/ ./autogen.sh make sudo make install cd ..

Install Intel media driver

git clone https://github.com/intel/media-driver.git mkdir build_media cd build_media cmake ../media-driver make sudo make install cd ..

Install Intel media SDK

git clone https://github.com/Intel-Media-SDK/MediaSDK msdk cd msdk mkdir build && cd build cmake .. make sudo make install echo "/opt/intel/mediasdk/lib/" >` msdk.conf sudo mv msdk.conf /etc/ld.so.conf.d/ sudo ldconfig

Install and configure Ant Media Server

First, install Ant Media Server. Then, edit the properties file:

sudo nano /usr/local/antmedia/webapps/WebRTCAppEE/WEB-INF/red5-web.properties

 In this file, add settings.encoding.encoderName=h264_qsv save and exit from the editor.

Add antmedia user to video group

sudo usermod -aG video antmedia

Restart the Ant Media Server

sudo service antmedia restart

  • Go to the web panel and add adaptive bitrate.

  • Publish stream with RTMP or WebRTC.

  • Check the logs if h264_qsv is opened. You should see something like that:

    2021-06-27 07:17:06,209 [vert.x-worker-thread-2] INFO i.a.e.adaptive.video.H264Encoder - Video codec opened. Context gop size: 40 keyint mint 25 extradata size: 47 video codec timebase: 1/20 codecName: h264_qsv for stream: stream1