AW: video timeline

Christian Sell christian at gsvitec.com
Thu Apr 23 04:13:21 PDT 2015


Hello Olivier,

merci beaucoup, I will look into your app.

Thanks again,
Christian

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel [mailto:gstreamer-devel-bounces at lists.freedesktop.org] Im Auftrag von Olivier Aubert
Gesendet: Mittwoch, 22. April 2015 20:14
An: Christian Sell; Discussion of the development of and with GStreamer
Betreff: Re: video timeline

Hello

I have implemented this in the Advene application (python/gtk app, see www.advene.org ). For this, I implemented a snapshotter module. It is a standalone pipeline with a playbin and a pngenc, that takes timestamps as parameters, reorders them to minimize random seeks, and fetches screenshots.
The module is used throughout the application (timeline, illustrating
snapshots...) and is independant from the main app (no app dependency), so you can reuse it as is if you want.

You can find the app at www.advene.org and the module itself at https://github.com/oaubert/advene/blob/master/lib/advene/util/snapshotter.py
and if it does not suit you, at least it validates the approach.

Cheers,
Olivier

On Thu, 2015-04-16 at 22:18 +0200, Christian Sell wrote:
> Hello,
>   
> I am about to implement a video player which also requires a timeline.
> The timeline consists of video frames picked from the underlying media 
> with an arbitrary timeline resolution, which are displayed as images 
> in a horizontal list. By timeline resolution I mean the number of 
> frames which are picked from the media, ranging fom, say, all frames 
> to one frame per minute (this can change dynamically via timeline 
> zoom). While the video is playing back, the current timeline frame 
> should be highlighted (of course, a reasonable ratio between playback 
> speed and timeline resolution has to be maintained - running a 1:1 
> resolution timeline at full speed makes no sense)
>   
> Only a certain number of timeline frames will be requested at one time 
> (roughly 3 * the number of frames that fit in a horizontal timeline 
> bar). This "timeline window" will shift along the playback direction, 
> with a threshhold mechanism that delays shifts (and thus reloads).
>   
> At this point I should mention that I am a GStreamer novice. What I am 
> looking for is an intelligent way to perform this timeline handling 
> which minimizes overhead. The idea would be to maintain 2 separate 
> pipelines - one for playback and one for timeline retrieval. Is that a 
> feasible approach? Does anyone have any useful hints how to tackle 
> this?
>   
> thanks,
> Christian
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
gstreamer-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list