Viz Engine Administrator Guide
Version 3.13 | Published March 28, 2019 ©
MPEG-TS over RTP / UDP and RTPS Streaming
Viz Engine can send and receive MPEG-TS over RTP/UDP/RTPS streams by using DSX.Core or any Matrox board that has an RTP upgrade.
Note: MPEG-TS over RTP/UDP and RTPS streaming require a Mezzanine IP license! For output only progressive formats are supported. For input both progressive and interlace formats are supported.
Capabilities Overview
Features |
Input |
Output |
Progressive |
|
|
Interlaced |
|
|
MPEG-TS over RTP |
|
|
MPEG-TS over UDP |
|
|
RTSP |
|
|
RTMP |
|
|
Note: Only H264 video and AAC audio are supported. Moreover only audio with two channels are supported. AV synchronization is disabled by default in the configuration and should only be enabled if the signal has an audio.
Output mode:
There are two different output modes: SDI or RTP. To enable output to SDI, a Matrox board supporting SDI is needed and must be chosen in the configuration file: Matrox.Devices = A520888.
If the SDI board does not support an RTP upgrade, another board must be installed; however, this board does not need to be included in the configuration.
If RTP output is needed, an M.264 is needed and must be chosen in the configuration file.
Receiving MPEG-TS over RTP / UDP and RTSP Streams
MPEG-TS over RTP
The following configuration needs to be set to configure for MPEG-TS over RTP Stream Input:
-
GPUDirect should be turned Off.
-
use_compositor should be 0.
-
An NTP server must be set (e.g. 131.107.13.100).
-
The color conversion rgb_2_yuv should be set to shader (=1).
-
The stream input should be set (e.g. 720P_5000_SMPTE296).
-
The StreamIn1.SrcUdpPort needs to be set to an even port number (e.g. 20000).
Info: The port number should always be even.
-
StreamIn1.SrcAddress is a string in the following format: [protocol]://[address]:[port]/[location]
-
[protocol]: RTSP, UDP or RTP.
-
[address]: The sender's IP number.
-
[port]: The sender's port number.
-
[location]: Where the stream is located (optional).
-
-
StreamIn1.NICAddress is the IP address of your local network interface card that is going to receive the stream.
To simulate a 720p MPEG-TS over RTP stream to 10.211.1.26, you can use ffmpeg with the following parameters:
ffmpeg.exe -f lavfi -re -i smptehdbars=s=1280x720:r=
50
[out0] -c:v libx264 -profile:v high422 -pix_fmt yuv422p -x264-params
"nal-hrd=cbr"
-b:v 20M -minrate 10M -maxrate 10M -bufsize 10M -c:a aac -ac
2
-f rtp_mpegts -bsf:v h264_mp4toannexb rtp:
//10.211.1.26:20000
This generates a test pattern in 720p and sends it to 10.211.1.26 on port 20000.
RTSP
To receive the stream StreamIn1.SrcAddress value should be rtp://10.211.1.26:20000.
VLC can be used to generate RTSP stream for testing purposes:
-
Media > Stream... (CTRL + S).
-
Choose a valid file as source.
-
Click on Stream.
-
Click on Next.
-
Select RTSPas New destination.
-
Click Add.
-
Choose a port. For instance, 8554.
-
Choose a path name. For instance, test.
-
Choose profile. H.264 + MP3 (TS). Disable audio, as MP3 is not supported.
-
Click Next.
-
Enable Stream all elementary streams.
-
Click Stream.
To receive the stream StreamIn1.SrcAddress value should be rtsp://[address]:8554/test where [address] is the IP of the machine where VLC is located.
Sending MPEG-TS over RTP Streams
These are the required settings to generate a RTP Stream output from Viz Engine:
-
Set the output system (e.g. 720P_5000_SMPTE296).
-
GPUDirect should be turned Off.
-
use_compositor should be 0.
-
An NTP server must be set (e.g. 131.107.13.100).
-
The color conversion rgb_2_yuv should be set to shader (=1).
-
Matrox0.VideoOut1.SrcUdpPort should be set to an even port number (e.g. 10000).
Info: The port number should always be even.
-
Matrox0.VideoOut1.DstUdpPort is the destination port you want to use (e.g. 10002).
-
Matrox0.VideoOut1.DstAddress is the destination IP address you want to send to.
-
Matrox0.VideoOut1.NetworkInterfaceIPAddress must be your local NIC IP address.
To verify the correct output, you can use ffplay from ffmpeg tools:
ffplay rtp:
//{source IP of your Viz Engine}:{destination port} e.g. ffplay rtp://10.211.1.26:10002