Как отключить нормализацию звука андроид

Как отключить автоматический уровень громкости до уровня безопасности Android

На Android, в зависимости от вашей версии системы, вы можете иметь встроенную функцию безопасного объема наушников. Как это работает? Он просто продолжает подражать нашей музыке время от времени, слушая наушники примерно на половину объема, чтобы защитить наши уши. Как отключить его?

Если нам не нравится, когда кто-то другой решает нас, как мы должны пользоваться телефоном, это, безусловно, раздражает нас. В некоторых версиях системы, особенно неофициальных (CyanogenMod), отключить опцию безопасного объема наушников невероятно просто. Однако, если у нас есть такая функция, включенная в официальном программном обеспечении, и ее невозможно отключить, вам следует использовать специальное приложение, которое перезаписывает настройки громкости.

Способ 1. Отключите защищенный том, используя настройки

Первый метод, безусловно, работает на модах CyanogenMod, но его необязательно нужно проверять на официальных выпусках Android, в которых мы находим функцию уменьшения громкости. Перейдите в приложение «Настройки» и выберите «Звук».

В настройках звука на вкладке «Громкость» выберите настройку с тем же именем. Android теперь покажет нам все слайдеры, связанные с громкостью звука на Android.

Под полосой громкости вы найдете опцию «Безопасный объем музыки». Конечно, эта опция выбрана по умолчанию, поэтому ее следует отключить.

Когда отображается сообщение, игнорируйте его и отключите защищенный том, несмотря на предупреждение. И он готов — система не будет автоматически отключать музыку во время прослушивания в наушниках.

Способ 2. Используйте приложение «Слуховой аппарат».

Слуховой аппарат это приложение, задача которого — парадоксально в нашем случае — защита слуха. Приложение позволяет устанавливать два разных уровня звука (для динамиков и наушников) и автоматически переключаться между ними в зависимости от того, подключены или отключены наушники.

Как это приложение поможет нам с проблемой автоматического уменьшения объема? Программа, очевидно, берет контроль над регулятором громкости и предотвращает встроенную функцию автоматического сжатия. Все, что вам нужно сделать, — установить максимальный уровень громкости как для наушников, так и для громкоговорителя, и он готов.

Использование приложения очень просто. После его запуска мы убеждаемся, что мы находимся на вкладке «Медиа» (отвечаем за прослушивание музыки), а не в Ringer (он отвечает за громкость звонка). Мы выбираем Media и используем два слайдера ниже.

Первый отвечает за том, что громкость будет установлена ​​после подключения наушников, вторая управляет громкостью, которая будет активироваться автоматически, когда они будут отключены. Мы устанавливаем одинаковое значение в обоих случаях и касаемся кнопки Enable.

Слуховой сейф теперь активирован и контролирует автоматический громкость. Операция программы и устранение автоматического отключения звука подтверждены несколькими пользователями смартфона LG G2, в котором есть проблема приглушения.

Источник

Как отключить предупреждение о вреде долгого прослушивания аудио (Android)

Наверное, многие, кто слушает музыку (и не только) с Android-устройства, сталкивались с таким предупреждением:

В этой статье мы рассмотрим, почему и когда возникает данное предупреждение, и как сделать так, чтобы оно больше не возникало.

Читайте также:  Путь сталкера для андроид

Появляется оно только при прослушивании аудио через внешнее устройство (наушники/колонки). Для тех, кто не встречался с таким, небольшое пояснение: представьте, что вы слушаете музыку в наушниках, довольно громкую. Внезапно звук становится тише. Вы пытаетесь прибавить громкость, используя кнопки на корпусе, но не выходит. Достав устройство из кармана и сняв блокировку, вы и увидите такое предупреждение. Только после согласия с ним можно будет прибавить громкость обратно.

Да, предупреждение разумное, но появляется оно в непредсказуемый момент, иногда самый неподходящий: когда вы в общественном транспорте/за рулём/зимой на улице/когда у вас грязные руки и т.д. Доставать устройство, снимать блокировку, соглашаться с предупреждением, класть устройство обратно в этих случаях неудобно. А в случае, если подключены колонки, а не наушники, сообщение не совсем уместно.

