mpd 与其他应用程序冲突——控制脉冲?

Jam*_*bri 8 sound pulseaudio mpd

简单说明

如果 mpd 正在播放并且声音尝试通过另一个应用程序x播放,则不会输出来自x 的声音。

如果来自另一个应用程序x 的声音正在播放并且 mpd 然后尝试播放,则 mpd 不会输出任何声音,而来自x 的声音继续播放。

细节

我首先注意到 Flash 的这个问题,这仍然是最常见的情况。在意识到这与 Flash 并不严格相关,而是与 mpd有关之前,我发布了一个关于此的问题

我最大的挫折来自试图让 mpd 再次工作,因为我似乎无法确定任何方法。有时pulseaudio -k似乎有帮助,有时sudo /etc/init.d/mpd restart,其他人使用SIGTERM. 大多数时候它是上述的组合。

我认为这可能是因为我以另一个用户身份运行 mpd 并使用了pulseaudio。它不是作为 root 或当前用户运行的。此外,mpd 是在脉冲支持下编译的。

我尝试了很多东西,但老实说我无法背诵什么,因为已经有一段时间了。我宁愿在没有方向的情况下四处闲逛,但我真的很乐意一劳永逸地解决这个问题。

配置文件

通过删除注释/空行来简化。

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"
Run Code Online (Sandbox Code Playgroud)

为了保持这个问题:有没有人知道是什么导致了这个问题,或者如何在不以当前用户身份运行 mpd 的情况下修复它?

Fer*_*oss 5

我第一次开始使用 mpd 时遇到了这个问题,但那是很久以前的事了,所以我不记得我做了什么来修复它!

您是否安装了 PulseAudio 首选项?我在论坛上找到了这个提示: sudo apt-get install paprefs

然后从菜单中打开 PulseAudio 首选项: System->Preferences->PulseAudio Preferences 单击 Network Server 选项卡,然后选中“Enable network access to local sound devices”框,最后选中“Don't require authentication”框。之后,重新启动mpd:sudo /etc/init.d/mpd restart

但是......我刚刚意识到 mpd 对我来说很好用,而且我没有启用“对本地声音设备的网络访问”。

我认为您需要以当前用户身份运行 mpd 可能是正确的,这就是我正在做的。(我不知道为什么会这样!)

可以在此处找到将 mpd 设置为以用户身份运行的简单指南:http : //gmpc.wikia.com/wiki/MPD_INSTALL_USER_SERVICE_UBUNTU

总而言之,因为您已经安装了 mpd:

1.) 停止它: sudo update-rc.d mpd disable

2.) 将您的 mpdconf 复制到您的主目录(如 .mpdconf),并将以下条目更改为您的用户可以访问和写入的位置:

music_directory
playlist_directory
db_file
log_file
error_file
pid_file
state_file 
Run Code Online (Sandbox Code Playgroud)

我从中获取的页面建议只在您的主目录中为这些东西创建一个 .mpd 文件夹,保存您的实际音乐目录。

3.) 在 .mpdconf 中注释掉 user 行: #user "mpd"

4.) 现在您可以运行 mpd 并更新数据库。

5.) 要在登录时以用户身份自动启动 mpd,请转到启动应用程序并为 mpd 添加一个条目,然后在 ~/.config/autostart/ 中创建一个自动启动文件。

[Desktop Entry]
Type=Application
Exec=mpd
Hidden=false
NoDisplay=false
Terminal=false
X-GNOME-Autostart-enabled=true
Name[en_US]=Music Player Daemon
Name=Music Player Daemon
Comment[en_US]=plays the music
Comment=plays the music
Run Code Online (Sandbox Code Playgroud)

作为用户运行可能有缺点,所以这可能不适合您的需求。