lavr: make sure that the mix function is reset even if no mixing will be done

If the matrix reduction ends up with no mixing matrix needed, we need to still
reset the mix function accordingly and log the info to the user.
lavr: cosmetics: reindent
lavr: fix matrix reduction for upmixing in certain cases

Do not skip an output if the corresponding input contributes to other output
channels.
lavr: fix mixing matrix reduction when normalization is disabled

In some cases when an input contributes fully to the corresponding
output, other inputs may also contribute to the same output. This is the
case, for example, for the default 5.1 to stereo downmix matrix without
normalization.
dsputil: Move STRIDE_ALIGN macro to the only place it is used
doc/platform: Fix 10l typo

This error was somehow missed for months.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
avutil: Move emms code to x86-specific header
configure: Move MinGW CPPFLAGS setting to libc section, where it belongs
avutil: Ensure that emms_c is always defined, even on non-x86
h264idct: Replace duplicate scan8 table by appropriate #include
sparc: dsputil: Simplify high_bit_depth checks
vf_yadif: factorize initializing the filtering callbacks

Do it all in config_props().
vf_yadif: fix out-of line reads

Some changes in the border pixels, visually indistinguishable.
get_buffer(): do not initialize the data.

There may be more decoders that rely on this. Those should be found and
fixed.
h264: simplify calls to ff_er_add_slice().

partitioned_frame is never set for h264 (as easily seen from git grep).
h264: remove a pointless if()

!encoding is always true, we do not have a H.264 encoder
svq3: remove a pointless if()

The H264 context is always uninitialized at this point.
error_resilience: decouple ER from MpegEncContext
mpegvideo: split ff_draw_horiz_band().

Split out dependency on MpegEncContext.
h264: deMpegEncContextize

Most of the changes are just trivial are just trivial replacements of
fields from MpegEncContext with equivalent fields in H264Context.
Everything in h264* other than h264.c are those trivial changes.

The nontrivial parts are:
1) extracting a simplified version of the frame management code from
   mpegvideo.c. We don't need last/next_picture anymore, since h264 uses
   its own more complex system already and those were set only to appease
   the mpegvideo parts.
2) some tables that need to be allocated/freed in appropriate places.
3) hwaccels -- mostly trivial replacements.
   for dxva, the draw_horiz_band() call is moved from
   ff_dxva2_common_end_frame() to per-codec end_frame() callbacks,
   because it's now different for h264 and MpegEncContext-based
   decoders.
4) svq3 -- it does not use h264 complex reference system, so I just
   added some very simplistic frame management instead and dropped the
   use of ff_h264_frame_start(). Because of this I also had to move some
   initialization code to svq3.

Additional fixes for chroma format and bit depth changes by
Janne Grunau <janne-libav@jannau.net>

Signed-off-by: Anton Khirnov <anton@khirnov.net>