nu774 / fdkaac

command line encoder frontend for libfdk-aac
Other
260 stars 58 forks source link

libFDKAAC SBR signaling mode 1 does not work in iTunes (HE AAC) #22

Closed gholzmann closed 8 years ago

gholzmann commented 8 years ago

Hallo!

When I encode HE-AAC files with fdkaac > 0.5.0, the encoded files do not play in iTunes (tested with version 12.4.3.1 on Windows). It seems that the explicit, backward compatible SBR signaling in libfdkaac does not work - see this commit: https://github.com/nu774/fdkaac/commit/71e47640625d1e4db5314a9db0236d82ac267338

If I use fdkaac 0.5.0, HE-AAC files also play in iTunes as they should.

So I guess it would be great if you use your own implementation of explicit, backward compatible SBR signaling again? It was introduced in the following commit: https://github.com/nu774/fdkaac/commit/9b8f9915c2cac2887e52bb38d263f171b5f7d69d

Thanks for fdkaac, LG Georg

nu774 commented 8 years ago

Well, I've just encoded with -p 5, and it seems that iTunes can open the resulting HE-AAC m4a file (fdkaac 0.6.2, libfdk-aac 3.4.12). The resulting decSpecificInfo in the esds box looks OK (actually, identical with a file encoded by qaac). Can you provide a sample file and the command line?

gholzmann commented 8 years ago

Thanks for the answer! It seems that it depends on the libfdk-aac version: I used libfdk-aac 3.3.3 before (as it is shipped in Ubuntu), but if I use libfdk-aac 3.4.12 it works as it should.

Sorry for the noise!

nu774 commented 8 years ago

It seems that behavior of SBR signaling mode=1 was updated in this commit of libfdk-aac: https://github.com/mstorsjo/fdk-aac/commit/dbf96806482b2c48de4ba1da9a03e2bb7516b8c2. Maybe I can resurrect the old implementation of our side and turn it on when older version of libfdk-aac is detected.

nu774 commented 8 years ago

Updated: https://github.com/nu774/fdkaac/commit/cf200f9563e455f734c2670c7802a7cf48998835