Re: Calling ExtAudioFileDispose() on a large MP4 audio file causes a crash
Re: Calling ExtAudioFileDispose() on a large MP4 audio file causes a crash
- Subject: Re: Calling ExtAudioFileDispose() on a large MP4 audio file causes a crash
- From: Christopher Liscio <email@hidden>
- Date: Mon, 16 Nov 2009 20:57:43 -0500
Brian,
On Nov 16, 2009, at 8:11 PM, Brian Willoughby wrote:
> Unless you use CAF, Chris, you won't be able to record more than 2 GB anyway, and iPod won't handle files beyond 2 GB until it handles CAF. In other words, in order to support iPod, you have to keep the size below 2 GB.
This is not true, actually. MPEG-4 does have 64-bit variants of the sample table atoms (at the very least), and it would appear ExtAudioFile/AudioConverter does the right thing in this case from tests I ran in 10.5, prior to my launching 1.0 last May.
In my own testing, I was able to hit this 64-bit atom threshold somewhere past the 48h mark, but I don't recall the quality setting I used at that time.
Furthermore, the file size is only taken into account post-compression, as ExtAudioFile merrily compresses the audio as it's recorded.
I only know the 64-bit tags are generated because TapeDeck's MPEG-4 tag writing code doesn't currently handle those 64-bit atoms, and it tends to choke on those monster files. I'm pretty sure customers aren't going _that_ far in their recordings...
All in all, it _was_ (i.e. pre-10.6) a very robust setup for extremely long durations. iTunes even went as far as splitting these files to >1 CD when burning them as audio discs! Kudos to the iTunes team...
But I digress... :)
> When recording 2h+ meetings, does your application use music quality or speech quality? If you're guiding your customers to record meetings at music quality, then they're going to run into problems with long duration recordings anyway. I'm not familiar with your application, but perhaps you should record a 8 kHz for meetings, and I assume then you would not have problems going beyond 2 hours or even much longer than that.
I record straight to a compressed format with ExtAudioFile, and the LQ mode in TapeDeck uses a quality setting comparable to the iTunes audiobook format. It's 22kHz, 16-bit, 24kbps/48kbps mono/stereo AAC. It'll take a _long_ time to reach 2GB at this setting.
MQ is 64kbps/128kbps mono/stereo at 44.1kHz, and now HQ uses ALAC at 44.1k unless the user chooses to record beyond that rate (and yes, I expect to hit the 64-bit limitation I refer to above much sooner now in that case).
The trouble is that this bug appears to kick in regardless of the _destination_ file size. The 2h meeting in question was only 53.5 MB in size.
Cheers,
Chris Liscio
http://supermegaultragroovy.com
Learn _your_ music with Capo: http://capoapp.com _______________________________________________
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