Skip to content

Install Intel QuickSync Driver and SDK

Ahmet Oğuz Mermerkaya edited this page Jun 30, 2021 · 17 revisions

In order to use QuickSync encoders(currently supported h264_qsv), following packages should be installed. This setup procedure is for ubuntu 18.04. (We've tried to install apt packages for ubuntu 20.04. However we've not succeed.)

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

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 -j"$(nproc)"
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 -j"$(nproc)"
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

  • Just install the Ant Media Server with the traditional way
  • Edit the properties file
sudo nano /usr/local/antmedia/webapps/WebRTCAppEE/WEB-INF/red5-web.properties 

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 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

User Guide

Reference

Troubleshooting

Draft

Proposals

Clone this wiki locally