The setup is the following:
rootfs built with yocto daisy, and MACHINE is imx6dlsabresd.conf, linux kernel is 3.10.53.
I have to use gstreamer-0.10.
I try to use gstreamer to watch french TNT télévison via multicast (throught Anevia IP TV server in local network).
At a moment during the playing, I get a black screen (during about 3 seconds) and after, the video frame rendered is around 1 fps (during about 2 seconds) whith this logs:
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:
/data/freescale/build/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/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.
I recorded the UDP stream when this problem appear and it's possible to reproduce like this:
The link to download the stream recorded: dump_TV_stream.raw - Google Drive
And the Gstreamer pipeline:
gst-launch filesrc location=dump_TV_stream.raw ! flutsdemux ! vpudec ! imxv4l2sink
I think the problem is coming from the MPEG Transport Stream but I don't know how to analyze it.
I would like to make a pipe gstreamer more convenient for this kind of messy stream. Do you have any idea ?