So, yesterday Andrew Turner (of #amarok), told me that our VLC played AAC files incorrectly, while it works in Ubuntu. Fear to lose to Ubuntu, I tried to find a solution 😉
The cause is probably in the fact that we had to change libfaad2 to be able to use it on 64-bit systems, so VLC is not updated to know how to use our version correctly. This isn’t rare but luckily not even too widespread.
As fixing faad2 was out of discussion for me, considering the whole headaches that I got with it, I looked at ffmpeg, that’s now using faad2 for decoding but soon will have its own full-fledged AAC decoder that will solve all our issues. Unfortunately VLC blacklisted ffmpeg’s AAC decoding part deeming it broken. It doesn’t seem broken to me here, they probably were referring to older version of ffmpeg, so I decided to remove that blacklist.
The new 0.8.5-r2 version of VLC then features the new setup: no more aac useflag on vlc itself, and instead it relies on ffmpeg’s aac useflag. This way it will automatically switch to ffmpeg’s new decoder when it will be present 🙂
Now that the VLC part is done, a little note about xine. It seems to me like the FLAC demuxer is kinda broken, so I’d actually like to learn better the whole structure of demuxing in xine and try to write a new one that works, unfortunately this plan is probably going to move forward only when I have free time, as between Gentoo and jobs I don’t really have much of it. Sometimes I’d like to find a way to be paid to work on multimedia 😛