Hi,
There is problem on decoding Streaming H.264 media content from on-board Ethernet port of DM8168 EVM. The details of the problem are the following. Please help to determine what could be the cause of the problem and how to fix them. Thanks so much!
Platform: Spectrum DM8168 EVM reversion: G
EZSDK version: ti-ezsdk_dm816x-evm_5_03_01_15
Gstreamer revision: 1023
Streaming program : Windows version VLC
Streaming Protocol: UDP
DM8168 gstreamer environment setting:
/etc/init.d/matrix-gui-e stop; echo 0 > /sys/devices/platform/vpss/graphics0/enabled
export GST_REGISTRY=/tmp/gst_registry.bin
export LD_LIBRARY_PATH=/opt/gstreamer/lib
export GST_PLUGIN_PATH=/opt/gstreamer/lib/gstreamer-0.10
export PATH=/opt/gstreamer/bin:$PATH
export GST_PLUGIN_SCANNER=/opt/gstreamer/libexec/gstreamer-0.10/gst-plugin-scanner
cd /opt/gstreamer/bin
DM8168 video output : HDMI
Pipeline flow:
VLC H264 UDP streaming(Windows PC) --> (DM8168 gstreamer pipeline)udpsrc --> omx_h264dec --> omx_hdeiscaler --> omx_videosink --> HDMI display
Gsteamer pipeline:
gst-launch udpsrc port=12345 ! mpegtsdemux name=demux demux. ! queue2 ! video/x-h264, framerate=30/1 ! h264parse access-unit=true ! omx_h264dec ! omx_hdeiscaler name=d d.src_01 ! fakesink silent=true d.src_00 ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink display-mode=OMX_DC_MODE_1080P_60
Case 1:
If DM8168 gstreamer pipeline start before VLC streaming out, the streaming video playback will sometime have wrong decoded frame order problems.
Messages on console:
root@dm816x-evm:/opt/gstreamer/bin# gst-launch udpsrc port=12345 ! mpegtsdemux
name=demux demux. ! queue2 ! video/x-h264, framerate=60/1 ! h264parse access-uni
t=true ! omx_h264dec ! omx_mdeiscaler name=d d.src_01 ! fakesink silent=true d.s
rc_00 ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink dis
play-mode=OMX_DC_MODE_1080P_60
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: MpegTSClock
Stream is corrupt error, ignorable ...
this input params: 720x240,896 645120 1
peer output params: 720x480,896 774144 8
incoming buffer: nFilledLen: 752608, nOffset: 21536 nFlags: 50200
perf0: frames: 63 current: 62.07 average: 62.07 arm-load: 2
perf0: frames: 123 current: 59.93 average: 61.01 arm-load: 11
perf0: frames: 184 current: 60.06 average: 60.69 arm-load: 8
perf0: frames: 244 current: 59.95 average: 60.51 arm-load: 15
perf0: frames: 300 current: 56.00 average: 59.61 arm-load: 13
perf0: frames: 365 current: 64.01 average: 60.35 arm-load: 5
perf0: frames: 425 current: 59.95 average: 60.29 arm-load: 11
perf0: frames: 486 current: 60.00 average: 60.26 arm-load: 4
perf0: frames: 547 current: 60.06 average: 60.23 arm-load: 10
perf0: frames: 607 current: 59.95 average: 60.21 arm-load: 12
………………………………………………..
Case 2:
If VLC streaming out first then DM8168 gstreamer pipeline start, the streaming video playback will always have wrong decoded frame order problems.
Messages on console:
/etc/init.d/matrix-gui-e stop; echo 0 > /sys/devices/platform/vpss/graphics0/enabled
export GST_REGISTRY=/tmp/gst_registry.bin
export LD_LIBRARY_PATH=/opt/gstreamer/lib
export GST_PLUGIN_PATH=/opt/gstreamer/lib/gstreamer-0.10
export PATH=/opt/gstreamer/bin:$PATH
export GST_PLUGIN_SCANNER=/opt/gstreamer/libexec/gstreamer-0.10/gst-plugin-scanner
cd /opt/gstreamer/bin
root@dm816x-evm:/opt/gstreamer/bin# gst-launch udpsrc port=12345 ! mpegtsdemux
name=demux demux. ! queue2 ! video/x-h264, framerate=60/1 ! h264parse access-uni
t=true ! omx_h264dec ! omx_mdeiscaler name=d d.src_01 ! fakesink silent=true d.s
rc_00 ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink dis
play-mode=OMX_DC_MODE_1080P_60
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: MpegTSClock
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
Stream is corrupt error, ignorable ...
this input params: 720x240,896 645120 1
peer output params: 720x480,896 774144 8
incoming buffer: nFilledLen: 752608, nOffset: 21536 nFlags: 50200
perf0: frames: 20 current: 18.82 average: 18.82 arm-load: 3
perf0: frames: 82 current: 59.95 average: 39.10 arm-load: 2
perf0: frames: 146 current: 59.94 average: 46.13 arm-load: 3
perf0: frames: 210 current: 59.95 average: 49.62 arm-load: 4
perf0: frames: 274 current: 63.16 average: 52.23 arm-load: 3
perf0: frames: 332 current: 56.75 average: 52.97 arm-load: 6
perf0: frames: 396 current: 59.94 average: 53.98 arm-load: 6
perf0: frames: 460 current: 63.35 average: 55.12 arm-load: 3
perf0: frames: 518 current: 56.53 average: 55.27 arm-load: 4
perf0: frames: 582 current: 59.99 average: 55.75 arm-load: 6
perf0: frames: 646 current: 59.90 average: 56.14 arm-load: 4
perf0: frames: 710 current: 59.94 average: 56.46 arm-load: 4
perf0: frames: 774 current: 59.94 average: 56.73 arm-load: 2
perf0: frames: 837 current: 62.84 average: 57.15 arm-load: 3
perf0: frames: 898 current: 59.97 average: 57.33 arm-load: 7
perf0: frames: 958 current: 60.00 average: 57.49 arm-load: 8
perf0: frames: 1018 current: 57.11 average: 57.47 arm-load: 5
perf0: frames: 1078 current: 59.90 average: 57.60 arm-load: 4
perf0: frames: 1142 current: 60.00 average: 57.73 arm-load: 3
perf0: frames: 1206 current: 59.94 average: 57.84 arm-load: 3
…………………………………………………
Thanks a lot!
Ken