2012-09-24 45 views
1

我錄製的聲音與AVAudioRecorder(本教程http://www.tumblr.com/tagged/avaudiorecorder?before=1300075871),然後嘗試播放錄製的聲音與CocosDenshion:錄製的聲音不帶CocosDenshion打

CDSoundEngine* soundEngine = [[CDSoundEngine alloc] init]; 
NSArray *defs = [NSArray arrayWithObjects: [NSNumber numberWithInt:1],nil]; 
[soundEngine defineSourceGroups:defs]; 
//...... 
[soundEngine loadBuffer:1 filePath:[recorder.url path]]; 
[soundEngine playSound:1 sourceGroupId:0 pitch:2.0f pan:0 gain:1.0f loop:NO]; 

此代碼工作在模擬器罰款,但對設備(新iPad 2,iOS 5.1.1) - 聲音不播放。 我會嘗試用AVAudioPlayer播放錄製的聲音 - 它的播放效果很好,但我需要調節聲音,並發現使用CocosDenshion的是最簡單的方法。 我應該檢查或修復哪些設置或其他內容來播放錄製的聲音?

回答

0

問題解決了,我第一次改變了創建CDSoundEngine例如,使用CDAudioManager:

CDSoundEngine = [CDAudioManager sharedManager].soundEngine; 

然後,播放錄製的聲音設置模式爲CDAudioManager到kAMM_PlayAndRecord前:

[CDAudionManager sharedManager] setMode:kAMM_PlayAndRecord]; 

最後將AudioSession重定向到揚聲器:

UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker; 
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute, sizeof (audioRouteOverride),&audioRouteOverride); 

,一切正常。