控制mpg123音量

use*_*871 3 audio python

一天中的好时光!目前正在开发诸如“智能家居”之类的东西,我需要以不同的音量级别启动不同的音频流。例如,我想听到原始音量 20% 的背景音乐,但如果有人按门铃,我想听到 100% 音量的铃声。目前,我正在使用mpg123Python 脚本。Python 脚本pexpect运行 mpg123 并进行所需的设置,例如

mpg123 -vC <filename>
Run Code Online (Sandbox Code Playgroud)

's'当前的方法在玩家开始后立即发送暂停信号。然后我将所需的数量('-'例如将音量减少 2)发送给播放器并恢复播放。嗯...它有效,但实现很丑陋,并且播放器启动和音量减小之间存在一些差距。至少在 python 脚本实际暂停播放器并降低音量之前我听到了一些第一个“数据包”。

有什么办法可以通过某些命令来减小音量吗?有什么办法可以让mpg123暂停吗?至少要消除这个差距

谢谢!

小智 5

我对智能家居中的蓝牙音频管理做了同样的事情,并使用以下内容

mpg123 -f -2000 test.mp3
Run Code Online (Sandbox Code Playgroud)

幅度的最大值为100%,对应于32768,我使用的值为2000,约为6.1%,更多详细信息请参阅手册man mpg123

我不建议使用pulse,只需在mpg123内部使用alsa

玩得开心