2009-11-24 2 views
2

Я пытаюсь увеличить громкость моего аудиовыхода, используя пример sayHere от Apple. Объем уже установлен на максимум с:Объем звука в разговоре Apple. Пример кода

// установить объем очереди XThrowIfError (AudioQueueSetParameter (mQueue, kAudioQueueParam_Volume, 1,0), "установить громкость очереди");

Однако выход направлен на громкоговоритель, который не такой громкий, как нижний левый громкоговоритель на iPhone. Пример этого можно хорошо увидеть в «Voice Memos», который поставляется с iPhone. Они обеспечивают «Speaker-Button», который переключает между двумя громкоговорителями. Кто-нибудь знает, как это делается? Что мне нужно для вывода моего аудио на нижний динамик? Любые советы, подсказки, ответы будут высоко оценены. Спасибо заранее Al

ответ

3

Вам необходимо установить проигрыватель в режим Speaker.

Добавьте этот код в AQPlayer.mm:

OSStatus error; 
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker; 
error = AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute, sizeof (audioRouteOverride), &audioRouteOverride); 
if (error) printf("couldn't set audio speaker!"); 

Перед этим кодом:

XThrowIfError (AudioQueueSetParameter(mQueue, kAudioQueueParam_Volume, 1.0), "set queue volume"); 

Я надеюсь, что это помогает.

+0

Отличный ответ, на самом деле работает :) – Anton

3

Взгляните на AudioSessionSetProperty, собственность kAudioSessionProperty_OverrideCategoryDefaultToSpeaker в частности.

2

взгляд на собственность kAudioSessionProperty_OverrideAudioRoute

Смежные вопросы