"hot-linking" audioecho into pipeline results in silence for a period

Stefan Sauer ensonic at hora-obscura.de
Fri Jan 9 11:52:56 PST 2015


On 01/09/2015 12:37 AM, Charlie FG wrote:
> Good day/night one and all!
>
> Have just subscribed to the mailing list. I am thoroughly enjoying my
> foray into gstreamer, it's a very nice framework. However, still getting
> to grips with it.
>
> I am currently having a little issue and hoping someone has some
> pointers. The direction I've gone, I've had to venture into the realm of
> dynamically altering pipelines. So far, I have implemented pipeline
> classes for "hot-linking" arbitrary elements on a pipeline that is in a
> PLAYING state. I used the 'changing pipelines dynamically' tutorial as a
> reference, so blocking and unblocking probes on pads. The difference in
> this is I am _not_ sending an EOS since I have a 'queue' setup just
> before the 'alsasink', giving it an amount of flexibility in the latency
> to (in theory) seamlessly add the elements. In practise, it _does_ work
> if I just hot-link 'audioconvert' elements between the decoder and
> queue.
>
> Here's the issue -
>
> I place 'audioecho' element (already linked between two 'audioconvert'
> elements) into the pipeline but 3500 milliseconds after it has switched
> to PLAYING ... It does work but with a major drawback - there is silence
> for ~3500ms (once the 'queue' has expended it's buffers). If I change
> the time of the hot-linking event to, say, 12000ms it will be silent for
> ~12000ms; once it has seemingly caught up, it will play from the point
> the 'audioecho' was linked in, with the echo active.
It's an filter element that does transform inplace - that is the output
buffers have the same metadata is the inputs. Is your code public,
seeing it might help, this sounds a bit like as if the new elements are
not properly setup in terms of the playback segment.

Stefan

>
> I have spent a fair number of hours searching the 'net, reading manuals
> and looking through logs (including the daunting 50MiB/s setting-5 debug
> logs! haha). I haven't seen much of a hint about what's going on, but I
> probably don't know what to look for. It just seems the whole stream
> starts again from the beginning but doesn't output anything until it has
> caught up with a clock somewhere. Am I doing something wrong or am I
> simply doing something that won't work but am inexperienced and can't
> see why?
>
> Thank you for any help,
> Charlie FG
>
> Reference of pipeline before and after hot-linking:
>
> -> filesrc | flacparse | flacdec | queue | alsasink <)))
>
> -> fs | fp | fd | audioconvert | audioecho | audioconvert | q | as <)))
> _______________________________________________
> 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