我是音频编程的新手, 但我想知道bitRate的公式,
根据Wiki https://en.wikipedia.org/wiki/Bit_rate#Audio,
bit rate = sample rate X bit depth X channels
和
那为什么bit rate = sample rate X bit depth X channels
呢?
在我看来,如果bitDepth = 2
位,sample rate = 3 HZ
那么我可以在1秒内传输6位数据
例如:
Sample data = 00 //at 1/3 second.
Sample data = 01 //at 2/3 second.
Sample data = 10 //at 3/3 second.
所以我在1秒钟内转移了000110
,这是正确的逻辑吗?
答案 0 :(得分:0)
比特率是每个间隔(例如:每秒)预期的比特数。
声音周期以赫兹为单位,其中1 hertz == 1 second
。因此,要获取代表1秒钟音频的完整声音数据,您需要计算需要发送多少位(对于媒体播放器,他们会检查文件格式设置中的位速率,以便正确读取和播放)
为什么涉及渠道(
sample rate X bit-depth
还不够)?
在数字音频中,为每个“耳朵”(左/右声道)发送样本。相对于单声道而言,立体声中的样本数量总是 double 。通常会有一个“标志”来指定声音是立体声还是单声道。
逻辑示例:(无位深度,并假设每个采样为1位)...
有语音“ Hello”,以200个样本/秒的速率记录,比特率为100 /秒。会发生什么?
以上面的示例为例,您将在“音频编程新手” 体验中找到这些 audio gives slow/double speed
历险。解决方法是正确设置频道数量或正确设置比特率。祝你好运。
答案 1 :(得分:0)
“采样率”是每个通道的采样率。
因此,“采样率X比特深度”将为您提供单个通道的比特率。
然后您需要将其乘以通道数,以获得流过系统的总比特率。
例如,CD标准的采样速率为每秒44100个采样,位深度为16,则每个通道的位速率为705600,立体声的总位速率为1411200位/秒。