[Ardour-Dev] libsndfile

Ralf Mattes rm at mh-freiburg.de
Sat May 10 12:21:29 PDT 2008

On Sat, 10 May 2008 11:13:45 +0000, John Emmas wrote:

> Hi everyone,
> I need to do some work to 'harmonize' 24-bit audio between AAF and Ardour
> (prior to releasing an AAF importer for Ardour).  One problem is that AAF
> implements a special 24-bit data type (i.e. 3 bytes per sample) whereas
> libsndfile internalizes 24-bit audio to 32-bit floats.
> One way that I'm considering is to treat the imported audio as raw data and
> use libsndfile's 'raw' reading and writing functions.  Because sound files
> are often 'endian' I need to know whether or not to byte swap the data.
> libsndfile includes a new SF_COMMAND called SFC_RAW_NEEDS_ENDSWAP
> to serve this purpose.  Unfortunately, it was only introduced a few months
> ago and (whilst my copy of Ardour isn't the most recent) I think it's recent
> enough to see that this new command isn't included in the version of
> libsndfile that we use in Ardour.
> A temporary kludge might be 

Kludges _never_ are temporary.

> for me to assume that Ardour is only ever
> run on little-endian platforms but is that a dangerous assumption?  If
> there's anyone out there running Ardour on a big-endian platform (e.g.
> some Motorola processors) please speak up now....  :-)

I personally use LinuxPPC/32 which definitely is right-endian :-) 
One of the most frustrating things I learned using these boxes is: Linux
developers seem forget about the non-Intel platforms (it's also one of the
most _audible_ things ...).
Cheers, Ralf Mattes

> Thanks,
> John

More information about the Ardour-Dev mailing list