Настройка громкости AVAudioPlayer для громкости звонка пользователя? - PullRequest
3 голосов
/ 05 марта 2009

У меня проблема с громкостью AVAudioPlayer.

Я могу установить для свойства TheAudio.volume значение 1.0, но я бы предпочел просто воспроизводить звук на том уровне громкости, на котором у пользователя установлен звонок iphone.

По умолчанию для избавления от свойства тома установлено значение 1.0.

Это кажется тривиальным, но я нигде не могу найти ссылку на него.

Спасибо большое!

Ответы [ 2 ]

4 голосов
/ 05 марта 2009

Громкость, которую вы установили для экземпляра AVAudioPlayer, является просто относительной громкостью, например, если вы хотите воспроизвести два звука, один на половину громкости другого, вы установите первый на 0,5, а второй на 1,0.

Реальная громкость устройства контролируется только пользователем и не может быть изменена программно. ( Инструкции по кодированию аудио и видео - Как получить доступ к аппаратному контроллеру громкости? )

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

1 голос
/ 05 марта 2009

Я следую за изменениями оборудования, устанавливая этот обратный вызов

AudioSessionAddPropertyListener(kAudioSessionProperty_CurrentHardwareOutputVolume, audioVolumeChangeListenerCallback, self);

Но по какой-то причине я пришел к выводу, что для получения исходного состояния требуется неопубликованный вызов API. Я не могу вспомнить в данный момент. Может быть, эта информация поможет вам начать в правильном направлении!

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