【发布时间】:2012-07-31 12:41:09
【问题描述】:
从 Java 中的流中读取声音数据的低级实际格式是什么?例如,使用以下数据线,44.1khz 采样率,16 位采样深度,2 个通道,有符号数据,bigEndian 格式。
TargetDataLine tdLine = new TargetDataLine(new AudioFormat(44100,16,2,true,true));
我知道它每秒采样 44100 次,每个采样是 16 位。我不明白 16 位或 16 位中的每一个代表什么。另外,每个通道都有自己的 16 位采样吗?
【问题讨论】:
-
这16位组成一个数字,就是那个离散采样时声波的幅度,最终测得的值在-1到1之间。但是为什么底层数据格式重要吗?
-
我希望能够通过数据读取并挑选出特定频率的实例。
-
那你需要多学习more than the digital audio basics。 :) 扩展@IronMensan's answer,部分采样声音中包含的频率是振动膜在移动时产生的所有声波的波长。 This is computable,但很复杂,不是一门精确的科学。
标签: java audio recording audioformat