[gst-devel] About appsink frames

Wes Miller wmiller at sdr.com
Thu Apr 29 14:12:11 CEST 2010

I have a nicely working gstparsed pipeline that is mostly this:

     gstoarse(  "souphttpsrc timestamp=true ! multipartdemux !
image/jpeg,width=640,height=480 ! matroskamux ! filesink" )

and I wasn't quite happy with this modification:  (see my previous append to
this forum).

      gstoarse(  "souphttpsrc timestamp=trye ! multipartdemux !
image/jpeg,width=640,height=480 ! matroskamux ! tee name=fred. ! queue !
filesink  fred. ! queue ! appsink" ).  With some stuf to catch the frames
and eos-es

In both cases these are in C/C++ code and I inject an eos to halt the
pipeline.  Stuff catches the apsink output.

So I decided to try this:

     gstoarse(  "souphttpsrc timestamp=true ! multipartdemux !
image/jpeg,width=640,height=480 ! matroskamux ! appsink" );  // note appsink
replaced filesink.

Now I made a do while not eos loop that catches every frame.

>From looking at the timestamp info in the frame I see that I get an
occasional bad timestamp (-1, I think)).  Where do these frames fome from? 
How Do I interpret them?

Also, if I stream all the frames into a file I get a container full of jpegs
with some stuff up front.  The file, however, won't play as a matroska file
(matroskademux ! jpegdec ! ppmpegcolorspace ! autovideosink).

So, how does saving the frames out of matroskamux this way differ from
filesink?  Is there something I need to know to add or throw away?

Many thanks,


View this message in context: http://gstreamer-devel.966125.n4.nabble.com/About-appsink-frames-tp2075355p2075355.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

More information about the gstreamer-devel mailing list