// Init audio with record capability
audioSession = [AVAudioSession sharedInstance];
[audioSession setActive:YES error:nil];
[audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
NSMutableDictionary *recordSettings = [[NSMutableDictionary alloc] initWithCapacity:10];
if(recordEncoding == ENC_PCM)
{
[recordSettings setObject:[NSNumber numberWithInt: kAudioFormatLinearPCM] forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithFloat:44100.0] forKey: AVSampleRateKey];
[recordSettings setObject:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];
[recordSettings setObject:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSettings setObject:[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsBigEndianKey];
[recordSettings setObject:[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsFloatKey];
}
else
{
NSNumber *formatObject;
switch (recordEncoding) {
case (ENC_AAC):
formatObject = [NSNumber numberWithInt: kAudioFormatMPEG4AAC];
break;
case (ENC_ALAC):
formatObject = [NSNumber numberWithInt: kAudioFormatAppleLossless];
break;
case (ENC_IMA4):
formatObject = [NSNumber numberWithInt: kAudioFormatAppleIMA4];
break;
case (ENC_ILBC):
formatObject = [NSNumber numberWithInt: kAudioFormatiLBC];
break;
case (ENC_ULAW):
formatObject = [NSNumber numberWithInt: kAudioFormatULaw];
break;
default:
formatObject = [NSNumber numberWithInt: kAudioFormatAppleIMA4];
}
[recordSettings setObject:formatObject forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithFloat:44100.0] forKey: AVSampleRateKey];
[recordSettings setObject:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];
[recordSettings setObject:[NSNumber numberWithInt:12800] forKey:AVEncoderBitRateKey];
[recordSettings setObject:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSettings setObject:[NSNumber numberWithInt: AVAudioQualityHigh] forKey: AVEncoderAudioQualityKey];
}
回答
尝试记录与此问题的设置:
iphone-peakPowerForChannel function in AVAudioRecorder doesn't work
的设置使用似乎有从你使用的手机有点不同。
使用此recoed设置AVAudioRecorder ....
recordSetting = [[NSMutableDictionary alloc] init];
[recordSetting setValue :[NSNumber numberWithInt:kAudioFormatLinearPCM] forKey:AVFormatIDKey];
[recordSetting setValue:[NSNumber numberWithFloat:44100.0] forKey:AVSampleRateKey];
[recordSetting setValue:[NSNumber numberWithInt: 2] forKey:AVNumberOfChannelsKey];
[recordSetting setValue :[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSetting setValue :[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsBigEndianKey];
[recordSetting setValue :[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsFloatKey];
它的工作,我都做到了......
问候
它的工作,但我的问题是,录制完成后,整个应用程序的声音是非常低 – 2011-05-07 09:00:14
雅,DUDE ..但检查有关录制你之前创建的字典..而且我只发布录音字典..之后你需要在AVAudioRecorder使用dictionnary .. – 2011-05-07 09:30:01
雅亲爱的我已经添加字典在avrecorder,但问题相同,请帮助,如果你有任何想法谢谢 – 2011-05-07 11:00:27
- 1. Wasapi音频质量
- 2. 使用ffmpeg从视频中提取低/质量好的音频
- 3. 控制MediaPlayer的音频质量
- 4. 与Microsoft Translator的低音频质量
- 5. 如何在Android中录制质量更好的音频文件?
- 6. 谷歌语音API - 识别base64编码音频
- 7. 提高Android音频录制质量?
- 8. Linux音频记录和质量比较
- 9. 改善NAudio Mp3音频质量
- 10. Google的云语音API语音音量
- 11. QTextStream重音编码
- 12. 音频/语音可视化
- 13. 音频/语音网络RTC
- 14. 编码音量条
- 15. 视频/音频编码/解码/播放
- 16. 压缩音频编码
- 17. html5音频编解码器
- 18. 学习编程的好的音频源?
- 19. ffmpeg重新编码h264 mp4修剪多余的音频
- 20. 睡眠期间的音频重新编码 - Android
- 21. 第一次音频重新编码的权限获取问题
- 22. OnTriggerEnter重新启动音频
- 23. FFmpeg的音频编码器的新编码功能
- 24. 使用网络音频播放编码的音频流Api
- 25. Tumblr音频后期编码不工作
- 26. 如何判断音频/视频编解码器是否“好”?
- 27. 使用Twilio可编程语音SDK的通话质量很差
- 28. IPhone音频:音量微弱的(但好带耳机)
- 29. 重现音频
- 30. 录制/播放声音时音质不好 - Android SDK
代码工作,但语音质量不达标标记请帮助我谢谢 – 2011-05-07 04:21:11