ffmpeg.git
2 years agoMerge commit 'd34a133b78afe2793cd8537f3c7f42437f441e94'
James Almer [Sat, 11 Nov 2017 03:54:19 +0000 (00:54 -0300)]
Merge commit 'd34a133b78afe2793cd8537f3c7f42437f441e94'

* commit 'd34a133b78afe2793cd8537f3c7f42437f441e94':
  dfa: Disallow odd width/height and add proper bounds check for DDS1 chunks

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'a14a12ca137bf1526452b97bedfc9f7b301d4e04'
James Almer [Sat, 11 Nov 2017 03:49:43 +0000 (00:49 -0300)]
Merge commit 'a14a12ca137bf1526452b97bedfc9f7b301d4e04'

* commit 'a14a12ca137bf1526452b97bedfc9f7b301d4e04':
  vaapi_h265: Reduce the amount of padding in the stream

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'e3e8eab359238486dc233f7aa89b7bb3cb19ec38'
James Almer [Sat, 11 Nov 2017 03:47:22 +0000 (00:47 -0300)]
Merge commit 'e3e8eab359238486dc233f7aa89b7bb3cb19ec38'

* commit 'e3e8eab359238486dc233f7aa89b7bb3cb19ec38':
  vaapi_h265: Add support for AUD NAL units
  vaapi_h265: Convert to use coded bitstream infrastructure
  vaapi_h264: Add support for SEI recovery points
  vaapi_h264: Add support for AUD NAL units
  vaapi_h264: Convert to use coded bitstream infrastructure
  lavc: Add hevc_metadata bitstream filter
  lavc: Add h264_redundant_pps bitstream filter
  lavc: Add h264_metadata bitstream filter
  lavc: Add trace_headers bitstream filter
  lavc: Add coded bitstream read/write support for H.265
  lavc: Add coded bitstream read/write support for H.264
  lavc: Add coded bitstream read/write API
  pixfmt: Support chroma-derived and ictcp color matrices
  h264: Add support for alternative transfer characterics SEI
  vaapi_encode: Move quality option to common code

This commit is a noop, see
9c878651dbc8c795894740af74670b591551f619
8c34a2024da77b50470e62789e4859b45959932e
f3571048669bf876681499f49e9df492f05f73c6
6734eef6b8b464139fdc140ec9bc9e8d74173869
b4c915f4b3e15c3e787e319b961e4389762f6309
9b0c7aa0e446eceec96ba8f4009e004fad29fba3
9c7d70b49b64aa5571772a7cdb9bc426174261e0
a308872b049e33f69f4b629a06f47e3681906b93
8b26306294ffe78cc73357e2ddd56dd463db50ab
03f982bbca4211108477e772db9a339517ecde37
2e29ca2a9f19ba9a5b189f322f38497d2e2e3db0
281b68b0265953ab2623a39484d927a0e921c405
0bc7575ced65bf4aa4678ac12d550aaf87890d0e
00179664bccd1dd6fa0d1c40db453528757bf6f7
038a51258c4c5d8b77f4f9efcce6f397e5755c24

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '1329c08ad6d2ddb304858f2972c67b508e8b0f0e'
James Almer [Sat, 11 Nov 2017 03:36:22 +0000 (00:36 -0300)]
Merge commit '1329c08ad6d2ddb304858f2972c67b508e8b0f0e'

* commit '1329c08ad6d2ddb304858f2972c67b508e8b0f0e':
  hevc: Validate the number of long term reference pictures

See ea38e5a6b75706477898eb1e6582d667dbb9946c

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'b88da98b34809dedf8882d43ed543632ed233538'
James Almer [Sat, 11 Nov 2017 03:34:18 +0000 (00:34 -0300)]
Merge commit 'b88da98b34809dedf8882d43ed543632ed233538'

* commit 'b88da98b34809dedf8882d43ed543632ed233538':
  hevc: Improve stream constraint values in common header
  h264: Add stream constraint values to the common header

This commit is a noop, see
d05444d2c6d99767547b1f0761e8459fb07b305d
b1374e925c1cf3af5c8482119f3f2630d66213de

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'defe307fb22beca60a632e976ab97e5edd4aee25'
James Almer [Sat, 11 Nov 2017 03:28:53 +0000 (00:28 -0300)]
Merge commit 'defe307fb22beca60a632e976ab97e5edd4aee25'

* commit 'defe307fb22beca60a632e976ab97e5edd4aee25':
  mov: move stsd finalization to an appropriate place
  mov: Do not set stsd_count if mov_read_stsd() fails
  mov: log and return early on non-positive stsd entry counts

See 8b43ee4054af799e388d380b379a13a60849c1b5
656feb641de3cd5b9cb4e33ffd3f0ad4664c36d2

Merged-by: James Almer <jamrial@gmail.com>
2 years agoavcodec/nvdec: fix copyright headers
James Almer [Sat, 11 Nov 2017 00:06:58 +0000 (21:06 -0300)]
avcodec/nvdec: fix copyright headers

Fixes fate-source.

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'b90fdb2c7199cc8b0e8d994fafba1fb4dc181d88'
James Almer [Fri, 10 Nov 2017 23:38:36 +0000 (20:38 -0300)]
Merge commit 'b90fdb2c7199cc8b0e8d994fafba1fb4dc181d88'

