octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: 24-bit wav files and other observations


From: Schirmacher, Rolf
Subject: RE: 24-bit wav files and other observations
Date: Mon, 25 Feb 2008 17:24:43 +0100

Although it is going to drift to off-topic, a few short comments:

> -----Original Message-----
> From: Przemek Klosowski [mailto:address@hidden
> Sent: Monday, February 25, 2008 4:54 PM
> To: address@hidden
> Subject: Re: 24-bit wav files and other observations
> 
> 
>    Well, probably few general-purpose systems.  There are many 24-bit
>    embedded processors, of course, and then there are plenty of data
>    files that use 24-bit data.  So, from an analytical standpoint
>    there are reasons for having 24-bit "native" types.  It's similar
>    to the situation that we have very few 8 bit CPU's anymore, but the
>    8-bit width "native" format is still ubiquitous.
> 
> Actually, most of the CPUs in existence are 8-bit; they are in your
> consumer appliances, calculators, cars, watches, etc etc. The
> prevalence of 8-bit data types has nothing to do with those,
> though---it just happens to be a convenient size with 
> granularity almost
> right to encode most human-language communication, and a lot of data
> if the required accuracy is not better than 0.4%.
> 
> If the 8-bit byte is ever dethroned, it will be by 
> internationalization
> (Unicode characters) and by the fact that control loops for things
> like motors, actuators, etc. barely work when the signal to 
> quantization
> noise ratio is 24dB (8-bit data) and really prefer 36 dB 
> (12-bit data) or
> 48 dB (16-bit data).

There is a misunderstanding here: A factor of 2 for the amplitude (i.e. the
number) gives an increase of 6 dB in the dynamic range (factor 2 in the
power of a signal would give 3 dB). So, the dynamic range is approx. <= 48
dB for 8 bit data, <= 72 dB for 12 bit data and <= 96 dB for 16 bit data
(this is what you typically read for CD audio signals, for example).

24 bit will give <= 144 dB dynamic range, which is above the dynamic range
of human hearing and also above reasonable analog electronics, so 24 bit
will stay sufficient for any kind of audio application (except, perhaps, for
intermediate data / accumulators at DSP, etc.)

> 
> 24 bit data is in the area of diminishing return: for 33% more space
> (32 bits) you get a dynamic range hike from 72 to 96 dB, and you don't
> have to deal with unaligned loads. Even in graphic cards, where
> essentially one throws away the fourth byte (bits 25-32), the 32-bit
> pixel is often used rather than the 24-bit pixel, just to make data
> moves easier.
> 

In the audio world, you often take 24 bit fixed and that is not diminishing.
Think about all the embedded audio processors (CD, mp3, ...). If you go to
32 bit, then you typically switch to floats because it is convenient not to
think about fixed point and dynamics... But this rarely happens at embedded
devices due to costs.

At GP processors, you often have 32 / 64 bit alingnments, so for GP
graphics, throwing away 33% of space might increase performance. Dedicated
hardware / embedded systems are different if production costs (and not
development costs) matter most.

Developing / simulating these kind of systems seems to be the driving force
for the int data types in octave.

Sorry to be slightly off-topic,

Rolf


reply via email to

[Prev in Thread] Current Thread [Next in Thread]