Hi Ken,

We covered this recently, but I recall it was on the FLAC (user) list.

The FLAC format cannot handle float directly. It can handle 32-bit integer, but no encoder exists. The maximum you can encode now, without writing your own software, is 24-bit integer.

The interesting situation is that we cannot listen to 32-bit float directly without converting to 24-bit integer, so FLAC is perfectly suited for finished audio works. You merely need to apply whatever 32-bit float to 24-bit integer conversion that you would use for general listening or commercial distribution, and then use FLAC on the 24-bit result. There are, however, many ways to do this, including truncation of fractional bits below the 24-bit integer LSB, or dithering. In addition, 32-bit audio which might later be combined into an final audio piece could potentially hold useful information which would be lost if converted to 24-bit integer.

I would say that FLAC is ideal for archival of original recordings and finished works, since 24-bit integer is the maximum depth handled by analog converters. The only real shortcoming is use on generated audio and intermediate mixes, either of which may contain fractional bits of potential significance in a final mix.

For your use, I would recommend using FLAC on the raw track input audio and your final mixes. FLAC would not be the best choice for intermediate bounces, but those can be regenerated from the raw track data anyway. It might be interesting to write a FLAC front-end for Ardour which looks for fractional bits when converting 32-bit float to FLAC, and warns you if there will be data loss.

Ogg Vorbis is a different algorithm and format, so it does not have the same limitations as the FLAC format. Ogg-FLAC would not be able to handle 32-bit float, and probably won't handle 32-bit integer until some new software is written.

Brian Willoughby
Sound Consulting


On Apr 22, 2007, at 12:16, Ken Restivo wrote:

I notice that FLAC can't handle "broadcast" WAV's in IEEE float format-- the native file format of Ardour and JACK, among other things. It also can't seem to handle 32-bit integer format either.

Right now I have to convert WAV's to 24-bit before FLAC'ing it, then when converting it back again I've lost those bits. It'd be more "lossless" if I could actually leave it in its native format (float), then FLAC it, and then bring it back from FLAC into its original format without loss. This'd be especially useful for backing up Ardour session directories.

Interestingly, Ogg Vorbis can and does handle IEEE float WAV's and 32- bit WAV's without any trouble at all.

- -ken

_______________________________________________
Flac-dev mailing list
Flac-dev@xiph.org
http://lists.xiph.org/mailman/listinfo/flac-dev

Reply via email to