* commit 'b90fdb2c7199cc8b0e8d994fafba1fb4dc181d88':
  hevcdec: add a CUVID hwaccel

Adapted for ffmpeg by Timo Rothenpieler.

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '770cf1dbc2c8fe9b84300439ad0cd85036480388'
James Almer [Fri, 10 Nov 2017 23:36:39 +0000 (20:36 -0300)]
Merge commit '770cf1dbc2c8fe9b84300439ad0cd85036480388'

* commit '770cf1dbc2c8fe9b84300439ad0cd85036480388':
  fate/hevc: specify output pixel format explicitly

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '00fd914d4912322212e924c15f325cebf2fde8d3'
James Almer [Fri, 10 Nov 2017 23:31:55 +0000 (20:31 -0300)]
Merge commit '00fd914d4912322212e924c15f325cebf2fde8d3'

* commit '00fd914d4912322212e924c15f325cebf2fde8d3':
  hevcdec: set the active SPS before calling get_format()

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'a58873b11198d04670b7f98f5a8a749d742db7c5'
James Almer [Fri, 10 Nov 2017 23:23:43 +0000 (20:23 -0300)]
Merge commit 'a58873b11198d04670b7f98f5a8a749d742db7c5'

* commit 'a58873b11198d04670b7f98f5a8a749d742db7c5':
  avconv: when using -loop option bail out if seek to start fails

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '004ea63714e31ed43326ad00d7420d104f0dab38'
James Almer [Fri, 10 Nov 2017 23:16:15 +0000 (20:16 -0300)]
Merge commit '004ea63714e31ed43326ad00d7420d104f0dab38'

* commit '004ea63714e31ed43326ad00d7420d104f0dab38':
  cuvid: add cuvid.h to SKIPHEADERS

This commit is a noop, nvdec.h compiles just fine since it doesn't
depend on external headers.

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'b9129ec4668c511e0a79e25c6f25d748cee172c9'
James Almer [Fri, 10 Nov 2017 22:43:46 +0000 (19:43 -0300)]
Merge commit 'b9129ec4668c511e0a79e25c6f25d748cee172c9'

* commit 'b9129ec4668c511e0a79e25c6f25d748cee172c9':
  h264dec: add a CUVID hwaccel
  decode: add a per-frame private data for hwaccel use
  decode: add a mechanism for performing delayed processing on the decoded frames
  decode: add a method for attaching lavc-internal data to frames
  decode: avoid leaks on failure in ff_get_buffer()

This commit is a noop, see
4776c61424fa32394e251e9769e1ad2c2fa55598
9f1cfd88af88a7d7d5c56a368a46639dfdfdef75
7fa64514c8d2ec4d3dcb5f194511609ddcc288e6
81c021c6a2d7848c31984d65f225ba54bdd6f560
0e00624389955bc559d75855d5c4876266d9575f

Merged-by: James Almer <jamrial@gmail.com>
2 years agoh264dec: add a NVDEC hwaccel
Anton Khirnov [Sat, 11 Feb 2017 15:49:34 +0000 (16:49 +0100)]
h264dec: add a NVDEC hwaccel

Some parts of the code are based on a patch by
Timo Rothenpieler <timo@rothenpieler.org>

Merges Libav commit b9129ec4668c511e0a79e25c6f25d748cee172c9.

Due to the name clash with our cuvid decoder, rename it to nvdec.

This commit also changes the Libav code to dynamic loading of the
cuda/cuvid libraries.

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2 years agoavcodec/decode: add missing \n to log message
wm4 [Tue, 3 Oct 2017 15:43:13 +0000 (17:43 +0200)]
avcodec/decode: add missing \n to log message

2 years agoavcodec: allow multiple hwaccels for the same codec/pixfmt
wm4 [Tue, 3 Oct 2017 13:04:45 +0000 (15:04 +0200)]
avcodec: allow multiple hwaccels for the same codec/pixfmt

Currently, AVHWAccels are looked up using a (codec_id, pixfmt) tuple.
This means it's impossible to have 2 decoders for the same codec and
using the same opaque hardware pixel format.

This breaks merging Libav's CUVID hwaccel. FFmpeg has its own CUVID
support, but it's a full stream decoder, using NVIDIA's codec parser.
The Libav one is a true hwaccel, which is based on the builtin software
decoders.

Fix this by introducing another field to disambiguate AVHWAccels, and
use it for our CUVID decoders. FF_CODEC_CAP_HWACCEL_REQUIRE_CLASS makes
this mechanism backwards compatible and optional.

2 years agoavcodec/cuvid: rename cuvid.c to cuviddec.c
wm4 [Tue, 3 Oct 2017 13:15:16 +0000 (15:15 +0200)]
avcodec/cuvid: rename cuvid.c to cuviddec.c

cuvid.c is used by Libav's CUVID hwaccel. Resolve the conflict and
avoid future merge problems by renaming our decoder.

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2 years agoChangelog: list the new aptX features
Rostislav Pehlivanov [Fri, 10 Nov 2017 21:31:07 +0000 (21:31 +0000)]
Changelog: list the new aptX features

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agoaptx: add raw muxer and demuxer for aptX
Aurelien Jacobs [Fri, 10 Nov 2017 21:09:24 +0000 (22:09 +0100)]
aptx: add raw muxer and demuxer for aptX

2 years agoaptx: implement the aptX bluetooth codec
Aurelien Jacobs [Fri, 10 Nov 2017 21:09:23 +0000 (22:09 +0100)]
aptx: implement the aptX bluetooth codec

