Closed Rafaeltheraven closed 2 years ago
It broke for me as well (after installing updates).
After messing around a bit, changing my audio_output
type
from alsa
to pulse
fixed it for me, however you don't seem to even have an audio output configured in the first place..?
I'm running Pipewire on arch btw™ as well.
Here is my working config:
.config/mpd/mpd.conf
``` db_file "~/.local/share/mpd/database" log_file "~/.local/share/mpd/log" music_directory "~/mus" playlist_directory "~/.local/share/mpd/playlists" pid_file "~/.local/share/mpd/pid" state_file "~/.local/share/mpd/state" sticker_file "~/.local/share/mpd/sticker.sql" auto_update "yes" bind_to_address "[::]:6600" bind_to_address "~/.local/share/mpd/mpd.sock" restore_paused "yes" max_output_buffer_size "16384" audio_output { type "pulse" name "Pipewire Playback" } audio_output { type "fifo" name "Visualization" path "/tmp/mpd.fifo" format "44100:16:2" } ```
Hope this helps!
AFAIK you don't have to specify an output, it can autodetect one (alsa in my case). I had the same problem when using pulse as an output, but I'll have a look at your conf
Oct 13, 2022 20:29:18 Yunus Kahveci @.***>:
It broke for me as well (after installing updates). After messing around a bit, changing my audio_output type from alsa to pulse fixed it for me, however you don't seem to even have an audio output configured in the first place..?
I'm running Pipewire on arch btw™ as well.
Here is my working config:
.config/mpd/mpd.conf *db_file "~/.local/share/mpd/database"
log_file "~/.local/share/mpd/log"
music_directory "~/mus"
playlist_directory "~/.local/share/mpd/playlists"
pid_file "~/.local/share/mpd/pid"
state_file "~/.local/share/mpd/state"
sticker_file "~/.local/share/mpd/sticker.sql"
auto_update "yes"
bind_to_address "[::]:6600"
bind_to_address "~/.local/share/mpd/mpd.sock"
restore_paused "yes"
max_output_buffer_size "16384"
audio_output {
type "pulse"
name "Pipewire Playback"
}
audio_output {
type "fifo"
name "Visualization"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
* Hope this helps!
— Reply to this email directly, view it on GitHub[https://github.com/MusicPlayerDaemon/MPD/issues/1645#issuecomment-1278018422], or unsubscribe[https://github.com/notifications/unsubscribe-auth/ACMMCE4BNV5EKGEEXAFMV33WDBIH3ANCNFSM6AAAAAAREBWESE]. You are receiving this because you authored the thread.[Tracking image][https://github.com/notifications/beacon/ACMMCE2U5UGSYVWTRBDVAEDWDBIH3A5CNFSM6AAAAAAREBWESGWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSMFUBXM.gif]
There's suspect code in AlsaOutputPlugin.cxx
, these alsa api calls may return NULL
and are passed as args to FmtDebug
which will then result in this exception:
terminate called after throwing an instance of 'fmt::v9::format_error'
what(): string pointer is null
snd_pcm_format_name(hw_result.format),
snd_pcm_format_description(hw_result.format));
snd_pcm_name(pcm),
snd_pcm_type_name(snd_pcm_type(pcm)));
The results should probably be checked for NULL before being passed to FmtDebug
, although the reason why NULL is being returned is probably the more significant issue. May be alsa lib version issue?
For reference, some of my relevant package versions are:
alsa-lib
is on 1.2.7.2-1
mpd
is on 0.23.9-3
pipewire(-*)
is on 1:0.3.59-2
I've moved to using the pulse sink and now it works (which is odd because when I was initially testing this it didn't work). Probably something wrong in alsa yeah. I'm also using alsa-lib 1.2.7.2-1
.
Should I close this issue or do we want to convert it into an alsa related issue instead?
It is not explicitly documented whether snd_pcm_name()
is allowed to return NULL
: https://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m.html#ga5031edc0422df8db1f70af056a12dd77
But apparently this is legal: https://github.com/alsa-project/alsa-lib/blob/0222f45d11e8b71bf651b985b00fdb0addbf3eed/src/pcm/pcm.c#L2761-L2762
That's ... surprising!
Bug report
Describe the bug
Since a few days now, MPD has randomly started coredumping whenever I try to play anything. This happens on the current release version. If I use the master branch version it simply crashes on startup.
I am running ArchLinux and using
pipewire 0.3.59
for audio.Expected Behavior
MPD plays audio
Actual Behavior
MPD coredumps
Version
Configuration
Log
--verbose
Core dump happens after
mpc play
backtrace
coredumpctl