Изменение громкости

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Изменение громкости

Сообщение Logrus » Пн янв 15, 2018 11:48 pm

СпойлерПоказать
громкость.PNG
громкость.PNG (8.71 КБ) 6202 просмотра
теперь на слайдере и при изменении через шаблон меняется, есть обратная связь
громкость1.PNG
громкость1.PNG (33.81 КБ) 6202 просмотра
без написания значений с процентами

Код: Выделить всё

$params['VALUE']=preg_replace('/[^0-9]/', '', $params['VALUE']);
$this->setProperty('MasterVolumeLevel',$params['VALUE']);
$input=array('100','95','90','85','80','75','70','65','60','55','50','45','40','35','30','25','20','15','10','5','0');
$output=array('100','98','95','93','90','88','85','83','80','78','75','72','70','67','65','63','60','58','55','50','0');
for ($i=0; $i <= count($input); $i++){
 if ($input[$i]==$params['VALUE']){
  $volume=$output[$i];  
}}
safe_exec('amixer sset PCM,0 '.$volume.'%');
say("Системная громкость ".$params['VALUE']." процентов"); 
За это сообщение автора Logrus поблагодарили (всего 2):
Samir77 (Пт окт 19, 2018 3:05 pm) • clever (Пт май 19, 2023 2:45 am)
Рейтинг: 2.33%
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
step74
Сообщения: 37
Зарегистрирован: Пн апр 17, 2017 3:03 pm
Благодарил (а): 0
Поблагодарили: 13 раз

Re: Изменение громкости

Сообщение step74 » Вт янв 16, 2018 7:52 am

Я невнимательно прочитал Твое сообщение.
Ты используешь слайдер, я использую селектбокс.
у селектбокс нет возможности выбрать диапазон значений
На самом деле кому как больше нравится, я хотел сделать единый стиль с регулятором громкости, как у Сергея.
думал у тебя вопросы к массиву.
массив мера вынужденная мера, так как у малинки есть косяк с регулировкой громкости
таким способом решил компенсировать недостаток.
Только Ты выбрал другие значения в массиве, у меня с такими значениями громкость регулируется криво ?
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Изменение громкости

Сообщение nick7zmail » Вт янв 16, 2018 8:14 am

У селектор бокса вроде можно значения выбирать...и в нем же заменять через вертикальную черту. С ним проще и без кода даже получается.

Отправлено с моего G8441 через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
Ron
Сообщения: 480
Зарегистрирован: Пт окт 27, 2017 6:44 pm
Благодарил (а): 144 раза
Поблагодарили: 70 раз

Re: Изменение громкости

Сообщение Ron » Чт янв 18, 2018 7:03 pm

kas5858 писал(а):Я сделал две громкости, системная и плеера.
А можно конфиг каким образом реализовали? Пульсой или как?
Я когда игрался конфигами добивался оного, но как назло при редактировании параметров пульсы все слетело к чертям, теперь вспомнить бы где чего корректировал :D
kas5858
Сообщения: 364
Зарегистрирован: Вс янв 15, 2017 5:34 pm
Откуда: Москва
Благодарил (а): 100 раз
Поблагодарили: 53 раза

Re: Изменение громкости

Сообщение kas5858 » Чт янв 18, 2018 8:09 pm

Ron писал(а):
kas5858 писал(а):Я сделал две громкости, системная и плеера.
А можно конфиг каким образом реализовали? Пульсой или как?
Я когда игрался конфигами добивался оного, но как назло при редактировании параметров пульсы все слетело к чертям, теперь вспомнить бы где чего корректировал :D
Нет, PulseAudio не использовал, через amixer нечего не настраивал, только два метода и все
За это сообщение автора kas5858 поблагодарил:
Ron (Чт янв 18, 2018 8:45 pm)
Рейтинг: 1.16%
Raspberry Pi3 - Broadlink - MegaD - Много датчиков - Камеры - Часы.
Изображение Connect
Sergibus0
Сообщения: 31
Зарегистрирован: Пн мар 25, 2013 4:31 pm
Благодарил (а): 2 раза
Поблагодарили: 0

