Getting Started with Transcoding on Intel® Data Center GPU Flex Series
These steps provide instructions on how to create a media delivery container and run a simple transcoding operation for Ubuntu 20.04 only.
This "Hello World" sample validates that the drivers have been loaded correctly and that the card functioning properly.
| Optimized for | Description |
|---|---|
| OS | Ubuntu* 20.04 |
| What You Will Learn | How to transcode a AVC encoded video file to HEVC encoded video file |
| Time to Complete | 5 minutes |
Purpose
This sample is a command line application that takes a file containing a AVC video elementary stream as an argument, decodes it, and encodes the output file 'WAR_TRAILER_HiQ_10_withAudio.hevc.mp4' as HEVC.
Key Implementation Details
| Configuration | Default setting |
|---|---|
| Target device | Intel Data Center GPU Flex Series |
| Input format | AVC video elementary stream |
| Output format | HEVC video elementary stream |
| Output resolution | same as input |
Transcoding Sample Steps
Step 1: Build the media-delivery docker image
git clone -b release/2.1 https://github.com/intel/media-delivery.git && cd media-delivery
Step 2: Build the media-delivery docker image
docker build \ $(env | grep -E '(_proxy=|_PROXY)' | sed 's/^/--build-arg /') \ --file docker/ubuntu20.04/intel-gfx/Dockerfile \ --tag intel-media-delivery \.
Step 3: Enter the docker container
DEVICE=${DEVICE:-/dev/dri/renderD128}
DEVICE_GRP=$(ls -g $DEVICE | awk '{print $3}' | \
xargs getent group | awk -F: '{print $3}')
mkdir -p /tmp/ats-m && chmod -R 777 /tmp/ats-m
docker run --rm -it -v /tmp/ats-m:/opt/ats-m \
-e DEVICE=$DEVICE --device $DEVICE --group-add $DEVICE_GRP \
--cap-add SYS_ADMIN -p 8080:8080 \
intel-media-delivery
Step 4: Run AVC to HEVC FFmpeg transcoding inside docker container
ffmpeg -hwaccel qsv -c:v h264_qsv -extra_hw_frames 8 \
-i /opt/data/embedded/WAR_TRAILER_HiQ_10_withAudio.mp4 \
-c:v hevc_qsv -preset medium -profile:v main -async_depth 1 \
-b:v 4500000 -maxrate 9000000 -bufsize 18000000 \
-rc_init_occupancy 9000000 \
-look_ahead_depth 8 -extbrc 1 -b_strategy 1 \
-bf 7 -refs 4 -g 256 -idr_interval begin_only -strict -1 \
-vsync passthrough -y /opt/ats-m/WAR_TRAILER_HiQ_10_withAudio.hevc.mp4
Resources
You can find more information at the Intel Data Center GPU Flex Series Software Portal.
License
Content attribution for WAR_TRAILER_HiQ_10_withAudio.mp4: Film: WAR - Courtesy & Copyright: Yash Raj Films Pvt. Ltd.