|
|
Опции темы | Поиск в этой теме |
04.03.2024, 00:40 | #1 |
Старший Пользователь
Регистрация: 18.04.2009
Город: Краснодар
Регион: 23, 93
Машина: Приора хэтчбек
Сообщений: 979
|
AutomaticVolumeControl (автоматическая регулировка громкости приложений)
Давно пытаюсь разобраться с автоматической регулировкой громкости приложений...
Первая хотелка была такой – Снижение громкости iCarDS при появлении звука в BlueStacks. Восстановление громкости при пропадании звука. Пытался решить всякими CheVolume, IndieVolume, VBCABLE и т.п., но получались какие-то сложные глючные костыли. Потом наткнулся на AutomaticVolumeMixer. Первую хотелку она решала, но есть пара нюансов:
Поначалу я ковырялся в исходном коде AutomaticVolumeMixer, переделывал iCarDS на регулировку громкости самого DSPlayer, а не устройства вывода, и т.д. и т.п. Но потом решил изобрести свой велосипед, который, недолго думая, обозвал AutomaticVolumeControl (скачать). Для работы требуется .NET Framework 4.8 + RUS Language Pack. Проверял на Win7, Win10. Возможности приложения – это реализация мои хотелок. Программа запускается свернутая в трей. Запуск программы настраивается самостоятельно. Настройки разворачиваются при двойном клике по иконке в трее, или при выборе соответствующего пункта меню иконки. Настройки программы выглядят так: Рис. 1. Настройки программы. "Отслеживаемые процессы" – это процессы, за наличием звука в которых следит программа. При появлении звука в каком-либо из этих процессов запускается процедура снижения громкости всех процессов из таблицы "Процессы с изменяемой громкостью" в соответствии с параметрами "Коэффициент/громкость" и "Тип". Типы:
"Процессы с фиксированной громкостью" – это процессы, громкость которых не изменяется при превышении громкости устройства вывода заданного уровня. Если громкость устройства вывода меньше заданного уровня (фиксированной громкости), то громкость этого процесса равна громкости устройства. Если громкость устройства вывода больше заданного уровня (фиксированной громкости) – то громкость процесса не изменяется, т.е. остается зафиксированной. Под таблицами расположены кнопки добавления/удаления процессов. Другие параметры:
Решил выяснить, насколько различается. Установил программу-шумомер на телефоне. Телефон расположил вблизи переднего динамика. В BlueStacks установил аудиоплеер и скопировал туда немного музыки. В микшере Windows установил громкость устройства вывода и громкость BlueStacks одинаковой – 10%. Это мой комфортный уровень громкости BlueStacks, у каждого он будет другой. Включил музыку в BlueStacks. Шумомер показал среднее значение 68 дБ. Рис. 2. Громкости устройства и BlueStacks – 10%. Физическая громкость – 68 дБ. Далее установил громкость устройства вывода 100%, а громкость BlueStacks оставил той же – 10%. Шумомер показал среднее значение 81 дБ. Рис. 3. Громкость устройства – 100%, BlueStacks – 10%. Физическая громкость – 81 дБ. Разница громкости – 81-68=13 дБ. В переводе на понятный язык громкость увеличилась в 13/10*2=2,6 раз (т.к. увеличение на 10 дБ – это увеличение в 2 раза). Т.е. при уровне громкости устройства вывода 100% громкость BlueStacks должна быть 10/2,6=3,8%, чтобы на слух громкость была на том же уровне, когда громкость устройства 10%. Т.о., помимо удержания/фиксирования громкости BlueStacks на одном уровне (10%) необходимо еще и дополнительно корректировать его громкость – при увеличении громкости устройства с 10% до 100% громкость BlueStacks должна пропорционально изменяться с 10% до 3,8%. Для этой коррекции в настройки программы необходимо ввести коэффициент, рассчитываемый следующим образом: Коэффициент = (УвеличениеГромкостиРаз-1)/(1-ГромкостьFixed) = (2,6-1)/(1-0,1) = 1,6/0,9 = 1,7778 , где:
__________________
Приора хэтчбек Win7 x64 Pro, Intel Core i3-3240 Ivy Bridge 2x3.4GHz HT, DDR3 2x4Gb, SSD SiliconPower Ace A55 128GB SATAIII, ASRock B75M-ITX, M2-ITX rev.2F, GPS Beitian BN-808, Logitech Wireless Touch Keyboard K400r, ИК-пульт Prology RCD-350, круиз-контроль... Последний раз редактировалось Lexx09; 05.03.2024 в 00:08. |
Метки |
bluestacks, icards, громкость, микшер |
Здесь присутствуют: 12 (пользователей: 0 , гостей: 12) | |
|
|