我使用下面链接中的答案在运行 Ubuntu 14.04(SteamOS 会话,因此没有可用的 Ubuntu 桌面会话)的 Ubuntu 媒体盒上成功设置了动态范围压缩。
我创建了一个非常简单的 bash 脚本来连续运行这些命令。它看起来像这样
#!/bin/bash
pacmd load-module module-ladspa-sink sink_name=ladspa_out \
plugin=mbeq_1197 label=mbeq \
control=11.621622,10,4.594594,2.702703,0,0, \
-1.621622,-0.270270,-5.405406,-3.513514,-8.648648, \
-5.675676,-4.054054,1.351351,9.189189 &&
pacmd load-module module-ladspa-sink sink_name=sc4m \
plugin=sc4m_1916 label=sc4m control=1,1.5,401,-30,20,5,12 &&
pacmd set-default-sink sc4m
我如何才能让它在系统启动时运行?
我可以从我的主目录或 /usr/bin/compress_audio.sh 运行它,但它不会在启动时运行。我尝试将 /usr/bin/compress_audio.sh 添加到 /etc/rc.local,但没有成功。我想也许 PulseAudio 守护进程直到 rc.local 运行后才启动,但我不确定在这种情况下该怎么做。
/etc/rc.local 中还有另一行
nohup plexmediaserver &
,我不确定这是否会有问题?
谢谢您的任何建议或忠告!
编辑:我尝试将 pacmd 命令放入 /etc/rc.local,但我仍然必须在启动后手动运行 /etc/rc.local 才能使 DRC 正常工作。这让我非常抓狂。运行 /etc/rc.local 的用户可能无权访问 pacmd 吗?
编辑 2:将 /etc/rc.local 更改为su [user] -c '/usr/bin/compress_audio.sh > /home/[user]/audio_compress.log'
希望强制用户登录。当我以 root 身份运行 /etc/rc.local 时,它会正确登录并添加 DRC。在启动时,它不会登录也不会启用 DRC,因此看起来它根本没有运行。
编辑3:尝试将这些配置添加到 /etc/pulse/system.pa 也无济于事
答案1
回复晚了,但由于这个问题没有答案,而且我在找到答案之前就发现了它,所以似乎值得回答。
取自LADSPA 上的这个答案, 通过关于动态压缩的这个答案:
启动时加载LADSPA模块:
可以通过将其包含到守护进程在启动时加载的 /etc/pulse/default.pa 配置文件中来完成:
.ifexists module-ladspa-sink.so .nofail load-module module-ladspa-sink <options> .fail .endif
第二个链接还介绍如何将压缩器加载为实时可调的 ALSA 插件,这对于调整效果很有用,因为 PulseAudio 插件无法实时调整。
希望这对某人有帮助。:)