[gst-devel] pausing parts of a pipeline (example)

Stefan Kost ensonic at hora-obscura.de
Sat Sep 3 04:24:05 CEST 2005


hi again,

aboute the element_bypass,  what about having fan_out/in elements that
have a 'port' property that denotes the active pad. wern't there
something like this in 0.8?

src -> fan_out -> fx -> fan_in -> sink
               `------^

Is gst_pad_set_active() the thing to call to (de)activate a pad? After
reading the docs I am ususure about this.

Some notes:
* 'fx' can be a series of elements
* if needed there will be conversion-elements between fan_out/in
* I don't want the elements between deactivated poad to be scheduled at
all (they will be paused)

Doing all this requires several atomic operations. Whick lock should I
have a look at.
* setting the two 'port' properties of the fan_out/in
* pausing some elemente
* setting paused elements back to playing and update their streamtime to
be in sync with the pipeline (needed for sources)
All this needs to happen without the pipeline-scheduling to interfere.

Stefan

>hi all,
>
>I am trying to pause parts of my pipeline, by settting the elements to
>paused. Still they prouce sound. Any ideas what I am doing wrong?
>
>What I want to achive (apart from muting elements) is also to bypass
>elements:
>src -> tee -> fx -> adder -> sink
>           `- id -^
>
>normally the identity elem would be paused, when bypassing, the fx would
>be paused.
>
>Finally is it possible to do connects/disconnects in gst-0.9 while
>pipeline plays. I'd like to allow the user to add, remove elements to a
>song and link/unlink them while the song e.g. plays in a loop.
>
>Stefan
>  





More information about the gstreamer-devel mailing list