Почему оно возникает

Данное предупреждение — не собственная инициатива авторов платформы. Всё дело в том, что существует WHO-ETU стандарт “безопасного прослушивания” (safe listening). В европейских и некоторых других странах его выполнение обязательно. В стандарте описывается, как долго можно прослушивать аудио в зависимости от громкости с минимальным риском снижения слуха. Например, для взрослого человека безопасная недельная “доза” звука — 1.6 Pa 2 h, что эквивалентно 20 часам прослушивания на громкости 83 dB.

Реализация

В зависимости от mcc (mobile country code), режим safe listening может быть включен или выключен. Определяется это значением ресурса R.bool.config_safe_media_volume_enabled .

Если режим включен, то система считает время прослушивания на небезопасной громкости (выше 85 dB), и периодически сохраняет значение в переменную Settings.Secure.UNSAFE_VOLUME_MUSIC_ACTIVE_MS . Когда значение достигает 20 часов, выводится предупреждение. После согласия с предупреждением значение сбрасывается, и подсчёт начинается заново.

Такая реализация довольно простая и не учитывает, например, в течение какого времени пользователь прослушал эти 20 часов: возможно, за пару дней, а, может, слушал по 6-7 минут в течение полугода (в соответствии со стандартом это не является угрозой для слуха).

Логика safe listening сосредоточена в классе классе AudioService.java, в нём можно увидеть соответствующие поля:

Поле mMusicActiveMs содержит число миллисекунд, прослушанных пользователем на небезопасной громкости со времени последнего подтверждения диалога. Начальное значение загружается из переменной Settings.Secure.UNSAFE_VOLUME_MUSIC_ACTIVE_MS . В эту же переменную каждую минуту записывается новое значение mMusicActiveMs.

Также есть поле mSafeMediaVolumeState , оно содержит текущее состояние системы safe listening:

  • DISABLED : отключена
  • ACTIVE : включена, и при этом лимит прослушивания достигнут, а значит нельзя разрешать пользователю увеличивать громкость, пока он не согласится с предупреждением
  • INACTIVE : включена, лимит пока не достигнут

Метод проверки превышения лимита выглядит так:

Как отключить предупреждение

Чтобы выключить safe listening, нужно добиться того, чтобы переменной mSafeMediaVolumeState на этапе конфигурации было присвоено значение DISABLED .

Посмотрим, где изначально задаётся значение:

Видим, что помимо значения ресурса R.bool.config_safe_media_volume_enabled , есть два свойства, позволяющих включать/выключать систему safe listening: audio.safemedia.force и audio.safemedia.bypass.

Чтобы отключить предупреждение, нужно установить значение audio.safemedia.bypass=true в файле system/build.properties. Но для этого нужны root-права. Если их нет, то нужно разбираться дальше и искать другой способ.

Как отключить предупреждение без root

Давайте посмотрим, что происходит при закрытии диалога с предупреждением по нажатию ОК, и попробуем это воспроизвести:

Вызывается метод disableSafeMediaVolume у инстанса AudioManager .

Он помечен аннотацией @hide . Это означает, что метод не будет включён в public API несмотря на модификатор public. До Android 9 это легко можно было обойти используя рефлекшн. Теперь же такой метод по-прежнему можно вызывать, но уже с помощью трюка под названием double-reflection:

Вызов заканчивается исключением
java.lang.SecurityException: Only SystemUI can disable the safe media volume: Neither user 10307 nor current process has android.permission.STATUS_BAR_SERVICE.
Разрешение STATUS_BAR_SERVICE имеет protectionLevel=«signature|privileged», получить его не получится.

Читайте также:  Поддержка google play android

