Простое объяснение
Если проигрывается mpd, а звук пытается воспроизвести через другое приложение, x , звук из x не будет выводиться.
Если воспроизводится звук из другого приложения, x , и mpd пытается воспроизвести, звук из mpd не выводится, а звук из x продолжает воспроизводиться.
подробности
Я впервые заметил эту проблему с Flash, и это продолжает оставаться наиболее распространенным сценарием. Я опубликовал вопрос по этому поводу, прежде чем понял, что он не связан исключительно с Flash, а связан с mpd.
Мое самое большое разочарование связано с попыткой заставить работать mpd снова, так как я не могу описать какой-либо метод. Иногда pulseaudio -k
кажется, что помогает, иногда sudo /etc/init.d/mpd restart
другие убивают Chromium (из-за Flash) SIGTERM
. В большинстве случаев это сочетание вышеперечисленного.
Я думаю, что это может быть потому, что я запускаю mpd от имени другого пользователя и использую pulseaudio. Он не запускается от имени пользователя root или текущего пользователя. Кроме того, MPD скомпилирован с поддержкой импульсов.
Я перепробовал множество вещей, но я, честно говоря, не мог рассказать, как это происходило с тех пор. Я бы не стал ковыряться без какого-либо указания, но я был бы очень рад решить эту проблему раз и навсегда.
mpd.conf
Упрощается путем удаления комментариев / пустых строк.
music_directory "/var/lib/mpd/music"
playlist_directory "/var/lib/mpd/playlists"
db_file "/var/lib/mpd/tag_cache"
log_file "/var/log/mpd/mpd.log"
pid_file "/var/run/mpd/pid"
state_file "/var/lib/mpd/state"
user "mpd"
bind_to_address "wilson"
input {
plugin "curl"
}
audio_output {
type "pulse"
name "My Pulse Output"
}
filesystem_charset "UTF-8"
id3v1_encoding "UTF-8"
Вопрос
Ради сохранения этого вопроса: кто-нибудь знает, что вызывает это, или как это исправить без запуска mpd от имени текущего пользователя?