lavf: add probe device API

Adds new API dedicated for output devices.

This API allows to
- Test device with provided configuration
  Audio devices params:
    - device name
    - codec
    - sample format
    - channel count
    - channels layout
    - sample rate
  Video devices params:
    - device name
    - codec
    - pixel format
    - width (minimal width as input and real width as output)
    - height (minimal height as input and real height as output)

- Get all supported configurations matching provided filter.
  Filter may contain any subset of Audio/Video device params.

Behaviour of probe function can also be modified by flags.

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
lavd/fbdev_enc: add default device

Use device specified by environment variable FRAMEBUFFER or /dev/fb0 as default.

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
lavd/fbdev_enc: implement probe device

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
lavd/pulse_audio_enc: implement probe device

PulseAudio output device can be queried for valid configurations.
Wanted configuration may be passed to limit output for expected configuration.
Configuration are validated by initializing the device.

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
lavd/xv implement probe device
libavengine
pause
opengl
remove config.h
fix error handling
* add callbacks to AVFormatContext