AnsweredAssumed Answered

RTP Streaming performance problems

Question asked by Otto Blom on May 2, 2014
Latest reply on May 5, 2014 by Otto Blom

Hi There,

 

I followed these instructions - GStreamer RTP Streaming to set up my PC as the sender and the i.mx6 as the receiver (playback on LCD). Audio output was disabled in the script as our board does not support it yet. The video does show up, but the performance is quite abysmal - less than 1 frame per second. My PC is a i5 so I would imagine that is not the problem. Any ideas on what could be going on ? I'm using the 4.1.0 BSP. The receiver log is shown below

 

Thanks and have a great weekend,

 

/Otto

 

root@freescale /usr/bin$ ./rtp_receiver.sh

MFW_GST_V4LSINK_PLUGIN 3.0.7 build on Apr  7 2014 18:07:30.

Setting pipeline to PAUSED ...

[INFO]    Product Info: i.MX6Q/D/S

vpudec versions

    plugin: 3.0.7

    wrapper: 1.0.35(VPUWRAPPER_ARM_LINUX Build on Apr  7 2014 18:06:47)

    vpulib: 5.4.16

    firmware: 2.3.10.40778

Pipeline is live and does not need PREROLL ...

Setting pipeline to PLAYING ...

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:recv_rtp_sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:recv_rtp_sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin.GstGhostPad:recv_rtp_sink_0: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin.GstGhostPad:recv_rtp_sink_0.GstProxyPad:proxypad0: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:recv_rtp_src: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

New clock: GstSystemClock

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpJitterBuffer:rtpjitterbuffer0.GstPad:src: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpJitterBuffer:rtpjitterbuffer0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpPtDemux:rtpptdemux0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998

/GstPipeline:pipeline0/GstRtpH263PDepay:rtph263pdepay0.GstPad:src: caps = video/x-h263, variant=(string)itu, h263version=(string)h263

/GstPipeline:pipeline0/GstRtpH263PDepay:rtph263pdepay0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998, payload=(int)96

/GstPipeline:pipeline0/GstRtpBin:rtpbin.GstGhostPad:recv_rtp_src_0_2499017657_96.GstProxyPad:proxypad3: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H263-1998, payload=(int)96

[INFO]    bitstreamMode 1, chromaInterleave 1, mapType 0, tiled2LinearEnable 0

/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:sink: caps = video/x-h263, variant=(string)itu, h263version=(string)h263

/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, crop-top=/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:sync_src: caps = application/x-rtcp

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:rtcp_sink: caps = application/x-rtcp

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:rtcp_src_-1795949639: caps = application/x-rtcp

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpJitterBuffer:rtpjitterbuffer0.GstPad:sink_rtcp: caps = application/x-rtcp

WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: A lot of buffers are being dropped.

Additional debug info:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:

There may be a timestamping problem, or this computer is too slow.

WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: A lot of buffers are being dropped.

Additional debug info:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:

There may be a timestamping problem, or this computer is too slow.

WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: A lot of buffers are being dropped.

Additional debug info:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:

There may be a timestamping problem, or this computer is too slow.

WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: A lot of buffers are being dropped.

Additional debug info:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:

There may be a timestamping problem, or this computer is too slow.

WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: A lot of buffers are being dropped.

Additional debug info:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:

There may be a timestamping problem, or this computer is too slow.

WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: A lot of buffers are being dropped.

Additional debug info:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:

There may be a timestamping problem, or this computer is too slow.

Caught interrupt -- handling interrupt.

Interrupt: Stopping pipeline ...

Execution ended after 8486669000 ns.

Setting pipeline to PAUSED ...

Running time 0:00:08.490778333 render fps 0.824

Setting pipeline to READY ...

/GstPipeline:pipeline0/GstUDPSink:udpsink0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:src: caps = NULL

/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/GstRtpH263PDepay:rtph263pdepay0.GstPad:src: caps = NULL

/GstPipeline:pipeline0/GstRtpH263PDepay:rtph263pdepay0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin.GstGhostPad:recv_rtp_src_0_2499017657_96: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin.GstGhostPad:send_rtcp_src_0: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpPtDemux:rtpptdemux0.GstPad:src_96: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpPtDemux:rtpptdemux0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpJitterBuffer:rtpjitterbuffer0.GstPad:sink_rtcp: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpJitterBuffer:rtpjitterbuffer0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpJitterBuffer:rtpjitterbuffer0.GstPad:src: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:rtcp_src_-1795949639: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:src_-1795949639: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:rtcp_sink: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:sink: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:send_rtcp_src: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:sync_src: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:recv_rtp_src: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin/GstRtpSession:rtpsession0.GstPad:recv_rtp_sink: caps = NULL

/GstPipeline:pipeline0/GstRtpBin:rtpbin.GstGhostPad:recv_rtp_sink_0: caps = NULL

/GstPipeline:pipeline0/GstUDPSrc:udpsrc0.GstPad:src: caps = NULL

Setting pipeline to NULL ...

Total rendered:7

Freeing pipeline ...

[--->FINALIZE v4l_sink

Outcomes