x86/hevc: add 12bits support for deblocking filter

cherry picked from commit 97d46afe320c7d61d7b9525e5f5588355cde4bb0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
x86/hevc: remove unused constant in deblocking filter

cherry picked from commit a3f7282eaa6f1ab0524fb966c6eade50c3025f99

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
x86/hevc: add 12bits support for MC

cherry picked from commit 3fcb7a4595a6f40100a22110a5805e3b7510c0fd

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

cherry picked from commit 903236292f066bc321080e3e2192b64f8943d960

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'ff85334375c6733c6116ea3686f128b4a11f33e7'

* commit 'ff85334375c6733c6116ea3686f128b4a11f33e7':
  mpegvideo: Drop unused MPEG_BUF_SIZE and CHROMA_444 defines

CHROMA_444 is not removed as we do support CHROMA_444 and use the
identifier

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

* commit '4fbb62a21bd04bf261da2382d5ba6c249c702af8':
  mpegvideo: Move ME_MAP_* defines to the only place they are used

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

* commit 'd8520d3ee032bf18f28897e0109f44b405caf5e3':
  mpegvideo: Move QMAT_SHIFT* defines to the only place they are used

Conflicts:
	libavcodec/mpegvideo.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
x86: hevc_mc: replace simple leas by adds

lea is detrimental for those simple cases. No impact overall to
the change though.

Before:
15017 decicycles in q, 1016152 runs, 32424 skips
15382 decicycles in q_bi, 1013673 runs, 34903 skips
3713 decicycles in e, 2074534 runs, 22618 skips
3901 decicycles in e_bi, 2065509 runs, 31643 skips
7852 decicycles in q_uni, 520165 runs, 4123 skips
2398 decicycles in e_uni, 1043339 runs, 5237 skips

After:
14898 decicycles in q, 1016295 runs, 32281 skips
15119 decicycles in q_bi, 1015392 runs, 33184 skips
3682 decicycles in e, 2073224 runs, 23928 skips
3720 decicycles in e_bi, 2065043 runs, 32109 skips
7643 decicycles in q_uni, 520280 runs, 4008 skips
2363 decicycles in e_uni, 1043780 runs, 4796 skips

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
configure: replace pulse-simple with pulse

pulse-simple is additional library built on top of PulseAudio.
It causes ffmpeg to link to library which is not needed anymore.
This commit removes that redundant dependency.

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
reintroduce avpriv_dsputil_init() to maintain ABI until next soname bump

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
hevc: add support for bumping process

cherry picked from commit 8aa2fb7df3cffc67a3fd03a3a7eb49dbed4094c7

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
output example: set the stream timebase

This is required by the new API.
output example: convert audio to the format supported by the encoder
hevcdsp: remove an unneeded variable in the loop filter

beta0 and beta1 will always be the same
hevc: SSE2 and SSSE3 loop filters

Additional contributions by James Almer <jamrial@gmail.com>,
Carl Eugen Hoyos <cehoyos@ag.or.at>, Fiona Glaser <fiona@x264.com> and
Anton Khirnov <anton@khirnov.net>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
x86/hevc_idct: replace old and unused idct functions

Only 8-bit and 10-bit idct_dc() functions are included (adding others should be trivial).

Benchmarks on an Intel Core i5-4200U:

idct8x8_dc
       SSE2   MMXEXT  C
cycles 22     26      57

idct16x16_dc
       AVX2   SSE2    C
cycles 27     32      249

idct32x32_dc
       AVX2   SSE2    C
cycles 62     126     1375

Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '884f7c975f0af25febe86660e87bf3b2165a0309'

* commit '884f7c975f0af25febe86660e87bf3b2165a0309':
  output example: set the stream timebase

Conflicts:
	doc/examples/muxing.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
doc/examples/muxing: move swr context to OutputStream

Idea from: 56f98e340fca894a76d1ddbe33118b8d8c4db34a
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
doc/examples/muxing: pick a supported channel layout if stereo isnt supported by the encoder

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
doc/examples/muxing: select a supported sample rate for the encoder, favor 44100

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