Что ж, тогда попробуем так. Мы будем следить за переменной Settings.Secure.UNSAFE_VOLUME_MUSIC_ACTIVE_MS , в которую периодически сохраняется текущее значение mMusicActiveMs . Когда значение начнёт приближаться к 20 часам, будем его сбрасывать. Затем нужно будет сделать так, чтобы AudioService прочитал новое значение из настроек.

Прочитать значение Settings.Secure.UNSAFE_VOLUME_MUSIC_ACTIVE_MS можно так:

То же самое, используя adb:

А чтобы записать значение, приложению потребуется разрешение android.permission.WRITE_SECURE_SETTINGS .

Оно имеет protectionLevel=«signature|privileged|development», а значит его можно выдать приложению используя adb:

Само значение записать можно так:

То же самое можно сделать с помощью adb:

Сбрасывать лучше в 1, как это сделано в AudioManager, а не в 0. Так как 0 соответствует состоянию ACTIVE.

Теперь нужно, чтобы AudioService прочитал новое значение, и обновил значение локальной переменной mMusicActiveMs .

Есть подходящий метод в AudioManager.java

Он инициирует вызов метода readAudioSettings в AudioService , где происходит загрузка mMusicActiveMs из настроек.

Метод помечен аннотацией @hide . Его вызов с помощью double-reflection вызывает исключение:
java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
Да, аннотация @hide здесь тоже неспроста. Получить данное разрешение мы, конечно не можем. Оно имеет protectionLevel=«signature|installer».

Остаётся один способ заставить AudioService прочитать новое значение — его перезапуск. Просто так перезапустить системный сервис нельзя. Нужно или перезагрузить устройство, или переключиться на другого пользователя, а затем вернуться обратно.

Теперь настало время проверить теорию.

Устанавливаем unsafe_volume_music_active_ms = 71 990 000 (останется 10 секунд, в течение которых можно прослушивать музыку на высокой громкости)

Перезапускаем устройство (можно вместо этого переключиться на другого пользователя, а потом вернуться):

Подключаем наушники, включаем музыку погромче. В течение минуты появляется диалог.

Теперь повторяем те же действия, но присваиваем unsafe_volume_music_active_ms = 1. Включаем музыку, ждём минуту. Диалог не появляется.

Итоги

Чтобы отключить предупреждение, можно сделать следующее:

При наличии root-прав

Установить значение audio.safemedia.bypass=true в файле system/build.properties

Нужно следить за значением Settings.Secure.UNSAFE_VOLUME_MUSIC_ACTIVE_MS , и не давать ему подниматься выше 72 000 000 (20 часов). После сброса значения нужно перезапускать устройство (или переключаться на другого пользователя, а затем возвращаться обратно).

Я написала код простого приложения, которое делает эту работу, и напоминает о необходимости перезагрузить устройство/перелогиниться.

Источник

Как исправить то, что звук на телефоне сам прибавляется и убавляется

Мы слышим, как многие люди жалуются: «Мой телефон самсунг сам убавляет звук». В большинстве случаев телефоне сам прибавляется и убавляется, когда они слушают звонки или музыку. Все люди, использующие устройства на базе Android, могут иметь отношение к этой проблеме. Итак, мы здесь, чтобы подробно остановиться на всех важных аспектах, чтобы сделать его более понятным для вас. Без лишних слов, давайте разберемся, как решить эту проблему!

Часть 1:Почему звук на телефоне сам убавляется

Множество причин могут привести к тому, что звук будет прибавляется и убавляется. Знать эти причины так же важно, как и их устранять.

  • В основном, когда вы играете в игры или смотрите видео на своем устройстве Android, громкость сам прибавляет.
  • Во-вторых, вы можете почувствовать, что телефон сам уменьшает громкость музыки в наушниках при использовании внешнего динамика, такого как наушники.
  • Иногда, когда вы используете Spotify, вы также чувствуете, что громкость постоянно увеличивается и уменьшается.

Часть 2: 6 способов исправитьзвук на телефоне сам прибавляетсяи или убавляется

Теперь самое важное — узнать, как исправить колеблющуюся громкость звука на Android, и попрощаться с этой проблемой.

