Videotestsrc as the fallback source in gnonlin

Ralph ralph.gucwa at racelogic.co.uk
Wed Mar 16 11:38:46 UTC 2016


I have a gnonlin composition with a few video files played in sequence, but
with short gaps between them filled with snow.

The video sources for a gnlcomposition may look like that:
- gnlurisource (start=0, duration=30, uri=file1.avi, priority=100)
- gnlurisource (start=32, duration=30, uri=file2.avi, priority=101)
- videotestsrc (expandable=true, pattern=snow, priority=uint.MaxValue)
In the above example the first file should play for 30s, then 2s of snow and
then the second file for 30s.

It was working reliably with the historic GStreamer 0.1.

When I tried to achieve the same with GStreamer 1.4.x, 1.6.x (or even
1.7.90), I noticed that playback pauses when switching to snow.  The length
of that unexpected pause depends on how far into the timeline we are:
- if the first file is just 1s long, it plays smoothly through the gap.
- if the first file is 5s long, it pauses for over 1 second before
continuing with a few remaining frames of snow and the second file (it
catches up with the timeline)
- if the file is 1hour long it pauses for about 15 minutes!!!

If I use a gnlurisource playing another video file in the gap instead of
videotestsrc, it plays smoothly.

There is no problem if I clearly define the beginning and length of the
snow, but when videotestsrc is defined as "expandable" (takes up the whole
length of the timeline), then when switching to it, it has to generate all
the frames since the beginning until it finds the frame it is supposed to
generate and then it continues with the playback (that's what I suspect may
be happening, the real cause may be different).

Has anyone seen that behaviour? Any suggestions how to find out exactly
what's going on?



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Videotestsrc-as-the-fallback-source-in-gnonlin-tp4676377.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list