[Flac-dev] Re: FLAC: same features as WavPack
Brian Willoughby
brianw at sounds.wa.com
Thu Mar 29 12:07:25 PDT 2007
Hi Henry,
32-bit float has exactly the same precision as 24-bit int. I'm not
sure what the reference encoder does, but it would be possible to
write an encoder based on the FLAC library which converts 32-bit
float to 24-bit int when creating a FLAC-compressed file. You could
also do the 32-bit float-to-24-bit int conversion with another tool
before using the standard flac encoder. There would be no loss of
data so long as the original audio does not exceed +-1.0 in floating
point, in which case you'd need some way to handle clipping. 32-bit
float really only has an advantage for intermediate stages of audio
processing where it might not be a good thing to require clipping or
peak limiting until a later stage.
32-bit int has more precision than 32-float, albeit less dynamic
range. However, there are no 32-bit A/D converters out there, and we
really only need about 18.5 bits in any listening environment, so 32-
bit integer is not very useful. It shouldn't be difficult to write
an encoder/decoder which supports 32-bit integer. There is at least
one independent FLAC implementation, but I have no idea whether it is
open-source or supports 32-bit.
As it stands, FLAC is perfectly suited for compression and archival
of all original recordings and all final masters of audio material.
Only engineers and experimental researchers would need 32-bit for
their intermediate storage, and I believe it is typical to not
compress intermediate storage anyway. In other words, there's no
real point for this support in FLAC, which is why it isn't there.
Do you have a specific need? ... other than to see the support
listed as a bullet item on the feature list?
Brian Willoughby
Sound Consulting
On Mar 29, 2007, at 10:24, Harry Sack wrote:
Hi,
I have read this on a forum:
'FLAC supports 24-bit audio fine. My understanding is that the FLAC
format also handles 32-bit ints, but the reference encoder does not
implement it, and FLAC has no support for float data. WavPack handles
all integer bitdepths up to 32-bit and also 32-bit floats.
Both codecs handle all sampling rates.'
I was wondering if there are plans to support 32-bit ints and float
data in the future, like WavPack does.
thanks in advance
More information about the Flac-dev
mailing list