我有一个bash脚本,通过omplayer在我的Raspberry Pi上播放.mp3文件。 但不能用GUI控制本地(耳机)audio音量。 有一个CLI的命令 ,我可以在bash脚本中实现吗? 我搜查了一下,却找不到这样的命令。
码:
omxplayer Song_Title.mp3
设置本地(耳机)输出的audio:
sudo modprobe snd_bcm2835 sudo amixer cset numid=3 1
omxplayer -o local
谢谢!
我不知道如何用命令调整音量。 但是,当使用omxplayer CLI时,只需按 – 或+键即可开启或关闭音量。
为通过脚本播放提供更精确的信息,在当前版本的omplayer中有三种方法来改变音量,而且值不那么直观:
--vol YYY
,double millibels,默认为0,范围[-6000:0] double:XXX
,默认1,范围[0:1] xxx到yyy的关系是: XXX = 10 ^ (YYY / 2000)
…根据omxplayer.cpp源代码,反转公式为: YYY = 2000 * (log XXX)
。
所以如果我们需要:
(10^(-4000/2000)=10^-2=0.01
(10^(-2000/2000)=10^-1=0.1
(10^(-602/2000))~=0.5
(10^(0/2000)=10^0=1)
为dbus卷命令运行bash脚本:
export DBUS_SESSION_BUS_ADDRESS=$(cat /tmp/omxplayerdbus.${USER:-root}) dbus-send --print-reply --session --reply-timeout=500 \ --dest=org.mpris.MediaPlayer2.omxplayer \ /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Set \ string:"org.mpris.MediaPlayer2.Player" \ string:"Volume" double:0.5 # <-- XXX=0.5 (50% sound volume)
等于启动时的音量参数:
omxplayer --vol -602 mediaFileName.mp4
…都将音量设置为50%。
您可以通过添加选项--vol
来设置初始音量:
omxplayer --vol N Sogn_title.mp3
其中N
是表示毫巴的数字。 N的有效值是例如:
5000(增加音量)
-15000(减小音量)