使用php和amixer / pulseaudio设置音量

时间:2018-12-09 10:27:03

标签: audio php raspberry-pi

我的问题是,以下脚本可以在终端中正常运行,但是在我的Apache2-Web服务器上它什么都不做。

<?php
exec("/usr/bin/pactl set-sink-volume 0 60%");
?>

当使用终端在终端上执行音乐时,我会听到声音越来越大

sudo php /var/www/html/test2.php

其他带有exec的命令在Web服务器上可以正常工作。工作示例:

<?php    
exec("/sbin/shutdown -r now");
?>

设置:

  • Apache 2.4
  • PHP 7
  • Raspberry Pi 3b +
  • Raspian
  • 通过耳机插孔连接的扬声器

感谢您的任何帮助!

2 个答案:

答案 0 :(得分:0)

首先检查组。一种方法是使用ls -lah /usr/bin/pactl。除其他信息外,它还应显示具有权限的用户和组。它还显示用户,组和其他人是否完全有权执行。

要将现有用户帐户添加到系统上的组,请使用usermod命令,将examplegroup替换为您要添加用户的组的名称,并将exampleusername替换为要添加的用户的名称。

usermod -a -G examplegroup exampleusername

例如,要将用户www-data添加到音乐组中,请使用以下命令:

usermod -a -G music www-data

Source

修改

另一种方法是通过向所有用户添加执行位来允许所有用户执行/usr/bin/pactl

答案 1 :(得分:0)

我的问题解决了。我正在将文件写入文件夹,脚本会检查该文件夹中的文件并执行比控制音频的代码(我现在使用混音器而不是pactl进行控制)。

仍然感谢您的建议!