Iphone 录制语音的AVAudioRecorder设置是否正确?

Iphone 录制语音的AVAudioRecorder设置是否正确?,iphone,avaudiorecorder,Iphone,Avaudiorecorder,我正在使用AVAudioRecorder添加语音备忘录功能,我需要知道录音机录制语音的最佳设置 不幸的是,我对音频一无所知,甚至不知道谷歌用什么术语 目前,我正在使用从某处复制的以下内容进行测试: recorderSettingsDict=[[NSDictionary alloc] initWithObjectsAndKeys:[NSNumber numberWithInt:kAudioFormatAppleIMA4],AVFormatIDKey,

我正在使用AVAudioRecorder添加语音备忘录功能,我需要知道录音机录制语音的最佳设置

不幸的是,我对音频一无所知,甚至不知道谷歌用什么术语

目前,我正在使用从某处复制的以下内容进行测试:

recorderSettingsDict=[[NSDictionary alloc] initWithObjectsAndKeys:[NSNumber numberWithInt:kAudioFormatAppleIMA4],AVFormatIDKey,
                        [NSNumber numberWithInt:44100.0],AVSampleRateKey,
                        [NSNumber numberWithInt: 2],AVNumberOfChannelsKey,
                        [NSNumber numberWithInt:16],AVLinearPCMBitDepthKey,
                        [NSNumber numberWithBool:NO],AVLinearPCMIsBigEndianKey,
                        [NSNumber numberWithBool:NO],AVLinearPCMIsFloatKey,
                        nil];
或:

这是可行的,但我不知道它在质量、速度、文件大小等方面是否最适合语音

但是我不知道该用哪一个作为声音

值得一提的是,如果有人知道一个好的“Dummy的音频格式”资源,我也会接受。(注意:我已经阅读了苹果的文档,他们假设我没有数字音频方面的知识库。)

你会想阅读标题为“在iPhone操作系统中使用声音”的部分,以及。(编辑:这些链接已过时,iPhone操作系统中的“使用声音”已从当前的应用程序编程指南中编辑出来,但已更新并移动。)

人类声音中的大多数声音处于人类听觉的中间范围。即使以极低的数据速率进行数字化,记录的语音也很容易理解。你可以在一段录音中到处跺脚,但仍然有一个有用的文件。因此,您对这些录音的最终使用将指导您对这些设置的决定

首先,您需要选择音频格式。您的选择将由您录制音频后想要对其执行的操作决定。您当前的选择是IMA4。也许你会想要不同的格式,但IMA4是iPhone的不错选择。它是一种快速编码方案,因此对于有限的iPhone处理器来说不会太费力,而且它提供4:1压缩,因此不会占用太多存储空间。根据您选择的格式,您需要进行进一步的设置

您当前的采样率为44.1 kHz,与CD音频的标准相同。除非你想要高保真度的录音,否则你不需要这么高的速率,但你不想使用任意速率。大多数音频软件只能理解特定步骤的速率,如32 kHz、24 kHz、16 kHz或12 kHz

对于立体声,您的频道数设置为2。除非您使用其他硬件,否则iPhone只有一个麦克风,一个单声道就足够了。这将使您的数据需求减半


您使用的三种线性PCM设置似乎仅适用于线性PCM格式的录制。我认为它们对您的代码没有影响,因为您使用的是IMA4格式。我不知道IMA4格式能很好地告诉你你需要做哪些设置,所以如果你决定继续使用这个设置,你就必须做一些额外的研究。

< P>一个要考虑的事情是,传统的陆上语音公司——自从数字化以来,使用了8位,7KHz的采样。这就是为什么主干线有这么大的尺寸。一个T1 20 64k通道,这为56k的语音数据以及他们需要的任何管理元数据留下了一点开销


所以,如果你想要盆的质量,8b/7KHz就可以了。根据您的需要进行调整。

伙计,我认为在iPad发布当天发布这篇文章是一个战术错误。感谢您花时间写下这样一个答案,但正如我在OP中所说,苹果的文档并没有说明什么设置最适合语音。有关频道和采样率的信息很有用。好的,如果我制作语音备忘录用于录制备忘录的应用程序,我会将AVFormatIDKey设置为kAudioFormatAppleIMA4,AVSampleRateKey设置为16000.0,AVNumberOfChannelsKey设置为1,其他所有设置都保留为默认值。回答很好,谢谢。Fwiw,WWDC 2010的一些非常好的会议也涵盖了这个主题。特别是这本书充满了好的信息。该演示文稿中的内容也非常有用。特别是看幻灯片51和52。我仍然建议使用2个频道,因为用户可以使用耳机收听录音,更不用说通过电子邮件将文件发送到计算机。kiok45-在发帖6年后回复并抱怨链接中断是没有效果的;也许分享更新的链接吧!否则,指出它并继续前进是你最好的选择;这同样正确,只是苹果改变了他们的页面。
defaultSettings =     {
    AVFormatIDKey = 1768775988;
    AVLinearPCMBitDepthKey = 16;
    AVLinearPCMIsBigEndianKey = 0;
    AVLinearPCMIsFloatKey = 0;
    AVNumberOfChannelsKey = 2;
    AVSampleRateKey = 44100;
};