[已解决] AVAudioRecorder 录音,编码问题

本文探讨了在iOS平台上使用AVAudioRecorder进行录音时,如何选择既能保证音质又能让录音文件保持较小体积的音频格式。介绍了iPhoneOS支持的音频回放与录制格式,并分析了不同格式的特性和适用场景。
摘要由CSDN通过智能技术生成
大家好,我想用AVAudioRecorder实现录音回放功能,其中

        NSMutableDictionary* recordSetting = [[NSMutableDictionary alloc] init];

        [recordSetting setValue :[NSNumber numberWithInt:kAudioFormatAMR] forKey:AVFormatIDKey];

        [recordSetting setValue:[NSNumber numberWithFloat:44100.0] forKey:AVSampleRateKey];

        [recordSetting setValue:[NSNumber numberWithInt: 2] forKey:AVNumberOfChannelsKey];


        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,

                                                             NSUserDomainMask, YES);

        NSString *documentsDirectory = [paths objectAtIndex:0];

        recordedTmpFile = [NSURL fileURLWithPath:[documentsDirectory stringByAppendingPathComponent: [NSString stringWithFormat: @"test%d.%@",01, @"caf"]]];

        recorder = [[ AVAudioRecorder alloc] initWithURL:recordedTmpFile settings:recordSetting error:&error];

        [recorder setDelegate:self];

        [recorder prepareToRecord];

        [recorder record];



红色部分代码,iphone sdk只支持几种编码格式,当然不包括
kAudioFormatAMR 我想知道,录音用什么格式,能够保证音效的情况下,使录音文件尽量小啊?

 

下面是一些iPhone OS支持的音频回放格式:

AAC
HE-AAC
AMR (Adaptive Multi-Rate,是一种语音格式)
ALAC (Apple Lossless)
iLBC (互联网Low Bitrate Codec,另一种语音格式)
IMA4 (IMA/ADPCM)
线性PCM (无压缩)
µ-law和a-law
MP3 (MPEG-1 音频第3层)
下面是一些iPhone OS支持的音频录制格式:

ALAC (Apple Lossless)
iLBC (互联网Low Bitrate Codec,用于语音)
IMA/ADPCM (IMA4)
线性PCM
µ-law和a-law
下面的列表总结了iPhone OS如何支持单路或多路音频格式:

线性PCM和IMA4 (IMA/ADPCM) 在iPhone OS上,您可以同时播放多路线性PCM或IMA4声音,而不会导致CPU资源的问题。这一点同样适用于AMR和iLBC语音品质格式,以及µ-law和a-law压缩格式。在使用压缩格式时,请检查声音的品质,确保满足您的需要。
AAC、MP3、和ALAC (Apple Lossless) AAC、MP3、和ALAC声音的回放可以使用iPhone OS设备上高效的硬件解码,但是这些编解码器共用一个硬件路径,通过硬件,设备每次只能播放上述格式的一种。
AAC、MP3、和ALAC的回放共用同一硬件路径的事实会对“合作播放”风格的应用程序(比如虚拟钢琴)产生影响。如果用户在iPod程序上播放上述三种格式之一的音频,则您的应用程序—如果要和该音频一起播放声音—需要使用软件解码。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值