Move add_hfyu_median_prediction_int16() to losslessviddsp

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Move sub_hfyu_median_prediction_int16() to losslessviddsp

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
vc1: Always reset numref when parsing a new frame header.

Fixes an issue where the B-frame coding mode switches from interlaced
fields to interlaced frames, causing incorrect decisions in the motion
compensation code and resulting in visual artifacts.

CC: libav-stable@libav.org
Signed-off-by: Tim Walker <tdskywalker@gmail.com>
avcodec/x86/lossless_videodsp: use SPLATW in add_int16

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/x86/lossless_videodsp: Port lorens add_hfyu_left_prediction_ssse3/sse4 to 16bit

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/lossless_videodsp: fix diff_int16_c on MIPS

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
fate: add a few tests for >8bpc ffvhuff

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

* commit 'd01e684186bc1631bc176f06b89d33c27ec0d24d':
  mov: do not set avg_frame_rate in the demuxer

Conflicts:
	libavformat/mov.c

Not merged
The default fallback code that sets avg_frame_rate guesses the value
from a very small number of frames at the videos start and is wrong in
some cases for the file as a whole.
Now that makes it guess vs guess, but the code in mov is much faster

Also ideally the mov code should be fixed and give a exact avg_frame_rate
based on the actual cts from the index (CTTS/STTS)

If someone has sample(s) which show wrong fps values, please open a ticket
on trac or mail me if its private.

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

* commit '24eb3c791606fe98a1591c13a8b2ba6c342bb3b5':
  rtmpproto: Avoid using uninitialized memory

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

* commit '89564be444d24f75ea5add8b6987e414cf7aa7d5':
  rtmpproto: Send a full, absolute timestamp if it isn't monotonically growing

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

* qatar/master:
  vc1: Always reset numref when parsing a new frame header.

Conflicts:
	libavcodec/vc1.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
examples/muxing: reduce duration, remove wrong and misleading comment

Set duration to 10 seconds, after it was increased from 5 to 200 seconds
in 8d80f3cb877b890889b1673029387229648901ed.

200 seconds will generate too much data which is annoying especially when
testing.
hevc: check that VPS referenced from SPS exists

This matches how its done for SPS/PPS.
Fixes null pointer dereference.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
hevc: Fix modulo operations

Keep qp fields within the range.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
hevc: Use uint64 to check for tile dimensions

And use unsigned datatypes.

Otherwise it would overflow.

Sample-Id: 00001315-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
hevc: clip pixels when transquant bypass is used

The reconstructed picture should always be clipped (see section 8.6.5),
previously we did not clip coding units where
cu_transquant_bypass_flag == 1.

Sample-Id: 00001325-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
hevc: Remove useless clip

The src buffer should only contain values in the interval
[0, (1 << BIT_DEPTH) - 1].

Since shift = (BIT_DEPTH - 5), src[x] >> shift must be in
the interval [0, 31], so no clip is needed.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
hevc: Prevent some integer overflows

get_ue_golomb_long() returns an unsigned.

Sample-Id: 00001541-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
hevc: Bound check slice_qp

The T-REC-H.265-2013044 page 79 states it has to be in the range
[-s->sps->qp_bd_offset, 51].

Sample-Id: 00001386-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
hevc: Bound check cu_qp_delta

The T-REC-H.265-2013044 page 91 states it has to be in the range
[-(26 + s->sps->qp_bd_offset / 2), (25 + s->sps->qp_bd_offset / 2)].