Transcoder Guide

Supported Card Model:

  • Nvidia

    • P4000 (support h264/h265)

    • tesla k10 (support h264)

    • includes cuda decoding.

  • Intel

Integration Steps:

  • Nvidia

    • Install Ubuntu 16, 20

    • Install Nvidia driver and Nvidia ffmpeg.

  • Intel

    • install Intel QuickSync driver and its ffmpeg

      • read the ffmpeg part of the pdf.

      • copy new ffmpeg into ezserver folder

Panel Setting 

GPU Trasncoding:

  • Add UDP, HTTP or RTMP input Links into Channel: Media source.

 

  • If the server has 2 network cards, the 1st card for HLS output and the 2nd card for multicast input. Click More icon of the channels to select the 2nd card for input  as below.

  • Select Adaptive Bitrate.

  • Set Desired bitrate (unit: kbps).

  • Select Video Format (h264, h265).

    • h264_nvenc and h265_nvenc options use Nvidia GPU resource.

  • URL for restreamer or players

    • Syntax: http://ip_address:port/ChannelName.m3u8?u=xxxx:p=xxxx

    • Syntax: http://ip_address:port/chx.m3u8?u=xxxx:p=xxxx

    • Ex. 1: http://test:1234@172.16.10.50:8000/TV1.m3u8

    • Ex. 2: http://test:1234@172.16.10.50:8000/ch4.m3u8

Examples:

  • Option 1: Single Bitrate: 500kbps and video format :h264_nvenc.

  • for h264_nvenc supports udp, http and rtmp input link.

  • Option 2: Single Bitrate: 500kbps and video format :h265_nvenc with ffmpeg extension options.

  • for h265_nvenc supports http, rtmp input, but not support udp multicast input.

  • Option 3: Multiple Bitrates: 500kbps, 1200kbps, 3000kbps and video format :h264_nvenc.

  • for h264_nvenc supports udp, http and rtmp input link.

  • Option 4: Multiple Bitrates: 500kbps, 1200kbps, 3000kbps and video format :h265_nvenc.

  • for h265_nvenc supports http, rtmp input, but not support udp multicast input.

Intel examples:

  • same as Nvidia setting except video format by h264_qsv.

Logo watermark channel:

  • Click Edit more options of one channel and select Constant Bitrate (External transccoder) as below:

  • Click Save button.

  • Add transcoder_path=ffmpeg -i logo.png -filter_complex 'overlay=10:10' in ezserver_config.txt.

  • restart ezserver

  • Streaming URL: http://192.168.0.10:8000/getlink?username=test:password=1234:type=hls


CPU Transcoding:

Using FFmpeg transcoding input streams to H264/H265 format with multiple bitrate for Apple HLS streaming. 

Channel Input:

  • Add UDP, HTTP or RTMP input Links into Channels

Add Channels

Select the 2nd network card for multicast input (optional)

Channel Output:

Output URL Syntax

http://userid:password@ip_address:port/ChannelName

http://userid:password@ip_address:port/ChannelName.m3u8

http://userid:password@ip_address:port/x.ch

http://userid:password@ip_address:port/chx.m3u8

http://ip_address:port/ChannelName?u=xxxx:p=xxxx

http://ip_address:port/ChannelName.m3u8?u=xxxx:p=xxxx

http://ip_address:port/x.ch?u=xxxx:p=xxxx

http://ip_address:port/chx.m3u8?u=xxxx:p=xxxx

Examples:

H264 Examples

Output format :h264 (500kbps)

Output format :h264 (500kbps, 1200kbps, 3000kbps)

Output URL

Output URL

http://test:1234@172.16.10.50:8000/TV1

http://test:1234@172.16.10.50:8000/TV1.m3u8

http://test:1234@172.16.10.50:8000/TV1.m3u8

 

H265 Examples

Output format :h265 (500kbps)

Output format :h265 (500kbps, 1200kbps, 3000kbps)

Output URL

Output URL

http://test:1234@172.16.10.50:8000/TV1

http://test:1234@172.16.10.50:8000/TV1.m3u8

http://test:1234@172.16.10.50:8000/TV1.m3u8

HTTP input Examples

Output format :h264 (500kbps)

Output format :h264 (500kbps)

Output URL

Output URL

http://test:1234@172.16.10.50:8000/TV1

(This option does not record ts streams in ezserver_enterprise/hls_archive folder.)

http://test:1234@172.16.10.50:8000/TV1

http://test:1234@172.16.10.50:8000/TV1.m3u8