Читайте также:  1000 по блютузу для андроид

1. Проверьте кнопки громкости

Прежде всего, вы должны проверить кнопки регулировки громкости, чтобы увидеть, нужно ли их настраивать. Иногда мы не осознаем этого, но простая регулировка громкости с помощью кнопок может решить эту проблему.

2. Включите свой телефон в безопасный режим

Перевод телефона в безопасный режим может решить более 90% проблем с устройствами Android, так почему бы не попробовать? Следуйте инструкциям, чтобы включить безопасный режим на вашем устройстве Android.

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

Удерживайте кнопку уменьшения громкости при загрузке устройства. Если вы все сделали правильно, вы увидите «безопасный режим».

  • Как только ваш телефон перейдет в безопасный режим, вы сможете отслеживать все проблемы в своем телефоне. Чтобы выйти из безопасного режима, просто перезагрузите телефон с Android.
  • 3. Перезапустить устройство Android

    Перезапуск устройства Android также может исправить множество временных проблем с устройством, например проблемы с изменением громкости. Нажмите кнопку питания на несколько секунд и выберите вариант перезапуска. Вот и всё. Или вы также можете выполнить принудительный перезапуск телефона.

    4. Исправить системные проблемы с Reiboot для Android

    Иногда вы все еще можете столкнуться с проблемой, что громкость продолжает увеличиваться и уменьшаться после попытки вышеуказанных методов. Это из-за системных проблем. Не волнуйся, Tenorshare ReiBoot for Android — лучший инструмент для перезагрузки устройства и устранения системных проблем, которые могут возникнуть в вашем телефоне.

    Скачайте и установите программу на свой ноутбук. Подключите Android-устройство через кабель к системе.

    Для любого пользователя Android попробуйте «Один щелчок, чтобы войти в режим восстановления», а затем «Выйти из режима восстановления». Он может исправить многие системные проблемы бесплатно.

    Если вы являетесь пользователем Samsung, вы можете выбрать «Восстановить систему Android» и подтвердить информацию об устройстве на экране. Затем нажмите «Далее», чтобы продолжить процесс.

    Следующим шагом будет загрузка пакетов прошивки. После завершения загрузки нажмите «Восстановить сейчас», чтобы начать процесс.

    Этот процесс займет некоторое время. И после этого вы увидите уведомление о завершении на экране.

    5. Сбросить настройки до заводских

    Иногда, чтобы убрать некоторые проблемы с вашего телефона, вам нужно перезагрузить телефон. Некоторые вредоносные программы или вирусы в устройстве могут препятствовать нормальной работе устройства. Но имейте в виду, что это сотрет все ваши данные на вашем устройстве Android. Войдите в свой телефон и нажмите «Настройки». Прокрутите вниз до меню «назад и сбросить». Затем нажмите на Сброс заводских данных.

    Здесь важно отметить, что на разных устройствах Android могут быть разные способы сброса настроек устройства. Вам нужно изучить меню настроек вашего телефона, чтобы найти опцию.

    6. Обратитесь в службу поддержки

    Предположим, вы испробовали все методы, чтобы исправить проблемы с громкостью, которая сам прибавляется, но не добились прогресса. Пришло время обратиться в службу поддержки мобильного устройства, которое вы используете. Или вы также можете посетить ближайшую ремонтную мастерскую, чтобы спросить их о проблеме. Они отремонтируют ваш телефон, и у вас больше не будет этой проблемы!

    Заключение

    Мы слышим, как много людей просят помощи в решении их проблем с устройствами Android, например, телефон самсунг сам убавляет звук или телефон сам убавляет звук xiaomi. Поэтому мы достаточно подробно рассказали о причинах и решениях, касающихся увеличения и уменьшения громкости на вашем устройстве. И мы очень рекомендуем Tenorshare ReiBoot for Android чтобы легко избавиться от этой постоянной проблемы.

    Обновление 2021-11-19 / Обновление для Android Проблемы и Решения

    Источник

    Оцените статью