The encoder was reverse engineered from binary library and from
EP0398973B1 patent (long expired).
The decoder was simply deduced from the encoder.

2 years agodecode: add a per-frame private data for hwaccel use
Anton Khirnov [Fri, 13 Oct 2017 16:59:19 +0000 (18:59 +0200)]
decode: add a per-frame private data for hwaccel use

This will be useful in the CUVID hwaccel. It should also eventually
replace current decoder-specific mechanisms used by various other
hwaccels.

Merges Libav commit 704311b2946d74a80f65906961cd9baaa18683a3.

2 years agodecode: add a mechanism for performing delayed processing on the decoded frames
Anton Khirnov [Fri, 10 Nov 2017 15:07:44 +0000 (16:07 +0100)]
decode: add a mechanism for performing delayed processing on the decoded frames

This will be useful in the CUVID hwaccel.

Merges Libav commit badf0951f54c1332e77455dc40398f3512540c1b.

2 years agodecode: add a method for attaching lavc-internal data to frames
Anton Khirnov [Fri, 13 Oct 2017 16:59:17 +0000 (18:59 +0200)]
decode: add a method for attaching lavc-internal data to frames

Use the AVFrame.private_ref field.

This new struct will be useful in the following commits.

Merges Libav commit 359a8a3e2d1194b52b6c386f94fd0929567dfb67.

2 years agoavutil/frame: Add private_ref to AVFrame
Michael Niedermayer [Wed, 8 Nov 2017 22:55:00 +0000 (23:55 +0100)]
avutil/frame: Add private_ref to AVFrame

This gives FFmpeg libs a field that they can freely and safely use.
Avoiding the need of wrapping of a users opaque_ref field and its issues.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavc/libx265: switch to ff_alloc_packet2
Jun Zhao [Wed, 8 Nov 2017 13:04:51 +0000 (21:04 +0800)]
lavc/libx265: switch to ff_alloc_packet2

ff_alloc_packet have been deprecated, switch to use
ff_alloc_packet2.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavc/libkvazaar: switch to ff_alloc_packet2.
Jun Zhao [Wed, 8 Nov 2017 13:02:23 +0000 (21:02 +0800)]
lavc/libkvazaar: switch to ff_alloc_packet2.

ff_alloc_packet have been deprecated, switch to use the
ff_alloc_packet2.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Reviewed-by: Arttu Ylä-Outinen <arttu.yla-outinen@tut.fi>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavu/timecode: clarify error msg for timecode_rate
Gyan Doshi [Sun, 5 Nov 2017 15:59:22 +0000 (21:29 +0530)]
lavu/timecode: clarify error msg for timecode_rate

The user-supplied value for timecode_rate in drawtext is rounded
to nearest integer. So, a supplied value of 0.49 or lower is rounded to 0.
This throws a misleading error message which says "Timecode frame rate must be
specified". Changed message to account for values under one.

Also noted supported framerates for drop TC.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavformat/dashdec: use the current DASHContext for the rep_dest
Steven Liu [Thu, 9 Nov 2017 23:01:45 +0000 (07:01 +0800)]
avformat/dashdec: use the current DASHContext for the rep_dest

fix ticket id: #6820

Signed-off-by: Steven Liu <lq@onvideo.cn>
Tested-by: mrskman
2 years agolavf/dashdec: Fix several memleaks.
Carl Eugen Hoyos [Thu, 9 Nov 2017 22:59:25 +0000 (06:59 +0800)]
lavf/dashdec: Fix several memleaks.

Signed-off-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Tested-by: Steven Liu <lq@chinaffmpeg.org>
2 years agoavcodec/cngdec: Fix integer clipping
Michael Niedermayer [Thu, 2 Nov 2017 17:34:09 +0000 (18:34 +0100)]
avcodec/cngdec: Fix integer clipping

Fixes: runtime error: value -36211.7 is outside the range of representable values of type 'short'
Fixes: 2992/clusterfuzz-testcase-6649611793989632

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoconfigure: fix the non pkg-config libmfx check on Windows
James Almer [Thu, 9 Nov 2017 17:27:33 +0000 (14:27 -0300)]
configure: fix the non pkg-config libmfx check on Windows

Based on a patch by Aaron Levinson.

Reviewed-by: alevinsn
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavdevice/decklink_dec: make some function static
James Almer [Thu, 9 Nov 2017 03:18:32 +0000 (00:18 -0300)]
avdevice/decklink_dec: make some function static

Reviewed-by: Aaron Levinson <alevinsn_dev@levland.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agolavc/pngdec: fix av_bprint_finalize() usage.
Nicolas George [Thu, 9 Nov 2017 08:21:05 +0000 (09:21 +0100)]
lavc/pngdec: fix av_bprint_finalize() usage.

2 years agoaacenc: mark the preset 5.0/5.1 layouts correctly with back speakers
Rostislav Pehlivanov [Thu, 9 Nov 2017 12:51:54 +0000 (12:51 +0000)]
aacenc: mark the preset 5.0/5.1 layouts correctly with back speakers

The spec is correct, it does list these layouts as having rear speakers.
Questionable how many decoders correctly interpret those correctly since
side is way more popular.
Also fixes fate-aac-yoraw-encode.

