External FFmpeg cleaning

This series of commits cleans up legacy ffmpeg support that is useless (xbmc wont build against such old versions) and simplifies the code.