create a video with tag on each jpeg

Stefan Kost ensonic at hora-obscura.de
Thu May 5 12:03:41 PDT 2011


Am 05.05.2011 20:14, schrieb Mailing List SVR:
> Il giorno gio, 05/05/2011 alle 13.34 -0300, Thiago Sousa Santos ha
> scritto:
>> On Thu, 2011-05-05 at 18:13 +0200, Mailing List SVR wrote:
>>> Hi,
>>>
>>> I would like to record a live video (mjpeg) and add a tag on each jpeg
>>> image, I'm trying a pipeline like this:
>>>
>>> gst-launch-0.10 -e -t http://192.168.2.17/moxa-cgi/mjpeg.cgi !
>>> jpegparse ! taginject tags="comment=\"test image\"" ! jifmux ! avimux !
>>> filesink location=/tmp/test.avi
>>>
>>> this give the following output:
>>>
>>> mpostazione della pipeline a PAUSED ...
>>> La pipeline è in PREROLLING ...
>>> TAG TROVATO    : trovato dall'elemento "taginject0".
>>>         commento: test image
>>> La pipeline è in PREROLLED ...
>>> Impostazione della pipeline a PLAYING ...
>>> New clock: GstSystemClock
>>>
>>>
>>> and when I play the generated file only a tag is generated and it is on
>>> avidemux and not on the jpeg images:
>>>
>>> gst-launch-0.10 -t filesrc location=/tmp/test.avi ! avidemux ! jpegdec !
>>> xvimagesink
>>> Impostazione della pipeline a PAUSED ...
>>> La pipeline è in PREROLLING ...
>>> TAG TROVATO    : trovato dall'elemento "avidemux0".
>>>      codec video: Motion JPEG
>>> TAG TROVATO    : trovato dall'elemento "avidemux0".
>>>         commento: test image
>>> formato contenitore: AVI
>>> La pipeline è in PREROLLED ...
>>> Impostazione della pipeline a PLAYING ...
>>>
>>> any hints?
>>
>> Here's some tips on debugging it:
>>
>> Drop avimux from the recording pipeline and use multifilesink to save
>> each image to a different file, then check if the individual jpegs have
>> the tag.
> 
> with this pipeline:
> 
> gst-launch-0.10 -e -t http://... ! jpegparse ! taginject tags="comment=
> \"test image\"" ! jifmux ! multifilesink location=%02d.jpg
> 
> each image has the tag, do you know a way to mux the image with the tag?
> 
> I tryed:
> 
> gst-launch multifilesrc location=%02d.jpg
> caps="image/jpeg,framerate=5/1,width=352,height=288,pixel-aspect-ratio=1/1" ! videorate ! image/jpeg,framerate=5/1 ! avimux ! filesink location=test.avi
> 
> but after the muxing the tag is in the avi container and not in the
> jpegs? Am I missing something?

Yes, as thiago said, add jpegparse in the playback pipleine. Otherwise you only
get the tags from the avi-container and those that jpegdec finds.

Stefan

> 
> Reading the docs:
> 
> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-tags-write.html
> 
> "A nice extra feature in GStreamer tag support is that tags are
> preserved in pipelines"
> 
> this doesn't seems true with the posted pipelines,
> 
> thanks
> Nicola
> 
> 
>>
>> Also, try adding jpegparse on the playback pipeline and check if it
>> finds those tags, not sure of the tag reading capabilities of jpegdec.
>>
>> Good luck :)
>>
>>>
>>> thanks
>>> Nicola
>>
>> --
>> Thiago
>>
>>>
>>> _______________________________________________
>>> 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
> 
> _______________________________________________
> 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