为什么许多音频播放器将我的单声道AAC(m4a)文件解释为立体声?

时间:2015-03-31 12:38:27

标签: ios avaudiorecorder aac m4a channels

在我的iPhone应用程序中,我使用monoAVAudioRecorder中的AAC(m4a容器)中录制音频文件,即我明确设置

[recordSettings setValue:[NSNumber numberWithInt: 1] forKey:AVNumberOfChannelsKey];

Audacity等音频编辑器中打开这些文件时,它们只会按预期显示一个频道。但是,有许多流行的音频播放器,如VLCfoobar2000,将文件解释为stereo。例如。当我在VLC中显示Media Information... > Codec Details时,它看起来像这样:

Screenshot VLC

有趣的是,在iPhone上使用Apple的 Voice Memo 应用程序录制的文件显示了相同的行为。它们似乎是几个音频播放器中的stereo个文件,但是当我在Audacity中打开它们时,它们只有一个频道。

我无法相信所有那些着名的媒体播放器都是错误的。那么有没有办法告诉AVAudioRecorder以某种方式设置频道号码,以便所有主要媒体播放器都能正确检测到它?

1 个答案:

答案 0 :(得分:1)

(我知道这是一个旧线程,但是为了 有人在这里搜寻...)答案似乎是 AAC(我假设您的编码器使用AAC-HE) 编码为两声道单声道-换句话说,音频 本身被缩混成单声道,但是它所在的文件 由两个独立的音频通道组成,每个通道 彼此相同的音频。 有趣的是,您安装的Audacity显然是 将其显示为一个渠道-我的将其显示为两个渠道至今 我发现没有办法将任何AAC编码的文件强制为一个 频道。