python - GStreamer: Introduce delay/gap/shift to audio -


i have following pipeline setup in gstreamer:

two pulse audio sources (pulsesrc) 2 seperate usb audio interfaces , 1 pulse audio sink (pulsesink). i'm combining 2 incoming audio streams using adder component. unfortunately there slight delay between 2 audio channels.

pulsesrc1 --- queue --- audioconvert --- audioresample --- |                                                            | adder --- queue --- | pulsesink pulsesrc2 --- queue --- audioconvert --- audioresample --- | 

i'm using system time/clock syncing. both audio-interfaces connected same usb-hub. i'm guessing audio has slight delay before gets picked sources (due different clocks).

this why i'd introduce delay/gap/shift first audio channel (the 2nd lags behind) compensate that.

so far tried setting property "min-threshold-time" of first queue. unfortunately pipeline compensates delay , both audio streams equally delayed. i've checked out element "audioecho". unfortunately missing "dry/wet" property. means original signal gets played @ original time , after delay tail kicks in (which not me @ all).

any further ideas how solve problem? maybe adding gap of silence? or other parameters might have been missing.

i've implemented pipeline using python. thank in advance!

you can use min threshold time / bytes in queue delay sending data on rest of pipeline? think should work. if not go this:

http://gentrans.sourceforge.net/docs/head/gst-entrans-plugins/html/gst-entrans-plugins-shift.html

or modify frie0r delay plugin audio.


Comments