我试图让pulseaudio 在系统模式下运行,并且胆怯地坐在pulseaudio 的alsa 层上。
但胆怯在pulseaudio之前就开始了,并锁定了声卡,使整个系统没有音频。
这就是我的胆怯。服务
[Unit]
Description=TiMidity++ Daemon
After=pulseaudio.service
Requires=pulseaudio.service
[Service]
User=timidity
ExecStartPre=/bin/sleep 60
ExecStart=/usr/bin/timidity -iA -Os
[Install]
WantedBy=default.target
我添加了ExecStartPre
和Requires
行,但问题仍然存在。
我不知道在pulseaudio完成初始化之前是否胆怯正在盯着(并且ExecStartPre没有按预期工作),或者pulseaudio是否延迟锁定alsa设备。
我使用的是 Ubuntu 20.04。
我尝试过fluidsynth,它支持pulseaudio,作为替代品。但即使没有播放任何内容,它的使用率也很高。
答案1
/etc/systemd/user/timidity.service
添加包含以下内容的文件(权限 644):
[Unit]
Description=TiMidity++ Daemon
After=pulseaudio.service
[Service]
ExecStart=/usr/bin/timidity -iA
[Install]
WantedBy=default.target
跑步:
systemctl --user enable timidity
systemctl --user start timidity
/usr/local/sbin/adduser.local
要将其应用于所有新创建的用户,请添加包含以下内容的文件(权限 755):
#!/bin/bash -e
sudo -u "$1" systemctl --user enable timidity