看板 Linux 關於我們 聯絡資訊
哈哈,大家不用這麼爆氣哦~輕鬆聊天不是很好嗎 www 首先,先來聊聊音訊的問題 確實從播放音訊檔案一直到從硬體輸出經過很多層有點令人詬病 不過到底有多少層呢? 早些年,許多的軟體都直接調用 ALSA(或是OSS) 的 API 來進行聲音的播放 不過很快的問題也漸漸浮現,像是最重要的混音問題 音效卡一次只能被一個程式佔用,如果該裝置或其驅動不支援多重輸出的話 於是 PulseAudio 就誕生了。。。 PulseAudio 致力於軟體混音,也有相對應的 API 可以被程式調用 但是不是所有的播放軟體(尤其是舊的)都有支援直接跟 PulseAudio 溝通 所以中間必須使用 libALSA 來將軟體做一個橋樑 PulseAudio 的核心稱作 server core, 它將很多東西集成起來,甚至可以再透過網路,與另一個 PulseAudio server 來溝通 這跟 X Server 的設計有相似之處,有 network transparency 的特性 最後這個 server core 再將混合好後的聲音利用 ALSA 或是 OSS 的驅動 將聲音送達到音效卡的手中 其實整個過程說繁複也沒有說有什麼特別累贅的地方 不過本人對 JACK 比較不熟,希望下一篇會是對 JACK daemon 處理音訊的簡說哦~ -- 作者 ruokcnn (Dean) 看板 Gossiping 標題 [問卦] 有沒有全世界只有華人覺得冰水不好的卦?
Owen93: 千萬不要空腹喝冰水 上次有人這樣做結果... 07/15 00:33
yclt: 就少了一杯冰水... 07/15 00:33
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.230.108.236 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1441018295.A.5D6.html ※ 編輯: Hazukashiine (36.230.108.236), 08/31/2015 18:51:49
kenduest: 之前使用時候有 esd 與 artsd 不知道現在發展如何了 08/31 18:59
aRTS 仍然要透過 libALSA 才能跟 PulseAudio 溝通 不過 ESD 比較麻煩一點,因本身就是 sound server 的概念, 必須透過 ESounD emulation protocol 才能跟 PulseAudio server core 連結 ※ 編輯: Hazukashiine (36.230.108.236), 08/31/2015 19:05:44
kira925: aRTS是說KDE3那個? 已經沒了阿... 08/31 19:43
是停止開發,但是還是可以透過 libALSA 哦,而且他的繼任者 Phonon 還很活躍
Bencrie: dmix dsnoop asym 手冊先讀一下 08/31 19:48
這三個 ALSA Plugins 也蠻常用的, 前兩個是半雙工的,前一個用來 playback,後一個用來 recording, 而最後一個 asym 屬於全雙工的設計,用來結合 dmix 跟 dsnoop 的 不過不是這篇的原本想表達的重點,也不是播放音訊必要的條件,所以就沒有列出來了 況且如果使用了 PulseAudio 的話,這三個插件也就不會被使用到, 也就是說 P.A. 取代了這三個插件原有的功能,並集合成一個較完整的環境。 ※ 編輯: Hazukashiine (118.167.200.237), 08/31/2015 20:26:52
POSIX: 印象中 pulseaudio 在很版本會有 CPU loading 很高的問題 08/31 21:41
POSIX: 後來引進 orc, 有人對這有研究嗎?http://goo.gl/2zyvLA 08/31 21:41
POSIX: 雖然說已經是5年前的「新」聞了 08/31 21:42
Bencrie: 內插法改成 hq sinc 的話 CPU 應該可以直接撐爆 XD 08/31 21:51
s9209122222: 所以我如果直接使用ALSA應該就是最好的吧? 09/01 00:29
Bencrie: 看需求。你要動態路由就裝 PulseAudio。 09/01 08:49
Bencrie: 要玩實況有 PA 會比較方便一點 09/01 08:50
Bencrie: 然後 userspace library 應該是叫 libasound 吧 09/01 08:53
kira925: Phonon是不一樣的東西阿...Phonon是包在Pulseaudio/ALSA 09/01 13:33
kira925: 上面的東西 09/01 13:33
嗯~是這樣的沒錯啊 www The idea behind Phonon started at aKademy 2004 in Ludwigsburg near Stuttgart (Germany), where a new multimedia API had to be chosen to replace aRts --- Wikipedia 是想要取代 aRts 而產生的產物。。。 ※ 編輯: Hazukashiine (111.243.60.166), 09/01/2015 14:02:53
HamalAri: 永遠支持 LADSPA ,pulseaudio 那種垃圾 lantency 09/01 14:39
HamalAri: 完全不能接受 09/01 14:39
HamalAri: 真玩音效,real time kernel + alsa + jackd 唯一選擇 09/01 14:41
mgdesigner: 關於jack,我覺得沒有做pro audio,其實是沒有必要啦 09/01 18:45
EdwardGJLee: pulseaudio的作者就是systemd 的作者。:p 09/01 19:39
kira925: 那是最專業的情況拉 一般情況下pulseaudio很夠用 09/01 20:30
Bencrie: PulseAudio 的 latency 還好吧,不用 rtkernel 也能 <1ms 09/02 01:49