seek video with very low framerate

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

seek video with very low framerate

FastRidingZebra
Hy,

I´m trying to seek a video with a very low framerate of 1/1.
Im doing a simple time seek with seconds but somehow the seek seems to work only every now and then.
Only at some Seconds the seek works and every other second my video jumps back to second 0.
seek-function is returning true on every seek.

Thx for help
Reply | Threaded
Open this post in threaded view
|

Re: seek video with very low framerate

Tim-Philipp Müller-2
On Tue, 2012-02-14 at 06:42 -0800, FastRidingZebra wrote:

> I´m trying to seek a video with a very low framerate of 1/1.
> Im doing a simple time seek with seconds but somehow the seek seems to work
> only every now and then.
> Only at some Seconds the seek works and every other second my video jumps
> back to second 0.
> seek-function is returning true on every seek.

Not a lot of information here. What container format? What video codec?
Are you doing a KEY_UNIT seek or an ACCURATE seek or neither? etc..

Cheers
 -Tim

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: seek video with very low framerate

FastRidingZebra
Hy Tim,

my container is oggmux and my codec is theoraenc.
I´m using gstreamer-java they have a simple seek function ( http://code.google.com/p/gstreamer-java/source/browse/trunk/gstreamer-java/src/org/gstreamer/Pipeline.java?r=307 ),
which oly requires Time and TimeUnit, so I dont really know if KEY_UNIT or ACCURATE is used in background.

If I use this seek function with a video with a framerate of 30/1, seeking works well.

Thanks for your help.
Reply | Threaded
Open this post in threaded view
|

Re: seek video with very low framerate

FastRidingZebra
After taking a second look at the Java Code this is how they seek:

seek(1.0, Format.TIME, SeekFlags.FLUSH | SeekFlags.KEY_UNIT,
            SeekType.SET, TimeUnit.NANOSECONDS.convert(time, unit),
            SeekType.NONE, -1);