Re: ExtAudioFile 4GB file size limitation on WAV files
Re: ExtAudioFile 4GB file size limitation on WAV files
- Subject: Re: ExtAudioFile 4GB file size limitation on WAV files
- From: Paul Davis <email@hidden>
- Date: Sat, 30 Apr 2011 12:34:04 -0400
On Sat, Apr 30, 2011 at 10:26 AM, Richard Dobson
<email@hidden> wrote:
> Rather
> a lot of developers (especially on Linux, for some reason!) think WAVE has a
> fixed-length header! So when many people talk about "the WAVE format", a lot
> of the time they have in mind a random mashup of incorrect and incomplete
> information.
this is one of the reasons why libraries like libsndfile are so
incredibly important. ardour used to have its own WAVE implementation
for its own files, partly in the interest of small improvements in
efficiency. but as usual, there were small errors, and in the end it
was more sensible to use a layer that accumulates the wisdom of all of
its users. i suspect that software that uses libsndfile (which at this
point is most, but not all, linux audio software) is probably more
compliant in handling the dozen+ formats that it supports that almost
anythng else.
unfortunately for some, libsndfile's license prevents it from playing
the same role in proprietary software, and i don't know of any
equivalent that dominates the landscape for audio file i/o in the
proprietary world. this is why its very hard to predict which windows
software will correctly handle an audio file that deviates even
slightly from the "44 byte header" non-rule .... os x seems slightly
better because of extaudio and its cousins, but they don't support the
full range of formats (still no BWF support - just incredible) and
they still seem to have the occasional bug that lingers for too long.
btw, there is nothing in the RIFF/WAVE spec that requires the "fmt "
header to come first. the only chunk that is required to be at the
front is the RIFF header. RIFF is fully chunked API exactly like AIFF
(the similarity in the names is no accident.) properly compliant
software will be entirely happy with any RIFF/WAVE file that has the
chunks in any order whatsoever. unfortunately, as you sort of noted,
there is a lot of stuff that isn't compliant and so sticking the 'fmt
' header at the other end of the file is not really practical.
--p
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden