[gst-devel] muxers, timestamps, sparse and continuous recordings

Andoni Morales ylatuya at gmail.com
Sat Sep 13 19:49:10 CEST 2008


hi,

I've been working on a dv capturer and I implemented the play/pause
recording doing the following:
When I decide to start the recording, I add the encodebin to the  main
pipeline and then I link it to the tee.
If you want to pause the encoding while previewing, unlink the encodebin,
remove it from the main pipeline and I set it in the paused sate. If you
want to restart the recording, readd it to the main pipeline and then relink
it to tee. Finally, to stop the recording, send and eos event to the
encodebin sink pad.
The recorded file have a continous stream.
Regards, Andoni Morales
2008/9/11 Stefan Kost <ensonic at hora-obscura.de>

> hi,
>
> Eric Zhang schrieb:
> > Hi, Stefan:
> >
> >     I think your pipeline is using GstSystemClock because you
> > mentioned the source is a live element. If it is, the clock will keep
> > increasing even if the pipeline is paused. This makes the timestamp
> > noncontinuous. To generate a continuous timestamp, I think you can try
> > to use the clock provided by your sink elements. Maybe this is not
> > easy because the live element is different with other source elements.
>
> I meant pausing as on the application level. The videosrc ! tee name=t !
> queue ! xvimagesink runs continously. It only t. ! queue ! encoder !
> muxer ! filesink that get paused.
>
> Stefan
>
> >
> > Eric
> >
> > 2008/9/10 Stefan Kost <ensonic at hora-obscura.de
> > <mailto:ensonic at hora-obscura.de>>
>  >
> >     hi,
> >
> >     i was wondering how muxers should handle timestamps on incoming
> >     buffers.
> >     Assume an applications that shows video from a camera. When you
> >     click a
> >     button it records to file, allowing to pause and unpause in
> >     between. The
> >     recorded file should have a continuous stream. If I don't do any
> >     special
> >     casing this is not the case.
> >
> >     1) When I playback the recorded file, I have an initial pause before
> >     video start (if I pressed record after two seconds, the video will
> >     start
> >     after two seconds).
> >
> >     2) If I pause in between, also in the playback there is a pause.
> >
> >     Right now I work around with a pad probe that looks at disconts to
> >     aggregate a time_stamp_offset and correct all incoming buffers by
> >     subtracting that. It works but probably is not the right way. I
> >     believe
> >     this involves the use of segments, but I am not sure how. Also both
> >     behaviors might be valid (having a sparse and having a continuous
> >     stream). So the application would somehow be involved to select the
> >     desired behavior. Any comments?
> >
> >
> >     Stefan
> >
> >
> >
> >
> -------------------------------------------------------------------------
> >     This SF.Net email is sponsored by the Moblin Your Move Developer's
> >     challenge
> >     Build the coolest Linux based applications with Moblin SDK & win
> >     great prizes
> >     Grand prize is a trip for two to an Open Source event anywhere in
> >     the world
> >     http://moblin-contest.org/redirect.php?banner_id=100&url=/
> >     <http://moblin-contest.org/redirect.php?banner_id=100&url=/>
> >     _______________________________________________
> >     gstreamer-devel mailing list
> >     gstreamer-devel at lists.sourceforge.net
> >     <mailto:gstreamer-devel at lists.sourceforge.net>
> >     https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> >
> >
> > ------------------------------------------------------------------------
>  >
> > -------------------------------------------------------------------------
> > This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> > Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> > Grand prize is a trip for two to an Open Source event anywhere in the
> world
> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> >
>
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20080913/2e84ceaa/attachment.htm>


More information about the gstreamer-devel mailing list