[gst-devel] Conditional linking of audiosink element in pipeline

Stefan Kost ensonic at hora-obscura.de
Fri Feb 26 08:25:40 CET 2010


Am 24.02.2010 14:34, schrieb Babineau, Denis:
> Hi,
> 
>  
> 
> I’m building the following pipeline with the decodebin element (I’m not
> using playbin because the src may change):
> 
>  
> 
> filesrc -> decodebin <sig> videosink <sig> audiosink
> 
>  
> 
> Where videosink and audiosink are connected via the pad-added signal of
> decodebin. Videosink and audiosink are bins containing the following
> elements respectively:
> 
>  
> 
> ffmpegcolorspace -> customvideosink
> 
>  
> 
> queue -> audioconvert -> customaudiosink
> 
>  
> 
>  
> 
> I add all the elements to the pipeline, then link (except what gets
> linked by signals), then I set the state to playing. This works when I
> play a video with audio, but if the video doesn’t contain an audio
> stream, it seems that the pipeline stalls, if I don’t add the audiosink
> elements to the pipeline it works. I’m assuming I have to somehow add
> the audiosink elements to the pipeline on the fly? What is the proper
> way of doing this? It seems I can’t just add the elements on the fly in
> the signal handler while the state is playing?


you can't have unlinked element in the pipeline in most cases (having a passive
element e.g. volume would be okay). I can recommend two things:

1) add & link the elements as needed
2) add the elements as you do, but use gst_element_set_locked_state on the
unused ones and keep them in NULL/READY. You would unlock the state and sync the
staten when you use them.

Stefan


> 
>  
> 
> Thanks
> 
> Denis
> 
> CONFIDENTIALITY NOTICE: The contents of this email are confidential
> and for the exclusive use of the intended recipient. If you receive this
> email in error, please delete it from your system immediately and 
> notify us either by email, telephone or fax. You should not copy,
> forward, or otherwise disclose the content of the email.
> 
> 
> 
> ------------------------------------------------------------------------------
> Download Intel&#174; Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> 
> 
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel





More information about the gstreamer-devel mailing list