Установите громкость с помощью php и amixer / pulseaudio - PullRequest
0 голосов
/ 09 декабря 2018

Моя проблема в том, что следующий скрипт прекрасно работает в терминале, но на моем Apache2-Webserver он ничего не делает.

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

Я слышу, как музыка становится громче, когда она выполняется изтерминал, использующий

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

Другие команды с exec прекрасно работают на веб-сервере.Рабочий пример:

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

Настройка:

  • Apache 2.4
  • PHP 7
  • Raspberry Pi 3b +
  • Raspian
  • Динамик подключен через разъем для наушников

Спасибо за любую помощь заранее!

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Моя проблема решена.Я записываю файлы в папку, и сценарий проверяет эту папку на наличие файлов и выполняет код, который управляет аудио (теперь я управляю им с помощью amixer вместо pactl).

Спасибо за ваши предложенияв любом случае!

0 голосов
/ 09 декабря 2018

Сначала проверьте группу.Одним из способов является использование ls -lah /usr/bin/pactl.Он должен показывать среди прочего информацию о пользователе и группе, у которых есть разрешение.Он также показывает, есть ли у пользователя, группы и других пользователей разрешение на выполнение вообще.

Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте команду usermod, заменив examplegroup именем группы, которую вы хотите.чтобы добавить пользователя к andexampleusername с именем пользователя, которого вы хотите добавить.

usermod -a -G examplegroup exampleusername

Например, чтобы добавить пользовательские www-данные в групповую музыку, используйте следующеекоманда:

usermod -a -G music www-data

Источник

edit

Другой способ - разрешить всепользователям выполнить /usr/bin/pactl, добавив бит выполнения ко всем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...