iTunes Plus preset reverse engineered
2009-03-15 02:47:35
There have been reports that iTunes Plus files are not exactly the same as those produced by the 256 CBR/ABR/VBR encoder settings. Is there some candy Apple is hiding from anything not bearing the Plus brand? After a recent wave of opinionated ponies (iPods suck, MP3 sucks, MiniDisc rulez, etc.) infiltrating the forums, I thought it was time for some bare facts again and started my investigation. It should be possible to generate a very accurate mapping from encoder settings to total file size, presumed that you use a source file of a certain length and complexity. I chose "The Hero's Works of Peace" from "A Hero's Life" by Richard Strauss, by Fritz Reiner and the Chicago Symphony Orchestra. The track has some high pitched noise very hard to encode. Quicktime's True VBR setting goes up to 222kbit/s over the whole file. It turned out that iTunes and XLD use slightly different MP4/M4A containers (probably just different padding), so that precise matching by size wasn't possible. So I extracted the raw AAC streams and got the following interesting results:49309724 test.wav 10631152 test_qt256vbrconstrained_min.m4a.t1 10455702 test_itplus.m4a.t1 10455702 test_qt256vbrconstrained_max.m4a.t1 10397532 test_it256vbr.m4a.t1 10397532 test_qt256vbrconstrained_med.m4a.t1 9163130 test_it256.m4a.t1 9163130 test_qt256abr_med.m4a.t1 9160622 test_qt256abr_max.m4a.t1 9031180 test_qt256cbr_max.m4a.t1 9031138 test_qt256cbr_med.m4a.t1 7860826 test_qttruevbrq127.m4a.t1 "min/med/max" refers to encoder quality (possible values: min,low,med,high,max). Conclusions: iTunes' standard setting is identical to Quicktime's ABR setting at medium encoding quality. iTunes' VBR setting is identical to Quicktime's VBR constrained setting at medium encoding quality. iTunes Plus is identical to Quicktime's VBR constrained 256kbit/s setting at maximum encoding quality. All for iTunes 8.1 / Quicktime 7.6. Track length: 4:40 min.