我正在運行iOS 4.3.2。iPad處理不當路線改變揚聲器 - >耳機
- 我在我的iPad上啓動我的應用程序(沒有插入任何東西)。
- 音頻作品。
- 我插入耳機。
- 沒有音頻,既不來自iPad,也不來自耳機。
- 我拔掉耳機,去(2)
或者:
- 我開始我的應用程序在我的iPad在插入耳機
- 音頻出來的耳機。
- 我拔下耳機。
- 現在音頻來自iPad。
- 我插入耳機。
- 沒有音頻,既不來自iPad,也不來自耳機。
- 我再次打開耳機,轉到(4)。
這裏是我的音頻會議代碼:
@implementation AudioSession
+ (void) CreateAudioSessionWithInterruptionListener: (AudioSessionInterruptionListener) interruptionListener
returningSampleRate: (Float64 *) pHWSampleRate
{
OSStatus result = AudioSessionInitialize(NULL, NULL, interruptionListener, self);
if (result != kAudioSessionNoError)
{
NSLog(@"AudioSessionInitialize(...) failed!");
return;
}
SET_PROPERTY(kAudioSessionProperty_AudioCategory, UInt32, kAudioSessionCategory_PlayAndRecord);
SET_PROPERTY(kAudioSessionProperty_OverrideCategoryMixWithOthers, UInt32, (UInt32) YES );
SET_PROPERTY(kAudioSessionProperty_PreferredHardwareIOBufferDuration, Float32, .005 );
// GET not set h/w sampleRate
// Float64 hwSampleRate;
// UInt32 size = sizeof(Float64);
AssertOK(AudioSessionGetProperty(
kAudioSessionProperty_CurrentHardwareSampleRate,
& (UInt32) { sizeof(Float64) },
pHWSampleRate),
@"couldn't get hw sample rate");
//NSAssert(size == sizeof(Float64);
NSLog(@"H/W SampleRate: %d", (int) (* pHWSampleRate));
AssertOK(AudioSessionSetActive(true),
@"couldn't set audio session active\n");
}
什麼版本的操作系統? – 2011-04-28 13:04:42
對不起,我將更新問題 – 2011-04-28 14:09:43
如何配置應用程序的音頻會話?你是否正在處理任何AudioSession路由更改通知? – hotpaw2 2011-04-28 22:55:11