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
ffplay: remove refresh thread to achieve more precise frame delay

We use a refresh loop which displays the frames and also does the polling for
pending events in a non-blocking way. If we know the required delay until the
next frame, then exactly that amount of sleeping will be done. After each
handled event we check if we have to display a frame which kind of makes
displaying the frame a high priority event.

This improves greatly the smoothness of the video output especially with 50fps
content.

Signed-off-by: Marton Balint <cus@passwd.hu>
ffplay: remove remains of video_clock

We are now using a pts based approach, libavutil/libavcodec should provide the
correct pts-es anyway. This also fixes an issue when seeking to a frame with a
pts set to zero.

Signed-off-by: Marton Balint <cus@passwd.hu>
h264idct: Replace duplicate scan8 table by appropriate #include
sparc: dsputil: Simplify high_bit_depth checks
Merge commit '4db96649ca700db563d9da4ebe70bf9fc4c7a6ba'

* commit '4db96649ca700db563d9da4ebe70bf9fc4c7a6ba':
  avutil: Ensure that emms_c is always defined, even on non-x86
  configure: Move MinGW CPPFLAGS setting to libc section, where it belongs
  avutil: Move emms code to x86-specific header

Conflicts:
	configure
	libavutil/internal.h

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

* commit '49fe280753e0f167ac3d9f227f0c0f7744501fc1':
  h264idct: Replace duplicate scan8 table by appropriate #include

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  sparc: dsputil: Simplify high_bit_depth checks

Merged-by: Michael Niedermayer <michaelni@gmx.at>
ffplay: only display frames if there are no pending events

Otherwise events could just pile up if displaying a frame takes more time than
the duration of the frame.

Signed-off-by: Marton Balint <cus@passwd.hu>
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>