mxf: Set audio packets pts

Extrapolate audio timestamps based on the number of samples demuxed.

Deal with some MXF nastiness involving fractional number of
samples per EditUnit when seeking (the specs handwave this away).

Further fixes from Tomas Härdin.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
mxf: Handle identification metadata

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
mxf: Parse random index pack

Get the last partition offset and use it when footer partition
offset is missing.

Footer partition may not be present and even if present footer
partition offset may not be set in any partition except last one.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
mxf: Return meaningful errors
dxva2: Increase maximum number of slices for mpeg2

Some content requires an higher number of slices in order to
render properly.

Rise the number to 1024 and warn if ever it exceeds.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
libx265: Support API version 9

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Merge commit '5b930092c3afd2ae01f1c8aa7fb405911d6ad416'

* commit '5b930092c3afd2ae01f1c8aa7fb405911d6ad416':
  mxf: Set audio packets pts

Conflicts:
	libavformat/mxfdec.c

See: 83cab07a4c7f8ee1521c49e387b7d86de78d1955
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '570af382eea902afe09f3562e5e1b483981cca7e'

* commit '570af382eea902afe09f3562e5e1b483981cca7e':
  mxf: Handle identification metadata

Conflicts:
	libavformat/mxfdec.c

See: 25b143aa7bd60d348a449be64dadab61f0c7d068
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'f06f6daaf8538eb8ceeb690b761f1256771b6ba6'

* commit 'f06f6daaf8538eb8ceeb690b761f1256771b6ba6':
  mxf: Parse random index pack

Conflicts:
	libavformat/mxfdec.c

See: f5ed83c3831fcaca0f87cd67ca743946a54023d0
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '5b977c1d4fd99f325049d48fb8f0a3240d50eef8'

* commit '5b977c1d4fd99f325049d48fb8f0a3240d50eef8':
  mxf: Return meaningful errors

Conflicts:
	libavformat/mxfdec.c

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

* commit 'b66382101cff33e2ce66500327a90d0a105eedeb':
  dxva2: Increase maximum number of slices for mpeg2

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

* qatar/master:
  libx265: Support API version 9

See: 69ead9af7519796eebbc452fbbdb43af8d846173
Merged-by: Michael Niedermayer <michaelni@gmx.at>
dxva2_h264: set the correct ref frame index in the long slice struct

The latest H.264 DXVA specification states that the index in this
structure should refer to a valid entry in the RefFrameList of the picture
parameter structure, and not to the actual surface index.

Fixes H.264 DXVA2 decoding on recent Intel GPUs (tested on Sandy and Ivy)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
dxva2_h264: add a workaround for old intel GPUs

Old Intel GPUs expect the reference frame index to the actual surface,
instead of the index into RefFrameList as specified by the spec.

This workaround should be set when using one of the "ClearVideo" decoder
devices.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
doc/APIchanges: update versions & hashes