Как я получаю текущий объем/амплитуду в MediaPlayer?

Я работаю над приложением, которое и запишет звуковой файл, и затем иметь опцию воспроизвести тот файл, после того как это было зарегистрировано. UI имеет компонент EQ, который анимирует относительно амплитуды тока записи. У меня есть анимация, работающая через MediaRecorder.getMaxAmplitude() метод, но не может найти средства сделать это с MediaPlayer. Я знаю, что это должно быть возможно, так как существует музыкальная визуализация Живые Обои по умолчанию, которые выполняют эту функциональность, но я не вижу способа, которым это вытягивает ту информацию при прочесывании AOSP. Кто-либо знает, как сделать эту работу?

20
задан Fantômas 29 August 2018 в 10:38
поделиться

1 ответ

Думаю, вам нужно использовать AudioManager . Как указано в API, его можно использовать для регулировки громкости:

AudioManager предоставляет доступ к громкости и управление режимом звонка.

Использование Context.getSystemService (Context.AUDIO_SERVICE) чтобы получить экземпляр этого класса.

Тогда я думаю этот метод будет полезен.

9
ответ дан 29 November 2019 в 23:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: