
如何使用 jack 運行 sox,以便 sox 獲取來自 jack 的輸入,執行某些操作(在我的情況下為低通濾波器)並將處理後的流輸出到 jack。
sox foo.wav bar.wav lowp 1000.0
將接受輸入 wav 並輸出到另一個 wav,但我需要如下所示的內容:
sox JACK_INPUT JACK_OUTPUT lowp 1000.0
我可以使用 jack 將任何聲音來源連接到 JACK_INPUT,並將 sox 已套用低通濾波器的 JACK_OUTPUT 連接到 jack 處理鏈中的任何其他連接埠。
如果不可能,我們將不勝感激任何替代建議的幫助。請注意,該解決方案需要能夠與 Linux 上的 jack 配合使用,允許低通/高通濾波,最好是雙二階濾波器,例如 sox。如果連接可以唯一命名,以便腳本可以為每個發言者啟動單獨的過濾器,則可以獲得獎勵點。
提前謝謝了。
答案1
SoX 沒有 JACK 驅動程式。寫一個並不會太困難,但由於 SoX 的架構,延遲總是高於嚴格需求的延遲。
如果您只需要簡單的 IIR 濾波,只需使用 LADSPA 主機,例如傑克架以及合適的插件,例如馬蒂亞斯·納戈爾尼 (Matthias Nagorni) 的作品或buttlow_iir
/butthigh_iir
等來自史蒂夫哈里斯的收藏。