2012-05-15 2 views
1

여러 AVAudioPlayer 및 하나의 AVAudioRecorder가있는 iPad 앱을 개발하고 있습니다. 이 아이디어는 배경 음악과 같은 주요 AvAudioPlayer의 사운드를 재생하고 다른 버튼을 만지면 AVAudioPlayers의 다른 사운드를 재생하여 배경 음악과 믹스합니다. 혼합 된 음악은 AVAudioRecorder에 의해 녹음됩니다. 이를 위해 AVAudioRecorder 및 AVAudioSessionCategoryPlayAndRecord로 마이크 입력을 무시합니다.

나는 구현 및 카테고리 AVAudioSessionCategoryPlayAndRecord와 AVAudioSession이 설정을 만들고 AVAudioRecorder 개체 :

NSDictionary *recordSetting = [NSDictionary dictionaryWithObjectsAndKeys: 
           [NSNumber numberWithInt:kAudioFormatAppleIMA4], AVFormatIDKey, 
           [NSNumber numberWithInt:AVAudioQualityHigh], AVEncoderAudioQualityKey, 
           [NSNumber numberWithInt:16], AVEncoderBitRateKey, 
           [NSNumber numberWithInt: 2], AVNumberOfChannelsKey, 
           [NSNumber numberWithFloat:44100.0], AVSampleRateKey, 
           nil]; 

모든 것이 잘 작동하지만 마이크의 입력은 너무 기록, 그리고 그것은 나를 위해 확인되지 않습니다.

녹음 과정에서 마이크 입력을 무시하고 바꾸거나 제거 할 수있는 방법은 무엇입니까?

Google 오랫동안 google을 사용하여 Apple 설명서에서 AVAudioSession 범주 및 모드, AVAudioRecorder 설정을 검색하면 아무 것도 작동하지 않습니다.

음소거 마이크도 검색하지만 iOS 기기에서는 읽을 수 없습니다.

도움을 주셔서 감사 드리며 영어로 글쓰기를 잘못해서 유감입니다.

+0

음, AVAudioSessionCategoryPlayAndRecord는 마이크에서 실제로 녹음하려는 경우 사용합니다. 실제로 여러 소스를 혼합하여 결과를 파일에 저장하려는 경우에는 아무 것도 멈추지 않습니다. 그것은 녹음으로 간주되지 않습니다. – hooleyhoop

답변

0

AVAudioRecorder API는 마이크에서 녹음하기위한 것입니다.

응용 프로그램에서 만드는 소리의 오디오 파일을 만들려면 응용 프로그램에서 소프트웨어로 오디오 믹싱 (믹서 오디오 단위 또는 자신의 DSP 코드)을 수행 한 다음 필요한 경우 압축하여 결과 오디오를 저장해야합니다 흐름.

+0

그게 전부 야. 문제는 AVAudioRecorder를 선택하는 것이 었습니다. Audio Unit Mixer로 바꿀 것입니다. 고마워. – cuicmex