How to change framerate in REALTIME when video is PLAYING?
olivier.aubert at liris.cnrs.fr
Thu Mar 10 01:32:45 PST 2011
Another way is to send an appropriate event (through event_new_seek)
specifying the rate as parameter. See for instance the set_rate() method
On Thu, 2011-03-10 at 09:58 +0100, Andrey Nechypurenko wrote:
> Hi Tom,
> > I use
> > gst-launch filesrc "location=video/1.MPG" ! decodebin ! videorate !
> > video/x-raw-yuv, width=640,height=480,framerate=25/1 ! ffmpegcolorspace !
> > jpegenc ! multipartmux ! tcpserversink host=192.168.2.1 port=$portNumber
> > to stream a video and can change the video frame rate in this way.
> > But in this way the frame rate is fixed (i.e., framerate=25/1 here).
> > I want to change the framerate in REALTIME when video is PLAYING ---
> > during the streaming of this video, I can change the framerate anytime I
> > want.
> Then you need to modify the pipeline from your application. In
> particular, you need to adjust the caps filter. Here you can find an
> example how to do it:
> It changes width and height property of the named (qos-caps) caps
> filter by pausing the videoscale element in front of it, updating
> width and height properties and then un-pausing the videoscale. So in
> your case you can update the framerate property. However, as Kapil
> pointed out to work properly, the downstream elements should be able
> to re-negotiate the new format.
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
More information about the gstreamer-devel