2008年8月14日 星期四

alsa default sound card select


是說,在同時有外接與內建音效卡時,想要選擇外接卡為預設輸出裝置;pulseaudio 會保證在開機時若偵測到外接則自動選為預設,但 alsa 系統沒有。##ReadMore##

據此 url 的說法,聲卡會在開機時被 udev 偵測到並從 0 開始編號,但其順序是不規則的,而 alsa 會自動選編號最小的預設輸出。也就是無法保證開完機後 alsa 會選哪個輸出…

其解法有二,一是定制 udev rule ,但此法必需在裝置路徑(PC上的第二個 USB port→某牌hub 的第一個洞→音效卡) 完全相同才能順利指定編號,而且煩瑣。

第二個則靠編輯 /etc/asound.conf 來完成,大概是最簡單指定預設 alsa 裝置的方法,配合簡單的 shell script 管理即可。

要填寫的裝置名稱可以用指令「aplay -l」查看,如像這樣一行:

card 1: PCM2702 [Burr-Brown Japan PCM2702], device 0: USB Audio [USB Audio] 則是 PCM2702;而最簡單的 asound.conf 寫法可以這樣: pcm.!default { type hw; card PCM2702 } ctl.!default { type hw; card PCM2702 }

  • 後面的 usermap 設定又太累人了,因此個人不使用。
  • wine 不會理這個設定,依然固我地用 card0 在 wine 1.x.x 之後已修正此問題

沒有留言:

張貼留言