shmsrc/shmsink plugin

Pazzo Da Legare pazzodalegare at gmail.com
Tue Mar 6 07:51:48 PST 2012


Hi Jan,

Thank you for your advice. I would like to use the shared memory
because I want to decode once and use decoded frame from different
application, dynamically added application.

pz

2012/3/6 Jan Spurný <JSpurny at seznam.cz>:
> Hi,
>
> just an idea - maybe you can try a different approach: forget about shared memory and just split the decoded stream using "tee" element, place a queue in each tee branch (which makes it run in separate thread) and you can do whatever you like in each branch..
>
> sincerely,
> Jan Spurny
>
>> ------------ Původní zpráva ------------
>> Od: Pazzo Da Legare <pazzodalegare at gmail.com>
>> Předmět: Re: shmsrc/shmsink plugin
>> Datum: 06.3.2012 10:40:20
>> ----------------------------------------
>> Could you please help me?
>>
>> 2012/2/21 Pazzo Da Legare <pazzodalegare at gmail.com>:
>> > I'm trying to use shmsrc/shmsink to decode a video source once and use
>> > decoded video from many application so I start testing the plugins
>> > using videotestsrc to produce a test stream and many consumer to
>> > receive it
>> >
>> >
>> > Producer:
>> > gst-launch videotestsrc ! shmsink socket-path=/tmp/dudda
>> > shm-size=10000000 wait-for-connection=false preroll-queue-len=5
>> >
>> > Consumers:
>> >
>> > gst-launch shmsrc socket-path=/tmp/dudda !
>> > "video/x-raw-yuv,format=(fourcc)YUY2, color-matrix=(string)sdtv,
>> > chroma-site=(string)mpeg2,width=(int)320, height=(int)240,
>> > framerate=(fraction)30/1" ! autovideosink
>> >
>> > But when I start the fifth (sometimes the forth) consumer I ran into
>> > problem: which are the limitation of shmsrc, I wonder the use of a
>> > global lock.
>> >
>> > The message I got is:
>> >
>> > gst-launch shmsrc socket-path=/tmp/blah !
>> > "video/x-raw-yuv,format=(fourcc)YUY2, color-matrix=(string)sdtv,
>> > chroma-site=(string)mpeg2,width=(int)320, height=(int)240,
>> > framerate=(fraction)30/1" ! autovideosink
>> > Setting pipeline to PAUSED ...
>> > Pipeline is PREROLLING ...
>> > ERROR: from element /GstPipeline:pipeline0/GstCapsFilter:capsfilter0:
>> > Filter caps do not completely specify the output format
>> > Additional debug info:
>> > gstcapsfilter.c(392): gst_capsfilter_prepare_buf ():
>> > /GstPipeline:pipeline0/GstCapsFilter:capsfilter0:
>> > Output caps are unfixed: EMPTY
>> > ERROR: pipeline doesn't want to preroll.
>> > Setting pipeline to NULL ...
>> > Freeing pipeline ...
>> >
>> > Any clue?
>> >
>> > Maurizio
>> _______________________________________________
>> 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