libav/ffmpeg: Move current lavc53.lavf53.lavu51 (version 8) header files to their sub-folders; Add lavc54.lavf54.lavu52 (version 9) header files

lavc54.lavf54.lavu52:
  - Begin testing w/ version 9
  - Header files are binary incompatible (data types)

Default is still lavc53.lavf53.lavu51
NullGLMediaPlayer: Fix reported VID (fake 0), no AID, textureCount == 2
libav/ffmpeg: Prepare for lavc54.lavf54.lavu52

- Add compile-time/runtime version check, fail if major versions do not match
  assuming binary incompatibility

- Add: 'av_find_input_format' for future video input support

- Manually map '/dev/video<NUM>' to video input - not working yet.
  - WINDOWS: Set file to '<NUM>'
  - Set input format string depending on OS
ffmpeg/libav: lavc54.lavf54.lavu52 -> lavc54.lavf54.lavu52.lavr01: Adding libavresample of version 9
ffmpeg/libav: remove unsued header files
AudioSink: Fixe type names ; Enhance AudioFormat negotiation ; ALAudioSink adds AL_SOFT_buffer_samples support w/ full AL caps

- Fixe type names:
  - Remove AudioDataType, we only support PCM here anyways
  - AudioDataFormat -> AudioFormat / Add 'planar' attribute to distingush packed/planar data type
  - Validate float types

- Enhance AudioFormat negotiation
  - Add 'isSupported(AudioFormat format)' which _shall_ be used before 'init(..)'
    to test/negotiate format
  - Add getMaxSupportedChannels(), which may be used w/ getPreferredFormat() if orig requested format fails
    via 'isSupported(..)'
  - 'init(..)' returns boolean only.

- ALAudioSink adds AL_SOFT_buffer_samples support w/ full AL caps
  - Determine whether AL_SOFT_buffer_samples is supported
  - Use new JOAL ALHelper to convert AudioFormat -> AL-types,
    which also answers the 'isSupported(..)' query.
  - Now allows multiple: channles, sample-types, etc.
libav/ffmpeg: version9: Add libavresample support ; Proper AudioFormat negotiation w/ AudioSink; Misc

- Add libavresample support
  - Resample if avail && (!AV_SAMPLE_FMT_S16 || !prefSampleRate || !sinkSupported)
  - Resample to: prefSampleRate (if set), AV_SAMPLE_FMT_S16 and min(channelCount, maxChannelCount)

- Proper AudioFormat negotiation w/ AudioSink;
  - Utilize AudioSink's 'isSupported(AudioFormat)'

- Misc
  - use 'av_get_bytes_per_sample(fmt)' always, don't assume 2
ffmpeg/libav: Remove 'dead' audio/video frame count relation snoop-code
libav/ffmpeg: Compile/Link 2 versions of native FFMPEGMediaPlayer methods FFMPEGNatives -> FFMPEGv08Natives + FFMPEGv09Natives

Enables FFMPEGMediaPlayer to work w/ either ffmpeg/libav version 8 or 9 w/ same JOGL binary

Same C source code is compiled against
  1: version 0.8  FFMPEGv08Natives lavc53.lavf53.lavu51
  2: version 0.9  FFMPEGv09Natives lavc54.lavf54.lavu52.lavr01

FFMPEGv08Natives and FFMPEGv09Natives implements FFMPEGNatives,
native C code uses CPP '##' macro concatenation to produce unique function names.

To enable 'cpp' to find the libav* header files matching the desired version,
we have placed them in the c-file's folder, issued '#include "path/file.h"
and added symbolic links to allow finding same module and 'sister modules':

ls -l libavformat/
..
lrwxrwxrwx 1 sven sven    13 Aug 26 12:56 libavcodec -> ../libavcodec
lrwxrwxrwx 1 sven sven    14 Aug 26 12:56 libavformat -> ../libavformat
lrwxrwxrwx 1 sven sven    12 Aug 26 12:57 libavutil -> ../libavutil
..

At static init FFMPEGDynamicLibraryBundleInfo, determines the runtime version
and instantiates the matching FFMPEGNatives, or null if non matches.

FFMPEGMediaPlayer still compares the compile-time and runtime versions.

FFMPEGMediaPlayer passes it's own instance to FFMPEGNatives for callbacks.