Reported-by: pkviet <pkv.stream@gmail.com>
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agoaacenc: use the PCE comment field for encoder ID
Rostislav Pehlivanov [Thu, 9 Nov 2017 04:30:07 +0000 (04:30 +0000)]
aacenc: use the PCE comment field for encoder ID

Also handle extradata of variable size (for bitexact/if PCEs aren't used).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agoaacenc: support extended channel layouts using PCEs
Rostislav Pehlivanov [Mon, 3 Oct 2016 18:53:11 +0000 (19:53 +0100)]
aacenc: support extended channel layouts using PCEs

This commit implements support for PCE (Program Configuration Elements) in the
AAC encoder, and as such allows for encoding of channel layouts not present
in the presets defined by the spec (which only lists the 8 most common ones).

This has been a highly requested feature and is also the first open source encoder
to support this many layouts.

Many thanks to pkviet <pkv.stream@gmail.com> who implemented support for and
verified all channel layouts.

2 years agopngdec: expose gAMA and cHRM chunks as side/meta data
Rostislav Pehlivanov [Mon, 25 Sep 2017 19:28:08 +0000 (20:28 +0100)]
pngdec: expose gAMA and cHRM chunks as side/meta data

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agopngdec: check for bprint finalization sucess on icc data parsing
Rostislav Pehlivanov [Thu, 9 Nov 2017 02:34:54 +0000 (02:34 +0000)]
pngdec: check for bprint finalization sucess on icc data parsing

It can fail in case of OOM.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agovc2enc_dwt: pad the temporary buffer by the slice size
Rostislav Pehlivanov [Wed, 8 Nov 2017 23:50:04 +0000 (23:50 +0000)]
vc2enc_dwt: pad the temporary buffer by the slice size

Since non-Haar wavelets need to look into pixels outside the frame, we
need to pad the buffer. The old factor of two seemed to be a workaround
that fact and only padded to the left and bottom. This correctly pads
by the slice size and as such reduces memory usage and potential
exploits.
Reported by Liu Bingchang.

Ideally, there should be no temporary buffer but the encoder is designed
to deinterleave the coefficients into the classical wavelet structure
with the lower frequency values in the top left corner.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agoconfigure: add missing avutil deps for hwcontext modules
James Almer [Wed, 8 Nov 2017 22:32:09 +0000 (19:32 -0300)]
configure: add missing avutil deps for hwcontext modules

Fixes ticket #6812

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agolavfi/scale2ref: Set output frame rate to main input frame rate.
Carl Eugen Hoyos [Wed, 8 Nov 2017 08:15:29 +0000 (09:15 +0100)]
lavfi/scale2ref: Set output frame rate to main input frame rate.

Fixes ticket #6817.

2 years agoavformat/ty: fix format specifiers in debug log messages
James Almer [Wed, 8 Nov 2017 20:01:44 +0000 (17:01 -0300)]
avformat/ty: fix format specifiers in debug log messages

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavcodec/mips: Improve hevc non-uni hv mc msa functions
Kaustubh Raste [Mon, 6 Nov 2017 12:36:53 +0000 (18:06 +0530)]
avcodec/mips: Improve hevc non-uni hv mc msa functions

Use mask buffer.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mips: Improve hevc uni weighted 4 tap vt mc msa functions
Kaustubh Raste [Mon, 6 Nov 2017 10:58:44 +0000 (16:28 +0530)]
avcodec/mips: Improve hevc uni weighted 4 tap vt mc msa functions

Use global mask buffer for appropriate mask load.
Use immediate unsigned saturation for clip to max saving one vector register.
Remove unused macro.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mips: Improve hevc uni 4 tap hv mc msa functions
Kaustubh Raste [Mon, 6 Nov 2017 10:50:51 +0000 (16:20 +0530)]
avcodec/mips: Improve hevc uni 4 tap hv mc msa functions

Use global mask buffer for appropriate mask load.
Remove unused macro and table.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mips: Improve hevc bi wgt 4 tap hv mc msa functions
Kaustubh Raste [Mon, 6 Nov 2017 06:02:57 +0000 (11:32 +0530)]
avcodec/mips: Improve hevc bi wgt 4 tap hv mc msa functions

Use global mask buffer for appropriate mask load.
Use immediate unsigned saturation for clip to max saving one vector register.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/qsvenc_jpeg: fix copyright header
James Almer [Wed, 8 Nov 2017 17:58:36 +0000 (14:58 -0300)]
avcodec/qsvenc_jpeg: fix copyright header

Fixes fate-source after 1926f13a206bfbd99abf536e7424e2b321f2e2ad.

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agocheckasm/llviddsp: fix warnings about mixed declaration and code
James Almer [Wed, 8 Nov 2017 17:53:27 +0000 (14:53 -0300)]
checkasm/llviddsp: fix warnings about mixed declaration and code

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '70946e605924e2108c39f96faa369c220177f301'
James Almer [Wed, 8 Nov 2017 17:25:31 +0000 (14:25 -0300)]
Merge commit '70946e605924e2108c39f96faa369c220177f301'

* commit '70946e605924e2108c39f96faa369c220177f301':
  h264dec: Fix mix of lossless and lossy MBs decoding
  h264_cabac: Fix CABAC+8x8dct in 4:4:4
  h264dec: fix Lossless Decoding (Profile 244) for 8x8 Intra Prediction

This commit is a noop, see
6f7ca1f55be1270e0d7c33409de4473e4dd00add
840b41b2a643fc8f0617c0370125a19c02c6b586
cf231b68da1150c100114f2c5671b7ed740f917a

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '45c4bf3df03ef53ae61fa1473424d4ae024f22e4'
James Almer [Wed, 8 Nov 2017 17:15:16 +0000 (14:15 -0300)]
Merge commit '45c4bf3df03ef53ae61fa1473424d4ae024f22e4'

* commit '45c4bf3df03ef53ae61fa1473424d4ae024f22e4':
  h264dec: track the last seen value of x264_build

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '45df7adc1d9b7e8fbae5af9328baa6ab3562002b'
James Almer [Wed, 8 Nov 2017 16:53:26 +0000 (13:53 -0300)]
Merge commit '45df7adc1d9b7e8fbae5af9328baa6ab3562002b'

* commit '45df7adc1d9b7e8fbae5af9328baa6ab3562002b':
  imgutils: add function to clear an image to black
  lavc, lavu: move frame cropping to a convenience function
  rmdec: add missing brackets to compound statement

This commit is a noop, see
65b83ce01b94eae944290c11257799a9288f2d4c
caa12027baf1180453846c58da08fc87accc0ff6
463b81de2b252691d75417643597c42684bf830d

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '550cb6a85d0f7211289f7a789527d48cb29460ff'
James Almer [Wed, 8 Nov 2017 16:47:42 +0000 (13:47 -0300)]
Merge commit '550cb6a85d0f7211289f7a789527d48cb29460ff'

* commit '550cb6a85d0f7211289f7a789527d48cb29460ff':
  lavf/vf_deinterlace_qsv: Enable the qsv deinterlace vpp

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2'
James Almer [Wed, 8 Nov 2017 16:45:09 +0000 (13:45 -0300)]
Merge commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2'

* commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2':
  libavcodec/mjpeg_qsv: Add QSV MJPEG encoder

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '2b1324bd167553f49736e4eaa94f96da9982925e'
James Almer [Wed, 8 Nov 2017 16:39:58 +0000 (13:39 -0300)]
Merge commit '2b1324bd167553f49736e4eaa94f96da9982925e'

* commit '2b1324bd167553f49736e4eaa94f96da9982925e':
  lavf: allow avformat_close_input() with NULL
  dxva: DXVA2_ModeHEVC_VLD_Main10 does not support Main
  caf: add an Opus tag
  hevc: Make sure to update the current frame transfer characteristic

This commit is a noop, see
dc9735eb67ca696d926922735a9bf01776d5c328
b4093e60c51af493a6dad7819264ef769736227f
5a3b602acda68fe5ca09082dc753179450a97a13
c64da19bbc1d3b405703ef3b705dba39a450504f
36cd017acd9cac0e6695124c052a59fb1fc13145

Merged-by: James Almer <jamrial@gmail.com>
2 years agolavc/dnxhddata: Do not print frame rates with supported profiles.
Carl Eugen Hoyos [Tue, 31 Oct 2017 01:56:31 +0000 (02:56 +0100)]
lavc/dnxhddata: Do not print frame rates with supported profiles.

The list is unmaintained, misleading and the frame rates are
ignored by all compatible players.

2 years agoavformat: move priv_pts from AVStream to an internal struct
James Almer [Sun, 5 Nov 2017 17:59:47 +0000 (14:59 -0300)]
avformat: move priv_pts from AVStream to an internal struct

It has no reason to be in a public header, even if defined as private.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavutil/hwcontext_d3d11va: Fix leak when wrapping texture in AVD3D11FrameDescriptor
Greg Wessels [Sun, 5 Nov 2017 04:43:09 +0000 (23:43 -0500)]
avutil/hwcontext_d3d11va: Fix leak when wrapping texture in AVD3D11FrameDescriptor

Reviewed-by: Aaron Levinson <alevinsn_dev@levland.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '95ce02b35d3d1bb16111031df1d82a6e4d894d36'
James Almer [Tue, 7 Nov 2017 22:15:16 +0000 (19:15 -0300)]
Merge commit '95ce02b35d3d1bb16111031df1d82a6e4d894d36'

* commit '95ce02b35d3d1bb16111031df1d82a6e4d894d36':
  rmdec: don't ignore the return value of av_get_packet()

See 65b83ce01b94eae944290c11257799a9288f2d4c

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '825e463a170c7004c63030dc484b2b2de869227b'
James Almer [Tue, 7 Nov 2017 22:09:11 +0000 (19:09 -0300)]
Merge commit '825e463a170c7004c63030dc484b2b2de869227b'

* commit '825e463a170c7004c63030dc484b2b2de869227b':
  build: Add feature test macros for glibc 2.19+

This commit is a noop, see
26e8895b7395ed180dcb7e30465058c45050b5e2
af1818276ef271af98e2e2bbabb4dc875b4fa7d8

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '0f5ad12ba2b538cb329c507ecc914e06bfa70194'
James Almer [Tue, 7 Nov 2017 22:08:46 +0000 (19:08 -0300)]
Merge commit '0f5ad12ba2b538cb329c507ecc914e06bfa70194'

* commit '0f5ad12ba2b538cb329c507ecc914e06bfa70194':
  flac: Use a local cache for decode_residual()

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '15f1cc09a406cf6296818d475a256902235eefc4'
James Almer [Tue, 7 Nov 2017 21:55:18 +0000 (18:55 -0300)]
Merge commit '15f1cc09a406cf6296818d475a256902235eefc4'

* commit '15f1cc09a406cf6296818d475a256902235eefc4':
  flac: Postpone unlikely condition checks

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '9c1e111406bd4cbb04d8e8611b71bebf203bec5e'
James Almer [Tue, 7 Nov 2017 21:50:59 +0000 (18:50 -0300)]
Merge commit '9c1e111406bd4cbb04d8e8611b71bebf203bec5e'

* commit '9c1e111406bd4cbb04d8e8611b71bebf203bec5e':
  flac: Convert to the new bitstream reader
  bitstream: Avoid undefined behavior in bitstream_skip()

This commit is a noop, see
https://ffmpeg.org/pipermail/ffmpeg-devel/2017-April/209609.html

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'fd92dafaff8844b5fedf94679b93d953939a7f7b'
James Almer [Tue, 7 Nov 2017 21:44:44 +0000 (18:44 -0300)]
Merge commit 'fd92dafaff8844b5fedf94679b93d953939a7f7b'

* commit 'fd92dafaff8844b5fedf94679b93d953939a7f7b':
  bink: Split read_dct_coeffs()

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '5be9939b46a6a4d3860a1b1a872aa50897095970'
James Almer [Tue, 7 Nov 2017 21:35:34 +0000 (18:35 -0300)]
Merge commit '5be9939b46a6a4d3860a1b1a872aa50897095970'

* commit '5be9939b46a6a4d3860a1b1a872aa50897095970':
  fate: Add cinepak encoder vsynth tests

See d7f62f033c214f3863acfd8e0672407b0bf91a3b

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'ed3b2a999d189771c9b0ada9a9200117595fa474'
James Almer [Tue, 7 Nov 2017 21:12:17 +0000 (18:12 -0300)]
Merge commit 'ed3b2a999d189771c9b0ada9a9200117595fa474'

* commit 'ed3b2a999d189771c9b0ada9a9200117595fa474':
  cinepakenc: misc small changes
  cinepakenc: K&R formatting cosmetics
  cinepakenc: Stop using AVPicture
  cinepakenc: Drop broken debug code
  cinepakenc: add option handling for flexibility
  cinepakenc: fixes and improvements
  Add Cinepak encoder

See
59dbc36f49db5cfd9d2ad4b00ef2e3336173ee8d
762c4dc082764896e27f3c53c14a65871d8fe910
bf23642dcc86890fa2e32697c3b930b3f1ac0d88
0ab25dac2f0b170ecc0e37530cf15f83b9f9e56d

Merged-by: James Almer <jamrial@gmail.com>
2 years agocompat/w32dlfcn: add missing config.h include
James Almer [Tue, 7 Nov 2017 19:38:59 +0000 (16:38 -0300)]
compat/w32dlfcn: add missing config.h include

Fixes warnings about undefined HAVE_WINRT

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '4d330da006fe48178a4c8047f06270925eaedf63'
James Almer [Tue, 7 Nov 2017 19:29:02 +0000 (16:29 -0300)]
Merge commit '4d330da006fe48178a4c8047f06270925eaedf63'

* commit '4d330da006fe48178a4c8047f06270925eaedf63':
  os_support: Use HAVE_UWP instead of manually checking WINAPI_FAMILY
  d3d11va: Check WINAPI_FAMILY instead of HAVE_LOADLIBRARY
  lavf: Remove codec_tag from dashenc and smoothstreamingenc
  hevc: Add support for alternative transfer characterics SEI

Merged-by: James Almer <jamrial@gmail.com>
2 years agoconfigure: libvmaf is not GPLv2-compatible.
Carl Eugen Hoyos [Mon, 6 Nov 2017 13:15:31 +0000 (14:15 +0100)]
configure: libvmaf is not GPLv2-compatible.

It is licensed under Apache 2.0.

2 years agoavcodec/mips: Improve hevc bi 4 tap hv mc msa functions
Kaustubh Raste [Mon, 6 Nov 2017 05:45:04 +0000 (11:15 +0530)]
avcodec/mips: Improve hevc bi 4 tap hv mc msa functions

Use global mask buffer for appropriate mask load.
Use immediate unsigned saturation for clip to max saving one vector register.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mips: Improve avc avg mc 10, 30, 01 and 03 msa functions
Kaustubh Raste [Mon, 6 Nov 2017 05:19:23 +0000 (10:49 +0530)]
avcodec/mips: Improve avc avg mc 10, 30, 01 and 03 msa functions

Align the mask buffer to 64 bytes.
Load the specific destination bytes instead of MSA load and pack.
Remove unused macros and functions.

Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolibavcodec/mepgvideo : remove warning introduce by previous patch
Martin Vignali [Mon, 6 Nov 2017 22:59:00 +0000 (23:59 +0100)]
libavcodec/mepgvideo : remove warning introduce by previous patch

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agolibavcodec/lossless_video_dsp : cosmetic add better separator for each function,...
Martin Vignali [Mon, 6 Nov 2017 20:52:37 +0000 (21:52 +0100)]
libavcodec/lossless_video_dsp : cosmetic add better separator for each function, in order to make reading of the asm file easier

2 years agolibavcodec/lossless_videodsp : add add_bytes avx2 version
Martin Vignali [Mon, 6 Nov 2017 20:51:54 +0000 (21:51 +0100)]
libavcodec/lossless_videodsp : add add_bytes avx2 version

2 years agocheckasm/llviddsp : add test for other dsp func
Martin Vignali [Sun, 29 Oct 2017 17:01:30 +0000 (18:01 +0100)]
checkasm/llviddsp : add test for other dsp func

add_median_pred
add_left_pred : add two func one with acc 0, and one with random acc
add_left_pred16

2 years agofate/utvideo : add test for decoding and encoding
Martin Vignali [Sat, 28 Oct 2017 12:06:22 +0000 (14:06 +0200)]
fate/utvideo : add test for decoding and encoding

2 years agolibavcodec/utvideo : simplify decode_plane
Martin Vignali [Sat, 28 Oct 2017 15:12:58 +0000 (17:12 +0200)]
libavcodec/utvideo : simplify decode_plane

the func is only call with step = 1
no need to pass it in the func

2 years agolibavcodec/blockdsp : fix comment. clear_block need 32 aligned now
Martin Vignali [Sat, 21 Oct 2017 16:47:49 +0000 (18:47 +0200)]
libavcodec/blockdsp : fix comment. clear_block need 32 aligned now

2 years agoavutil/pixdesc: remove reference to avcodec_get_chroma_sub_sample
Martin Vignali [Mon, 6 Nov 2017 21:39:17 +0000 (22:39 +0100)]
avutil/pixdesc: remove reference to avcodec_get_chroma_sub_sample

Don't recommend to use deprecated functions.

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavcodec: remove remaining uses of avcodec_get_chroma_sub_sample
Martin Vignali [Mon, 6 Nov 2017 21:39:16 +0000 (22:39 +0100)]
avcodec: remove remaining uses of avcodec_get_chroma_sub_sample

Replace them with av_pix_fmt_get_chroma_sub_sample.

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'a594f17f83a1ffdc1eec18818208fe39487dd5d7'
James Almer [Mon, 6 Nov 2017 21:46:05 +0000 (18:46 -0300)]
Merge commit 'a594f17f83a1ffdc1eec18818208fe39487dd5d7'

* commit 'a594f17f83a1ffdc1eec18818208fe39487dd5d7':
  dvbsubdec: Free subrect memory on allocation error
  dvbsubdec: Fixed segfault when decoding subtitles

See
fbb59a3bf4c8668197521b3db5f26d0e93aed1a6
39dfe6801a3f67c2964a829b65e8e38e3cb22217

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '3fdf50f9e864c88da2139cf066832944de81acaa'
James Almer [Mon, 6 Nov 2017 21:30:48 +0000 (18:30 -0300)]
Merge commit '3fdf50f9e864c88da2139cf066832944de81acaa'

* commit '3fdf50f9e864c88da2139cf066832944de81acaa':
  hwframe: Allow hwaccel frame allocators to align surface sizes
  dxva: verbose-log decoder GUID list
  hwcontext_d3d11va: add option to enable debug mode
  dxva: support DXGI_FORMAT_420_OPAQUE decoding
  hwcontext_d3d11va: allocate staging texture lazily
  hwcontext_d3d11va: fix crash on frames_init failure
  dxva: fix some warnings
  dxva: add declarative profile checks

This commit is a noop, see
e2afcc33e0bcba92ab6c767f09f17a67911a4928
39f201a0ec7913f7509a01fb0fa6634a24e52203
1509d739a036b9838e12f28dac9f09ac37bc3928
6f5ff3269b12776a32b12887128ba034ad86e08b
8d7fdba7b8670db9dd5023dde6fe3a06674933c4
289d387330d8a0a07ff98c9e09215627a70ace2d
f0bcedaf37ed4fdb082c88826b8bd3a5dd26382a
d14179e3d49eb0f2533db16151e01abb0018b165

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '0e83e95c60892747f2f1bd8382f915f2397f99a5'
James Almer [Mon, 6 Nov 2017 21:14:15 +0000 (18:14 -0300)]
Merge commit '0e83e95c60892747f2f1bd8382f915f2397f99a5'

* commit '0e83e95c60892747f2f1bd8382f915f2397f99a5':
  configure: Reset X86ASM_DEP(FLAGS) when probing for the assembler program

See f66086adac5eb9b964c89ea0480487f48875f690

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '7cb053e4ddf258e2dbf52ccc586548680742d758'
James Almer [Mon, 6 Nov 2017 21:10:49 +0000 (18:10 -0300)]
Merge commit '7cb053e4ddf258e2dbf52ccc586548680742d758'

* commit '7cb053e4ddf258e2dbf52ccc586548680742d758':
  nvenc: Minimize the surface allocation
  nvenc: Use a fifo to manage the free surface pool
  nvenc: Add an explicit auto alias

This commit is a noop, see
7b0689c55f1f8ee3abca58e1e3522f1c33beb60b
8de3458a07376b0a96772e586b6dba5e93432f52
de2faec2faf34ee948d400101299d4ccdc1f3a50

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '857e26b655a769e5a56bada1a0d9adb44cc176b7'
James Almer [Mon, 6 Nov 2017 20:55:26 +0000 (17:55 -0300)]
Merge commit '857e26b655a769e5a56bada1a0d9adb44cc176b7'

* commit '857e26b655a769e5a56bada1a0d9adb44cc176b7':
  build: Add an option for passing linker flags to the shared library build

See e34a3468f294f21878875e0f6ad5564cd52af70e.

--extra-ldlibflags is left in place for compatibility reasons.

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit '333a34da3a6d13155de480e7d16ec5fec7f4cd6c'
James Almer [Mon, 6 Nov 2017 20:50:00 +0000 (17:50 -0300)]
Merge commit '333a34da3a6d13155de480e7d16ec5fec7f4cd6c'

* commit '333a34da3a6d13155de480e7d16ec5fec7f4cd6c':
  configure: Automatically add -isysroot for darwin if --sysroot is specified

Merged-by: James Almer <jamrial@gmail.com>
2 years agoMerge commit 'f519e131c101ae3948dabf1f7f598efbff5fb536'
James Almer [Mon, 6 Nov 2017 20:45:31 +0000 (17:45 -0300)]
Merge commit 'f519e131c101ae3948dabf1f7f598efbff5fb536'

* commit 'f519e131c101ae3948dabf1f7f598efbff5fb536':
  af_bs2b: Add missing casts to complex pointer assignments

Merged-by: James Almer <jamrial@gmail.com>
2 years agoavformat/ty: do not overread chunk
Paul B Mahol [Mon, 6 Nov 2017 20:00:08 +0000 (21:00 +0100)]
avformat/ty: do not overread chunk

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavformat/ty: try harder to find stream signature
Paul B Mahol [Mon, 6 Nov 2017 19:50:16 +0000 (20:50 +0100)]
avformat/ty: try harder to find stream signature

Search all chunks, not just first one.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavformat/rtpdec_asf: free the buffer pointed by the AVIOContext
James Almer [Mon, 6 Nov 2017 16:25:18 +0000 (13:25 -0300)]
avformat/rtpdec_asf: free the buffer pointed by the AVIOContext

Don't free the buffer allocated in ff_wms_parse_sdp_a_line() after
calling avformat_open_input(), as it may free it and replace it with
another one.

Should fix ticket #6808

Tested-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavformat: add TiVo ty demuxer
Paul B Mahol [Sun, 29 Oct 2017 20:20:10 +0000 (21:20 +0100)]
avformat: add TiVo ty demuxer

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavfilter:vf_libvmaf: improve docs.
Ashish Pratap Singh [Mon, 6 Nov 2017 12:49:33 +0000 (07:49 -0500)]
avfilter:vf_libvmaf: improve docs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2 years agoavfilter/vf_libvmaf: fix errors while running with psnr=1.
Ashish Pratap Singh [Mon, 6 Nov 2017 12:49:19 +0000 (07:49 -0500)]
avfilter/vf_libvmaf: fix errors while running with psnr=1.

This patch fixes the seg fault which ocuured while running libvmaf filter
with option psnr=1.

Signed-off-by: ashk43712 <ashk43712@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2 years agolavf/amr: Do not set codec_tag for raw amr_nb and raw amr_wb.
Carl Eugen Hoyos [Mon, 6 Nov 2017 12:36:40 +0000 (13:36 +0100)]
lavf/amr: Do not set codec_tag for raw amr_nb and raw amr_wb.

2 years agoffplay: use SDL2 audio API
Marton Balint [Sat, 4 Nov 2017 18:31:54 +0000 (19:31 +0100)]
ffplay: use SDL2 audio API

It allows us to specify what kind of audio parameter changes are allowed.

Should fix ticket #6721.

Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoMaintainers : add myself for exr
Martin Vignali [Sat, 4 Nov 2017 14:17:28 +0000 (15:17 +0100)]
Maintainers : add myself for exr

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/sbrdsp_fixed: Fix integer overflow in shift in sbr_hf_g_filt_c()
Michael Niedermayer [Wed, 1 Nov 2017 13:00:20 +0000 (14:00 +0100)]
avcodec/sbrdsp_fixed: Fix integer overflow in shift in sbr_hf_g_filt_c()

Fixes: runtime error: shift exponent 66 is too large for 64-bit type 'long long'
Fixes: 3642/clusterfuzz-testcase-minimized-5443853801750528

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/aacsbr_fixed: Fix division by zero in sbr_gain_calc()
Michael Niedermayer [Wed, 1 Nov 2017 13:00:19 +0000 (14:00 +0100)]
avcodec/aacsbr_fixed: Fix division by zero in sbr_gain_calc()

Fixes: 3642/clusterfuzz-testcase-minimized-5443853801750528

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavutil/softfloat: Add FLOAT_MIN
Michael Niedermayer [Wed, 1 Nov 2017 13:00:18 +0000 (14:00 +0100)]
avutil/softfloat: Add FLOAT_MIN

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/h264idct_template: Fix integer overflows in ff_h264_idct8_add()
Michael Niedermayer [Sat, 4 Nov 2017 00:19:20 +0000 (01:19 +0100)]
avcodec/h264idct_template: Fix integer overflows in ff_h264_idct8_add()

Fixes: runtime error: signed integer overflow: -503316480 + -2013265038 cannot be represented in type 'int'
Fixes: 3805/clusterfuzz-testcase-minimized-6578427831255040

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavf/amr: Add amrnb and amrwb demuxers.
Carl Eugen Hoyos [Sun, 5 Nov 2017 19:51:03 +0000 (20:51 +0100)]
lavf/amr: Add amrnb and amrwb demuxers.

Fixes ticket #6678.