IMX6 RTSP stream latency
|
Introduction
This page summarizes the results after measuring the latency for an iMX6 Nitrogen6X board while streaming over RTSP.
Test setup
- iMX6Q Nitrogen6Q2G board
- iMX6 Eval SDK with RidgeRun RTSPSINK element
- Linaro HFP toolchain
- DVI Splitter
- Toshiba TC358743 HDMI-to-MIPICSI2 bridge
The test was performed using the Nitrogen6X Eval SDK built with Linaro HFP toolchain and using the RidgeRun RTSP Sink element. A 1080p30 test video showing a timer was split into 2 outputs, one of the outputs was sent to an HDMI monitor (reference video) and the other one to the iMX6 HDMI capture module. The stream was played using a GStreamer pipeline on a regular PC, then a picture of the reference video and the captured stream was taken and the latency is calculated as the difference of the values in the 2 versions of the video.
1080p30 (VPU 352MHZ) test results
These are the results of the test with the video running at 1080p30 and the VPU at 352MHz. In order to reproduce them run the following pipelines:
Target board pipeline
gst-launch-0.10 mfw_v4lsrc device=/dev/video0 capture-mode=5 fps-n=30 queue-size=7 ! gstperf ! queue ! \ vpuenc codec=6 gopsize=30 bitrate=10000000 seqheader-method=3 ! \ queue ! mpegtsmux ! capsfilter caps="video/mpegts,mapping=/stream1" ! \ queue ! rtspsink service="5000" name=sink -v
PC (receiver) pipeline
$TARGET_IP_ADDRESS=<your board ip address> gst-launch-1.0 -e -v rtspsrc location="rtsp://$TARGET_IP_ADDRESS:5000/stream1" ! \ rtpmp2tdepay ! queue ! tsdemux ! 'video/x-h264' ! h264parse ! queue ! \ decodebin ! xvimagesink sync=false
Latency results
- Max: 128ms
- Min: 63ms
- Average: 92ms
For direct inquiries, please refer to the contact information available on our Contact page. Alternatively, you may complete and submit the form provided at the same link. We will respond to your request at our earliest opportunity.
Links to RidgeRun Resources and RidgeRun Artificial Intelligence Solutions can be found in the footer below.