我在gstreamer中有以下管道设置:
来自两个独立usb音频接口的两个脉冲音频源(pulsesrc)和一个脉冲音频接收器(pulsesink)。我正在使用加法器组件组合两个传入的音频流。不幸的是,两个音频通道之间有一点延迟。在
pulsesrc1 --- queue --- audioconvert --- audioresample --- |
| adder --- queue --- | pulsesink
pulsesrc2 --- queue --- audioconvert --- audioresample --- |
我正在使用系统时间/时钟进行同步。两个音频接口都连接到同一个usb集线器。我猜音频在被信号源接收之前已经有了一点延迟(由于时钟不同)。在
这就是为什么我要引入延迟/间隔/偏移到第一个音频通道(第二个稍微滞后)来补偿这一点。在
到目前为止,我尝试设置第一个队列的属性“minthresholdtime”。不幸的是,管道补偿了这个延迟,两个音频流的延迟相等。我还检查了“audioecho”元素。不幸的是,它缺少“干/湿”属性。这意味着原始信号总是在它原来的时间播放,然后在那之后延迟尾声开始起作用(这对我没有任何帮助)。在
还有什么办法解决这个问题吗?也许能增加一点沉默?或者我可能丢失的其他参数。在
我已经用Python实现了这个管道。提前谢谢你!在
您可以使用队列中的最小阈值时间/字节来延迟通过管道的其余部分发送数据吗?我觉得应该行得通。只有在这种情况下:
http://gentrans.sourceforge.net/docs/head/gst-entrans-plugins/html/gst-entrans-plugins-shift.html
或者为音频修改frie0r延迟插件。在
相关问题 更多 >
编程相关推荐