关于录音采样率

时间:2015-12-04 01:42:42

标签: audio record sampling rate

我们希望通过AudioRecord录制立体声音频信号,如下所示。 如果我们将采样率设置为44,100,则会记录立体声通道 在44,100Hz或22,050Hz?

根据我们的实施,似乎半采样频率应用于每个通道

AudioRecord audioInputStream = new AudioRecord(Media.Recorder.CAMCORDER,
sampleRate, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT,
samplesPerBuffer * bytesPerSample)

1 个答案:

答案 0 :(得分:1)

无论通道数是多少,采样率都是恒定的。因此,在44.1k的1个通道中,您每秒可获得44100个样本,而使用2个通道,您将获得每秒88200个总样本。

我并不真正了解您正在使用的API,但我可以指出一个可能出现的术语区域。这是样本和框架之间的差异。通常,您将一个样本视为一个帧,以包含每个通道的单个样本。因此,如果您遇到任何类似于此的API:process(double* samples, int numChannels, int numFrames)请注意缓冲区中的实际样本数为numChannels*numFrames。误解这样的东西肯定会导致消耗的样本数量减少一半。此外,一些API在使用numSrames等时会混淆地使用术语numSamples ......