[Theora-dev] libtheora Bitrate Problem

Ralph Giles giles at xiph.org
Fri Aug 5 00:31:41 PDT 2005

On Fri, Aug 05, 2005 at 01:52:14AM -0500, Draco wrote:

> I assume 'kbps' is Kilobits Per Second (kbit/s) and 
> *theora_info.target_bitrate* is in Bits Per Second. 
> If this is true then shouldn't the argument (optarg) be multiplied by 
> 1024 and not 1000?  Or does it matter?

Well, it doesn't really matter, but traditionally bitrates are in base
10 units instead of base 2 like filesize. So a kilobyte of data is 1024
bytes, but 1 kbps is 1000 bits per second. so at 1 kbps it takes 8.192
seconds to send 1 kilobyte.

I think it's because the use of kbps in digital telecommunications
predates/evolved separately from the standardization on powers of 2
in computer data storage.

All of which makes the practice of using powers of 2 in compressed
audio bitrates quite strange. A 128 kbps MP3 file is 128000 bits per
second, or 2^7 * 10^3, not 2^17 or 131072 bits per second.


More information about the Theora-dev mailing list