Re: Изменение громкости

Сообщение Sergibus0 » Пн янв 22, 2018 11:11 am

Logrus писал(а):
п.с. если на малинке, образе сергея выполнить буквально не будет звука (работает и запускается и управляется), проблема с правами
Вот у меня именно так! Где почитать про правильные права? В линуксе пока не силен.
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Изменение громкости

Сообщение Logrus » Пн янв 22, 2018 11:28 am

банальщины полно, конкретных разобраных примеров на систему нет
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
Ron
Сообщения: 480
Зарегистрирован: Пт окт 27, 2017 6:44 pm
Благодарил (а): 144 раза
Поблагодарили: 70 раз

Re: Изменение громкости

Сообщение Ron » Пн фев 26, 2018 9:31 pm

Logrus, а о какой системе ты пишешь?
МДМ - это раз
Ubuntu- это двас.
Win - это трис.
Последний раз редактировалось Ron Вт мар 27, 2018 9:37 am, всего редактировалось 1 раз.
Alex77
Сообщения: 215
Зарегистрирован: Вс мар 05, 2017 2:18 pm
Благодарил (а): 21 раз
Поблагодарили: 6 раз

Re: Изменение громкости

Сообщение Alex77 » Пт мар 23, 2018 9:42 pm

step74 писал(а):
kas5858 писал(а):Я сделал две громкости, системная и плеера. Я выставляю сначала системную под Алису, потом громкость плеера для музыки, таким способом получаю нужное мне. Очень удобно в разных сценариях,например играет музыка, мне кто то звонит, я поднимаю трубку автоматом громкость музыки уменьшается до комфортной а Алиса как говорила на своей громкости так и разговаривает.
Привет, я тоже сделал на малинке две громкости системная и плеера.
Плеер использую mpd
плеер регулирует громкость программно, для этого подкорректировал файл
modules/app_player/mpd.php
закоментировал строчку
у меня это 58 строчка

Код: Выделить всё

//safe_exec('amixer  sset PCM,0 '.$volume.'%');       
и вместо нее вставил код

Код: Выделить всё

$mpd->SetVolume($volume); 

Добавил метод в класс Computer
метод заглавил MasterVolumeLevelChanged
и код сделал:

Код: Выделить всё

$params['VALUE']=preg_replace('/[^0-9]/', '', $params['VALUE']);
$this->setProperty('MasterVolumeLevel',$params['VALUE']);
$input= array('100','95','90','85','80','75','70','65','60','55','50','45','40','35','30','25','20','15','10','5','0');
$output=array('100','99','98','96','95','93','91','89','87','85','83','80','77','73','71','66','61','53','43','25','0');
for ($i=0; $i <= count($input); $i++){
 if ($input[$i]==$params['VALUE']){
  $volume=$output[$i];  
}}
safe_exec('amixer sset PCM,0 '.$volume.'%');
say("Изменилась громкость до ".$params['VALUE']." процентов"); 
В меню управления добавил раздел selectbox c заглавием Системная громкость
привязал к объекту ThisComputer
методу MasterVolumeLevelChanged
в поле данные вставил громкость в процентах с 0% - до 100% с интервалом 5

проверить, что новый регулятор корректно управляет громкость можно зайти по SSH и дать команду alsamixer
таким способом у меня новый регулятор управляет системной громкостью малинки, а старый регулятор управляет программно громкостью плеера mpd


Я правильно понимаю, после обновления все слетает ?
Аватара пользователя
Ron
Сообщения: 480
Зарегистрирован: Пт окт 27, 2017 6:44 pm
Благодарил (а): 144 раза
Поблагодарили: 70 раз

Re: Изменение громкости

Сообщение Ron » Сб мар 24, 2018 2:45 pm

Alex77 писал(а):Я правильно понимаю, после обновления все слетает ?
Да, слетит правка в modules/app_player/mpd.php
Ответить