使用Java Sound API关于采样率和帧速率大小的问题

时间:2011-04-11 18:55:25

标签: java api audio format

我继承了一些使用Java的SourceDataLine Sound API的代码。

下面是他们如何设置AudioFormat对象。将帧速率和采样率设置为相同似乎很奇怪。这有任何意义吗?此外,还有20000000帧速率或采样率吗?我们的耳朵听起来不像20000吗?

AudioFormat af = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, 20000000, 16, 1, 2, 20000000, true);

1 个答案:

答案 0 :(得分:1)

如果流以PCM格式编码且未压缩,则帧包含每个通道的样本,包含一个时间索引。如果流被压缩,则帧包含每个通道的样本,但是包含一个或多个时间索引。帧的确切结构取决于压缩类型。

查看AudioFormat类定义以获取更多详细信息: http://download.oracle.com/javase/6/docs/api/javax/sound/sampled/AudioFormat.html

大多数音响系统认为人耳的最高频率为22KHz,这就是为什么你得到44KHz的采样频率(根据Niquist规则)。

相关问题