lavc: Compact the side-data passthrough
v4l2: Use av_strerror

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
v4l2: Preserve errno values

av_log usually resets it.
Merge commit 'e3e317e0c015b164b6c2eb8913e393216d78de23'

* commit 'e3e317e0c015b164b6c2eb8913e393216d78de23':
  lavc: Compact the side-data passthrough

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'a1a259881fa7b23e2ffc0c2a43d4923fe42d0478'

* commit 'a1a259881fa7b23e2ffc0c2a43d4923fe42d0478':
  v4l2: Use av_strerror

Conflicts:
	libavdevice/v4l2.c

See: 60950adc18fe145a235211e75da68ab07123fcaa
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '09f25533a564eab743f258d168697a11122914c4'

* commit '09f25533a564eab743f258d168697a11122914c4':
  v4l2: Preserve errno values

Conflicts:
	libavdevice/v4l2.c

See: 60950adc18fe145a235211e75da68ab07123fcaa
Merged-by: Michael Niedermayer <michaelni@gmx.at>
libfdk-aacdec: Support building with the latest version of fdk-aac

The latest fdk-aac code drop (from android 5.0) changed the channel
layout enums (changing the value of existing enum constants), and
renamed the option for downmixing.

The failsafe comparison between ctype and FF_ARRAY_ELEMS(channel_counts)
can trigger warnings (-Wtautological-constant-out-of-range-compare)
when building with the old FDK AAC releases, where it can't be
out of range with the enum values used there.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>