Video stream timestamps problem!
Tim-Philipp Müller
t.i.m at zen.co.uk
Wed Dec 12 06:21:21 PST 2012
On Wed, 2012-12-12 at 12:05 +0000, Tarek El-Sherbiny wrote:
Hi,
> In this scenario a live stream from IP camera is displayed on HDMI TV
> using embedded system.
> OS = Linux - CPU = i.MX6 ARM - Gstreamer =0.10.36
> The problem is the decoder is dropping buffers because of timestamping
> problem. So the video is not smooth and what is being played is a
> breaking sequence of frames as if the iframe alone is being displayed
> and everything else is dropped.
>
>
> I'm using ffmpeg to demux the frame which gives me ffmpeg packet then
> memcpy the packet date to GST_BUFFER.
>
> Appsrc is used to inject the buffer date into Gstreamer pipeline. Here
> is my pipeline:
> app-source | typefinder | vpu-decoder | mfw_v4lsink-sink
>
> Debug messages:
> :00:16.732445169 1660 0x3465baf0 INFO vpudec
> vpudec.c:1512:gst_vpudec_chain: Got no disp information!!
> 0:00:16.732541335 1660 0x3465baf0 INFO vpudec
> vpudec.c:1551:gst_vpudec_chain: Got not enough input message!!
> 0:00:16.762768835 1660 0x3465baf0 WARN basesink
> gstbasesink.c:2875:gst_base_sink_is_too_late:<video-sink> warning: A
> lot of buffers are being dropped.
> 0:00:16.762866002 1660 0x3465baf0 WARN basesink
> gstbasesink.c:2875:gst_base_sink_is_too_late:<video-sink> warning:
> There may be a timestamping problem, or this computer is too slow.
>
> My question is how do I extract the PTS and pass this information to
> the decoder?
I don't know much about the elements involved, but:
Try setting the "do-timestamp" property on appsrc to TRUE, maybe also
set "format" to GST_FORMAT_TIME, "is-live" to TRUE and "max-latency" to
something suitable.
You can set "sync" to FALSE on the sink to test if that's likely to be
the problem (that's not an actual solution though, just for
diagnostics).
Cheers
-Tim
More information about the gstreamer-devel
mailing list