Raspberry Piで内蔵オーディオが認識されていないときにPdでUSB-DACから音を出す。

手持ちのRaspberry Pi 3が、内蔵オーディオ(3.5mm, HDMIともに)認識していない状態で、PlugableのUSB-DACを通じてPd-extendedの音をだす方法のメモ。

plugableのDAC
dac

もともとの僕のR Pi3 (DAC未装着)はこんな感じ

aplay -l
aplay: device_list:268: no soundcards found...

なぜか内蔵オーディオも認識されていません。いつかmodprobe当たりの設定をいじってしまったのでしょう…

DAC装着後

aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Device [USB Audio Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

こうなりました。usb-dacのdeviceが0ですね。普通は内蔵オーディオが0,1とかに来るはずなんですけど。

sudo emacs /usr/share/alsa/alsa.conf

defaults.ctl.card 0    #68行目あたり                                                                                         
defaults.pcm.card 0 

alsa.confはそのまま。

aplay /usr/share/sounds/alsa/Front_Left.wav

DACから鳴ります。

Pdをシェルから実行します。

pd-extended -alsa -nogui -audioindev 0 -audiooutdev 0 sample.pd 

-audioindev 0 -audiooutdev 0の数字をaplay -lで出てきたdevice番号に合わせればいいってことですね。いままでは0ではなく3で実行していました。わかりませんが普通はそうなのでしょう。

よくわかってなかったので微妙に泥沼化しました。