[Libav-user] CoreAudio (CAF/AAC) missing packet table

Chris Ballinger chrisballinger at gmail.com
Thu Jan 5 07:41:22 CET 2012

Hi, I've been developing the iPhone version of Cop
Recorder<http://www.openwatch.net/> but
we have been getting some corrupted .caf (Core Audio container) files that
are missing a valid packet table. I assume this is because we aren't
properly stopping the recording when a device is multitasking, but I
haven't been able to isolate the bug and we have a few corrupted recordings
now. I'd like to salvage as many recordings as we can, because the only
thing we seem to be missing is the packet table.

ffmpeg reports the following:

> [caf @ 0x7fbee284ac00] Missing packet table. It is required when block
> size or frame size are variable.

The CAF specificiation<http://developer.apple.com/library/mac/#documentation/MusicAudio/Reference/CAFSpec/CAF_spec/CAF_spec.html#//apple_ref/doc/uid/TP40001862-CH210-DontLinkElementID_64>

> "Variable bit rate, constant number of frames per packet (such as AAC and
> variable-bit-rate MP3): mBytesPerPacket is zero, mFramesPerPacket is
> nonzero.
> The Packet Table chunk data section contains single-number entries that
> describe the size, in bytes, of each packet in the Audio Data chunk."

Valid CAF file containing AAC<http://chrisballinger.info/files/1309554492.caf>
Corrupted CAF file missing packet table at end of

Do you guys have any ideas? It seems that these are CBR AAC files so
hopefully there might be a way to generate the packet table afterwards?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ffmpeg.org/pipermail/libav-user/attachments/20120105/2cf885d8/attachment.html>

More information about the Libav-user mailing list