🎵
spotifydで音が出ない問題を解決する
使用環境
- Ubuntu 24.04
- Raspberry Pi 5 8GB
- spotifyd 0.3.5
- USB にオーディオインターフェースを接続している
- pulseaudio は使っていない
spotifyd の設定は以下の通り。
cat ~/.config/spotifyd/spotifyd.conf
[global]
#ログインに必要な情報
username = "トークン"
password = "パスワード"
#音声出力の設定
backend = "alsa"
#device = "default"
#mixer = "PCM"
#volume-control = "alsa"
#Spotifyの設定
device_name = "koneko-rasp"
bitrate = 320
volume-normalisation = false
normalisation-pregain = -10
#キャッシュの設定
cache_path = "/home/koneko/.cache/spotifyd"
no_audio_cache = false
問題
spotifyd を使って音楽を再生しようとしたところ、音が出ない問題が発生した。
journalctl -n 50
でデーモンのログを確認したところ、以下のエラーメッセージが表示されていた。
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib confmisc.c:855:(parse_card) cannot find card '0'
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib conf.c:5204:(_snd_config_evaluate) function snd_func_card_inum returned error: No such file or directory
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib confmisc.c:422:(snd_func_concat) error evaluating strings
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib conf.c:5204:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib confmisc.c:1342:(snd_func_refer) error evaluating name
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib conf.c:5204:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib conf.c:5727:(snd_config_expand) Evaluate error: No such file or directory
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: ALSA lib pcm.c:2721:(snd_pcm_open_noupdate) Unknown PCM sysdefault
Jul 06 11:04:10 koneko-rasp spotifyd[7190]: Audio Sink Error Connection Refused: <AlsaSink> Device default May be Invalid, Busy, or Already in Use, ALSA functi>
Jul 06 11:04:10 koneko-rasp systemd[1]: spotifyd.service: Main process exited, code=exited, status=1/FAILURE
Jul 06 11:04:10 koneko-rasp systemd[1]: spotifyd.service: Failed with result 'exit-code'.
aplay -l
でオーディオデバイスを確認したところ、以下のように表示された。一番上のデバイスが USB オーディオインターフェースなので、ラズパイに認識はされているようである。
sudo aplay -l
[sudo] password for koneko:
**** List of PLAYBACK Hardware Devices ****
card 0: Device [USB Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
機器を再起動したり、シャットダウンしてからしばらく置いて起動したりしてみても、音が出ない問題は解決しなかった。また、spotifyd の再起動(systemctl restart spotifyd.service
)をしても解決しなかった。
解決方法
sudo aplay -D plughw:0,0 /usr/share/sounds/alsa/Front_Center.wav
で試しに音を鳴らしてみたところ、音がでた。その後、Spotify のクライアント側から音楽を再生すると、音が出るようになった。原因は謎。
Discussion