發佈日期: 發佈留言

一般桌面程式如何使用到JACK的好處

我們知道Jack 音訊機制有很多好處,在DAW應用程式內部才能做的音訊繞接在整個作業系統裡面直接就可以作了,然而遇到不支援JACK的應用程式怎麼辦呢?本文用簡單的教學來示範。

我們以這個範例來探討:使用 OBS-studio 直播時,要如何「放送」出我們想要播的軟體音源的聲音呢?

首先,OBS-studio 的界面上,在音效混音器裡面,可以看到這樣裡面的我們要留意的是「麥克風/輸入音效1」,由於OBS-studio不用使用jack的,而是使用pulseaudio 或者pipewire

用Catia看JACK導線繞接

ww

在JACK裡面,我們可以看到OBS-studio 可以收到麥克風的音,其實是系統的capture_1/2 接到PulseAudio JACK Source 的左右聲道,然後PulseAudio內部再把聲音送進OBS-studio 。所以,我們如果把它們間的連線斷開

OBS-studio 就收不到麥克風來的訊號了。嘿,這邊我們就可以想到,換句話說,只要我們有軟體的聲音想要轉送給OBS-studio,最後直播時把聲音放送出去的話我們只要能把訊號繞接到 PulseAudio Jack Source ,就可以了,對吧?是的就是如此。

比方說,我們想要直播自己彈琴好了,使用的是Yoshimi 軟體音源

Yoshimi啟動時,你會看到他只有一對聲音訊號送到 實體系統硬體輸出(system),我們拉線接到 PulseAudio JACK Source這樣聲音訊號就送進Pulseaudio JACK Source , 所以在OBS-Studio 就有訊號了,這邊特別要提一下,上圖可以看到yoshimi 到system 的繞接並沒有切掉,這是為了讓我們仍然可以監聽實際Yoshimi 發出的聲音

同樣的,我們就可以聯想到….瀏覽器也是走Pulseaudio對吧?所以在Google meet 之類的,我自己講話的聲音不就也可以??

是的,例如說你想要讓同事或者同學聽到你的聲音像是天使還是恐怖大王的話,你就可以好好大搞特搞囉。例如說這個範例:

首先利用Carla 掛起 Tal reverb 3這個效果器,這麼作是讓效果器插件變成像獨立的程式運作

然後我們就可以在JACK 虛擬導線繞接的前端來進行操作系統硬體實體收音送到 TAL-Reverb-III 再接進 PulseAudio,就完成了 ,這樣一來你使用google meet,他人聽到你講話就是餘音繚繞囉…..

不過你可能會發現「我自己聽不到」啊?

因為你沒有把Tal-Reverb-III 接到 System 自己監聽囉,不過…這裡有一個but…..如果你使用的是筆電自身的麥克風播放的又是筆電的喇叭的話,可是一接上馬上就會開始巨大的迴授(很尖銳的”ㄍㄧ”~~~~~~~)喔,所以請預先戴上能隔音的耳機,OK 你美妙的餘音繞樑的美聲音就可以在耳機裡面聽得一清二楚囉。

順便附上在Qjckctl裡面看到的傳統式繞接圖(Qjckctl 新版現在也預設新的元件式繞接圖了)

(左邊是訊號輸出的端點,右邊是訊號輸入的街口)

最後當然你發現了,JACK打破傳統非音樂專業程式不能「變造」系統麥克風來的聲音的限制,例如說在Windows 上,你想要讓自己在遠端會議蒙面可以,但是要變聲就有點困難了,不買外接硬體就辦不到,然而Linux+JACK下,我們可以輕易的「攔截」麥克風訊號,即時”hack”過,再繞接到一般通訊軟體把聲音送出去,就達成了。

發佈留言