ffmpeg.git
3 years agoavformat/avienc: assert that bits_per_coded_sample is within the supported range...
Michael Niedermayer [Sat, 5 Mar 2016 17:18:07 +0000 (18:18 +0100)]
avformat/avienc: assert that bits_per_coded_sample is within the supported range (out of array access otherwise)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agofate: Add pal8 copy test for avi
Michael Niedermayer [Sat, 5 Mar 2016 16:39:48 +0000 (17:39 +0100)]
fate: Add pal8 copy test for avi

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/avienc: Add support for palette side data
Mats Peterson [Sat, 5 Mar 2016 11:16:57 +0000 (12:16 +0100)]
lavf/avienc: Add support for palette side data

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/riffenc: Handle palette for non-raw codecs
Mats Peterson [Wed, 2 Mar 2016 23:28:23 +0000 (00:28 +0100)]
lavf/riffenc: Handle palette for non-raw codecs

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavc: restore ABI compatibility with 3.x (sub_text_format)
Clément Bœsch [Sat, 5 Mar 2016 09:15:30 +0000 (10:15 +0100)]
lavc: restore ABI compatibility with 3.x (sub_text_format)

Regression introduced in 2941282.

Reported-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/cos_tablegen: extend table generation to 17bits
James Almer [Sat, 5 Mar 2016 02:35:54 +0000 (23:35 -0300)]
avcodec/cos_tablegen: extend table generation to 17bits

Fixes compilation of fft with hardcoded tables

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoavfilter/f_bench: Fix comparission condition
Michael Niedermayer [Sat, 5 Mar 2016 00:55:44 +0000 (01:55 +0100)]
avfilter/f_bench: Fix comparission condition

Fixes: CID1355115

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/utils: Fix memleak on error in convert_sub_to_old_ass_form()
Michael Niedermayer [Sat, 5 Mar 2016 00:38:58 +0000 (01:38 +0100)]
avcodec/utils: Fix memleak on error in convert_sub_to_old_ass_form()

Fixes CID1355116

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agovc2enc: minor cosmetic changes
Rostislav Pehlivanov [Wed, 2 Mar 2016 12:52:15 +0000 (12:52 +0000)]
vc2enc: minor cosmetic changes

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agovc2enc: remove useless alignment on slice encoding
Rostislav Pehlivanov [Wed, 2 Mar 2016 12:50:54 +0000 (12:50 +0000)]
vc2enc: remove useless alignment on slice encoding

This was a leftover from before the slices were encoded in parallel.
Since the put_bits context is initialized per slice aligning it
aferwards is pointless.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agovc2enc: do not allocate packet until exact frame size is known
Rostislav Pehlivanov [Wed, 2 Mar 2016 12:37:09 +0000 (12:37 +0000)]
vc2enc: do not allocate packet until exact frame size is known

This commit solves most of the crashes and issues with the encoder and
the bitrate setting. Now the encoder will always allocate the absolute
lowest amount of memory regardless of what the bitrate has been set to.
Therefore if a user inputs a very low bitrate the encoder will use the
maximum possible quantization (basically zero out all coefficients),
allocate a packet and encode it. There is no coupling between the
bitrate and the allocation size and so no crashes because the buffer
isn't large enough.

The maximum quantizer was raised to the size of the table now to both
keep the overshoot at ridiculous bitrates low and to improve quality
with higher bit depths (since the coefficients grow larger per transform
quantizing them to the same relative level requires larger quantization
indices).

Since the quantization index start follows the previous quantization
index for that slice, the quantization step was reduced to a static 1
to improve performance. Previously with quant/5 the step was usually
set to 0 upon start (and was later clipped to 1), that isn't a big change.
As the step size increases so does the amount of bits leftover and so
the redistribution algorithm has to iterate more and thus waste more
time.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agolavf/dump.c: Print mastering display metadata
Neil Birkbeck [Tue, 1 Mar 2016 01:20:17 +0000 (17:20 -0800)]
lavf/dump.c: Print mastering display metadata

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/matroskadec: Add early support for some of the new colour elements.
Neil Birkbeck [Tue, 1 Mar 2016 00:41:04 +0000 (16:41 -0800)]
lavf/matroskadec: Add early support for some of the new colour elements.

Adding early support for a subset of the proposed colour elements
according to the latest version of spec:
https://mailarchive.ietf.org/arch/search/?email_list=cellar&gbt=1&index=hIKLhMdgTMTEwUTeA4ct38h0tmE

I've left out elements for pix_fmt related things as there still
seems to be some discussion around these, and the max_cll/max_fall
are currently not propagated as there is not yet side data for them.

The new elements are exposed under strict experimental mode.

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/vf_histogram: explicitly set 10bit output formats
Paul B Mahol [Fri, 4 Mar 2016 21:58:45 +0000 (22:58 +0100)]
avfilter/vf_histogram: explicitly set 10bit output formats

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoconfigure: NVENC API version 6 is now required
Timo Rothenpieler [Fri, 4 Mar 2016 16:19:45 +0000 (17:19 +0100)]
configure: NVENC API version 6 is now required

3 years agoavfilter/af_afftfilt: add option for 17 fft case
Paul B Mahol [Fri, 4 Mar 2016 21:20:12 +0000 (22:20 +0100)]
avfilter/af_afftfilt: add option for 17 fft case

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_sofalizer: check if filename was set.
Paul B Mahol [Fri, 4 Mar 2016 21:14:43 +0000 (22:14 +0100)]
avfilter/af_sofalizer: check if filename was set.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavformat: Fix member name 10L
Derek Buitenhuis [Fri, 4 Mar 2016 16:33:10 +0000 (16:33 +0000)]
avformat: Fix member name 10L

The wrong member was remove/moved after review of the blacklist API.

10L cola.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '257b30af8ec520c1635092e429606c62d3bcca63'
Derek Buitenhuis [Fri, 4 Mar 2016 16:21:18 +0000 (16:21 +0000)]
Merge commit '257b30af8ec520c1635092e429606c62d3bcca63'

This commit is a no-op. We already have these, plus our asm differs.

* commit '257b30af8ec520c1635092e429606c62d3bcca63':
  x86: hevc: Fix linking with both yasm and optimizations disabled

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit 'cd846b47977485bd4063e77a3324e6b7840567a2'
Derek Buitenhuis [Fri, 4 Mar 2016 16:19:57 +0000 (16:19 +0000)]
Merge commit 'cd846b47977485bd4063e77a3324e6b7840567a2'

* commit 'cd846b47977485bd4063e77a3324e6b7840567a2':
  fate: Ignore errors from concatenating report files

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '9328adcc8012a1b0e00c465c85b5453589a4f5f7'
Derek Buitenhuis [Fri, 4 Mar 2016 16:18:32 +0000 (16:18 +0000)]
Merge commit '9328adcc8012a1b0e00c465c85b5453589a4f5f7'

* commit '9328adcc8012a1b0e00c465c85b5453589a4f5f7':
  fate: Be silent when fetching Git updates

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '5e555f93009f0605db120eec78262d0fe337e645'
Derek Buitenhuis [Fri, 4 Mar 2016 16:17:05 +0000 (16:17 +0000)]
Merge commit '5e555f93009f0605db120eec78262d0fe337e645'

AVClass is now a const, the rest are no-op.

* commit '5e555f93009f0605db120eec78262d0fe337e645':
  mpeg12enc: always write closed gops for intra only outputs
  h264: Add an AVClass pointer to H264Context
  libx264: Fix noise_reduction option assignment

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit 'ec4c48397641dbaf4ae8df36c32aaa5a311a11bf'
Derek Buitenhuis [Fri, 4 Mar 2016 16:14:53 +0000 (16:14 +0000)]
Merge commit 'ec4c48397641dbaf4ae8df36c32aaa5a311a11bf'

This is a no-op. API is already implemented by us.

* commit 'ec4c48397641dbaf4ae8df36c32aaa5a311a11bf':
  lavf: add a protocol whitelist/blacklist for file opened internally

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoavformat: Add a protocol blacklisting API
Derek Buitenhuis [Thu, 3 Mar 2016 17:14:26 +0000 (17:14 +0000)]
avformat: Add a protocol blacklisting API

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoavfilter/af_afftfilt: Extend to 17bit fft
Michael Niedermayer [Fri, 4 Mar 2016 12:53:02 +0000 (13:53 +0100)]
avfilter/af_afftfilt: Extend to 17bit fft

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/fft: Add revtab32 for FFTs with more than 65536 samples
Michael Niedermayer [Fri, 4 Mar 2016 14:39:55 +0000 (15:39 +0100)]
avcodec/fft: Add revtab32 for FFTs with more than 65536 samples

x86 optimizations are used only for the cases they support (<=65536 samples)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec: Extend fft to size 2^17
Michael Niedermayer [Thu, 3 Mar 2016 23:31:45 +0000 (00:31 +0100)]
avcodec: Extend fft to size 2^17

Asked-for-by: durandal_1707
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/nvenc: Fix H264 and HEVC vui info update
Agatha Hu [Fri, 4 Mar 2016 09:00:48 +0000 (17:00 +0800)]
avcodec/nvenc: Fix H264 and HEVC vui info update

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
3 years agoavfilter/af_sofalizer: fix crash when ir size is not aligned, usually when n_samples...
Paul B Mahol [Fri, 4 Mar 2016 09:36:11 +0000 (10:36 +0100)]
avfilter/af_sofalizer: fix crash when ir size is not aligned, usually when n_samples are not power of 2

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agofate: add qtrle/mace6 stream copy test
Michael Niedermayer [Wed, 2 Mar 2016 21:10:09 +0000 (22:10 +0100)]
fate: add qtrle/mace6 stream copy test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/movenc: Add support for palette side data
Mats Peterson [Wed, 2 Mar 2016 23:27:53 +0000 (00:27 +0100)]
lavf/movenc: Add support for palette side data

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/utils: Normalize AVPacket.data to native endian in ff_get_packet_palette()
Mats Peterson [Thu, 3 Mar 2016 07:25:58 +0000 (08:25 +0100)]
lavf/utils: Normalize AVPacket.data to native endian in ff_get_packet_palette()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/af_sofalizer: fix crash with odd IR size
Paul B Mahol [Thu, 3 Mar 2016 22:58:14 +0000 (23:58 +0100)]
avfilter/af_sofalizer: fix crash with odd IR size

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_sofalizer: print size of FFT that failed to init
Paul B Mahol [Thu, 3 Mar 2016 22:09:36 +0000 (23:09 +0100)]
avfilter/af_sofalizer: print size of FFT that failed to init

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_ciescope: Fix 'ISO C90 forbids mixed declarations and code'
Michael Niedermayer [Thu, 3 Mar 2016 20:19:32 +0000 (21:19 +0100)]
avfilter/vf_ciescope: Fix 'ISO C90 forbids mixed declarations and code'

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/utils: Fix 'ISO C90 forbids mixed declarations and code'
Michael Niedermayer [Thu, 3 Mar 2016 20:19:32 +0000 (21:19 +0100)]
avcodec/utils: Fix 'ISO C90 forbids mixed declarations and code'

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavutil/color_utils: Mark test_data as static const
Michael Niedermayer [Thu, 3 Mar 2016 20:04:08 +0000 (21:04 +0100)]
avutil/color_utils: Mark test_data as static const

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/vf_vectorscope: improve green graticule visibility
Paul B Mahol [Thu, 3 Mar 2016 20:03:23 +0000 (21:03 +0100)]
avfilter/vf_vectorscope: improve green graticule visibility

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_vectorscope: add threshold option
Paul B Mahol [Thu, 3 Mar 2016 19:44:38 +0000 (20:44 +0100)]
avfilter/vf_vectorscope: add threshold option

Useful to only display lows/mids/highs.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoAdd test for avpriv_get_trc_function_from_trc function
NagaChaitanya Vellanki [Thu, 3 Mar 2016 18:01:28 +0000 (10:01 -0800)]
Add test for avpriv_get_trc_function_from_trc function

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoMerge commit '8c0ceafb0f25da077ff23e394667119f031574fd'
Derek Buitenhuis [Thu, 3 Mar 2016 16:12:16 +0000 (16:12 +0000)]
Merge commit '8c0ceafb0f25da077ff23e394667119f031574fd'

This commit is a no-p. We already have a mechanism to do this.

* commit '8c0ceafb0f25da077ff23e394667119f031574fd':
  urlprotocol: receive a list of protocols from the caller

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoffmpeg_vdpau: Free ctx on error path
Michael Niedermayer [Thu, 3 Mar 2016 14:48:17 +0000 (15:48 +0100)]
ffmpeg_vdpau: Free ctx on error path

Fixes CID1355118

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/vf_ciescope: Fix "incompatible pointer type" warnings
Michael Niedermayer [Thu, 3 Mar 2016 13:53:08 +0000 (14:53 +0100)]
avfilter/vf_ciescope: Fix "incompatible pointer type" warnings

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agofate: fix filter-hls tests dependencies
James Almer [Thu, 3 Mar 2016 03:46:07 +0000 (00:46 -0300)]
fate: fix filter-hls tests dependencies

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoavfilter/vf_zscale: unbreak RGB support
Paul B Mahol [Thu, 3 Mar 2016 12:24:50 +0000 (13:24 +0100)]
avfilter/vf_zscale: unbreak RGB support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavcodec/dca: simplify condition
foo86 [Wed, 2 Mar 2016 19:32:10 +0000 (22:32 +0300)]
avcodec/dca: simplify condition

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/dca: fix av_cold placement in declarations
foo86 [Wed, 2 Mar 2016 19:31:46 +0000 (22:31 +0300)]
avcodec/dca: fix av_cold placement in declarations

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter: add ciescope filter
Paul B Mahol [Mon, 1 Feb 2016 20:05:16 +0000 (21:05 +0100)]
avfilter: add ciescope filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agolavfi/drawutils: Add some missing GBRP pix_fmts.
Carl Eugen Hoyos [Thu, 3 Mar 2016 10:15:30 +0000 (11:15 +0100)]
lavfi/drawutils: Add some missing GBRP pix_fmts.

Fixes for example extractplanes with GBRAP16.

3 years agoavformat/yuv4mpegdec: fix seeking for partial files
Paul B Mahol [Wed, 2 Mar 2016 19:56:01 +0000 (20:56 +0100)]
avformat/yuv4mpegdec: fix seeking for partial files

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agolavc/videotoolboxenc: remove *_NULLABLE annotations; fixes pre-10.11 build
Rodger Combs [Thu, 3 Mar 2016 03:44:28 +0000 (21:44 -0600)]
lavc/videotoolboxenc: remove *_NULLABLE annotations; fixes pre-10.11 build

These macros were added in OS X 10.11, and the file compiles without warnings
on both 10.10 and 10.11 with them removed.

Thanks to mark4o on IRC for pointing out the failure and testing the patch.

3 years agofate: add filter-hls
Michael Niedermayer [Tue, 1 Mar 2016 01:30:05 +0000 (02:30 +0100)]
fate: add filter-hls

3 years agoffmpeg: remove hardcoded 'now' creation_time support
Marton Balint [Sat, 6 Feb 2016 17:05:37 +0000 (18:05 +0100)]
ffmpeg: remove hardcoded 'now' creation_time support

Every date parsing routine now uses av_parse_time which handles 'now' and
provides greater precision as well. This change also enables the segmenter
muxer to set the proper 'now' creation time at the beginning of each segment.

Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agoavformat: use ff_standardize_creation_time for formats writing all format string...
Marton Balint [Sun, 28 Feb 2016 02:11:34 +0000 (03:11 +0100)]
avformat: use ff_standardize_creation_time for formats writing all format string metadata

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agoavformat/utils: add a function to standardize creation time
Marton Balint [Mon, 22 Feb 2016 02:13:20 +0000 (03:13 +0100)]
avformat/utils: add a function to standardize creation time

This can be used for formats which write all format metadata as string to
files, therefore non-standard creation times such as 'now' will be parsed.

The standardized creation time is UTC ISO 8601 with microsecond precision.

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agolavc: add VideoToolbox H.264 Encoder
Rick Kern [Wed, 2 Mar 2016 12:11:40 +0000 (20:11 +0800)]
lavc: add VideoToolbox H.264 Encoder

Autodetected by default. Encode using -codec:v h264_videotoolbox.

Signed-off-by: Rick Kern <kernrj@gmail.com>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
3 years agolavf/utils: Add ff_get_packet_palette()
Mats Peterson [Wed, 2 Mar 2016 02:14:05 +0000 (03:14 +0100)]
lavf/utils: Add ff_get_packet_palette()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/cache: Fix memleak of tree entries
Michael Niedermayer [Wed, 2 Mar 2016 13:09:23 +0000 (14:09 +0100)]
avformat/cache: Fix memleak of tree entries

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agofate/api: add missing FLV dependency to fate-api-seek
Clément Bœsch [Wed, 2 Mar 2016 12:51:50 +0000 (13:51 +0100)]
fate/api: add missing FLV dependency to fate-api-seek

3 years agoavfilter/vf_vectorscope: add 9 & 10 bit depth input & output support with alpha
Paul B Mahol [Wed, 2 Mar 2016 11:27:31 +0000 (12:27 +0100)]
avfilter/vf_vectorscope: add 9 & 10 bit depth input & output support with alpha

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agodoc/utils: fix typo for min() description
Paul B Mahol [Wed, 2 Mar 2016 10:20:07 +0000 (11:20 +0100)]
doc/utils: fix typo for min() description

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_vectorscope: make background opacity customizable
Paul B Mahol [Tue, 1 Mar 2016 23:39:07 +0000 (00:39 +0100)]
avfilter/vf_vectorscope: make background opacity customizable

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_vectorscope: add graticule
Paul B Mahol [Mon, 29 Feb 2016 10:32:17 +0000 (11:32 +0100)]
avfilter/vf_vectorscope: add graticule

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_vectorscope: avoid crash by explicitly checking for 8-bit depth
Paul B Mahol [Tue, 1 Mar 2016 10:05:00 +0000 (11:05 +0100)]
avfilter/vf_vectorscope: avoid crash by explicitly checking for 8-bit depth

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agolavc/aacenc_utils: replace sqrtf(Q*sqrtf(Q)) by precomputed value
Ganesh Ajjanagadde [Tue, 1 Mar 2016 03:16:16 +0000 (22:16 -0500)]
lavc/aacenc_utils: replace sqrtf(Q*sqrtf(Q)) by precomputed value

It makes no sense whatsoever to do this at each function call; we
already have a table for this.

Yields a 2x improvement in find_min_book (x86-64, Haswell+GCC):
ffmpeg -i sin.flac -acodec aac -y sin.aac
find_min_book
old
    605 decicycles in find_min_book, 8388453 runs,    155 skips.9x
    606 decicycles in find_min_book,16776912 runs,    304 skips.9x
    607 decicycles in find_min_book,33553819 runs,    613 skips.2x
    607 decicycles in find_min_book,67107668 runs,   1196 skips.3x
    607 decicycles in find_min_book,134215360 runs,   2368 skips3x

new
    359 decicycles in find_min_book, 8388552 runs,     56 skips.3x
    360 decicycles in find_min_book,16777112 runs,    104 skips.1x
    361 decicycles in find_min_book,33554218 runs,    214 skips.4x
    361 decicycles in find_min_book,67108381 runs,    483 skips.5x
    361 decicycles in find_min_book,134216725 runs,   1003 skips5x

and more importantly a non-negligible speedup (~ 8%) to overall AAC encoding:
old:
ffmpeg -i sin.flac -acodec aac -strict -2 -y sin_new.aac  6.82s user 0.03s system 104% cpu 6.565 total
new:
ffmpeg -i sin.flac -acodec aac -strict -2 -y sin_old.aac  6.24s user 0.03s system 104% cpu 5.993 total

This also improves accuracy of the expression by ~ 2 ulp in some cases.

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanag@gmail.com>
3 years agofate: add pipe and cache test
Michael Niedermayer [Mon, 29 Feb 2016 20:30:23 +0000 (21:30 +0100)]
fate: add pipe and cache test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/seek-test: Support passing options to demuxers and protocols
Michael Niedermayer [Mon, 29 Feb 2016 20:37:51 +0000 (21:37 +0100)]
avformat/seek-test: Support passing options to demuxers and protocols

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/mov: Set display aspect ratio for avid dv.
Carl Eugen Hoyos [Wed, 2 Mar 2016 01:03:46 +0000 (02:03 +0100)]
lavf/mov: Set display aspect ratio for avid dv.

Fixes ticket #5271.

3 years agosdp: fix opus sprop-stereo fmtp syntax
Mark Harris [Tue, 1 Mar 2016 04:08:14 +0000 (20:08 -0800)]
sdp: fix opus sprop-stereo fmtp syntax

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoMove the |die| member of FrameThreadContext to PerThreadContext.
Wan-Teh Chang [Tue, 1 Mar 2016 18:11:53 +0000 (10:11 -0800)]
Move the |die| member of FrameThreadContext to PerThreadContext.

This fixes a data race warning by ThreadSanitizer.
FrameThreadContext.die is read by all the worker threads but is not
protected by any mutex. Move it to PerThreadContext so that each worker
thread reads its own copy of |die|, which can then be protected with
PerThreadContext.mutex.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
3 years agosws/aarch64: add {nv12,nv21,yuv420p,yuv422p}_to_{argb,rgba,abgr,rgba}_neon
Clément Bœsch [Mon, 8 Feb 2016 14:14:17 +0000 (15:14 +0100)]
sws/aarch64: add {nv12,nv21,yuv420p,yuv422p}_to_{argb,rgba,abgr,rgba}_neon

3 years agovc2enc: fix packet underallocation and minimum bitrate with interlacing
Rostislav Pehlivanov [Tue, 1 Mar 2016 13:44:18 +0000 (13:44 +0000)]
vc2enc: fix packet underallocation and minimum bitrate with interlacing

This was a regression introduced by commit e7345abe052 which
enabled full use of the allocated packet but due to the overhead of
using field coding the buffer was too small and triggered warnings and
crashes.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agovc2enc: simplify slice cost caching
Rostislav Pehlivanov [Tue, 1 Mar 2016 13:04:40 +0000 (13:04 +0000)]
vc2enc: simplify slice cost caching

The fact that now all quantization indices costs are cached justifies
storing 20 more integers in a structure already allocated on heap.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agovc2enc: remove redundant put_padding() and use skip_put_bytes() instead
Rostislav Pehlivanov [Tue, 1 Mar 2016 11:38:19 +0000 (11:38 +0000)]
vc2enc: remove redundant put_padding() and use skip_put_bytes() instead

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agolavfi: add bench and abench filters
Clément Bœsch [Mon, 29 Feb 2016 11:19:55 +0000 (12:19 +0100)]
lavfi: add bench and abench filters

3 years agoavformat/rtpdec_h264: Ignore invalid sprop-parameter-sets missing PPS
Andrew Shulgin [Sat, 27 Feb 2016 19:32:53 +0000 (21:32 +0200)]
avformat/rtpdec_h264: Ignore invalid sprop-parameter-sets missing PPS

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavu/rational: add more info regarding floor(x+0.5) usage
Ganesh Ajjanagadde [Thu, 25 Feb 2016 01:47:00 +0000 (20:47 -0500)]
lavu/rational: add more info regarding floor(x+0.5) usage

Add some more verbose info regarding why the imprecise and slow floor(x+0.5) hack
is used; helpful for future maintenance.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanag@gmail.com>
3 years agofate: add libavcodec utils test
Michael Niedermayer [Sun, 28 Feb 2016 11:49:33 +0000 (12:49 +0100)]
fate: add libavcodec utils test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec: Add utils test
Michael Niedermayer [Sun, 28 Feb 2016 11:35:33 +0000 (12:35 +0100)]
avcodec: Add utils test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agohls: Add and use a memebr of AVIOInternal rather than abuse opaque
Derek Buitenhuis [Mon, 29 Feb 2016 20:09:32 +0000 (20:09 +0000)]
hls: Add and use a memebr of AVIOInternal rather than abuse opaque

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agofate: fix fate-libavformat target
James Almer [Mon, 29 Feb 2016 19:26:37 +0000 (16:26 -0300)]
fate: fix fate-libavformat target

Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoMerge commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d'
Derek Buitenhuis [Mon, 29 Feb 2016 18:43:04 +0000 (18:43 +0000)]
Merge commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d'

* commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d':
  aviobuf: add a private data struct for avio_open()ed contexts

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoavformat/protocols: Fix ff_urlcontext_child_class_next()
Michael Niedermayer [Mon, 29 Feb 2016 18:04:54 +0000 (19:04 +0100)]
avformat/protocols: Fix ff_urlcontext_child_class_next()

This fixes -read_ahead_limit

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/msf: Also check the codec tag in probing
Michael Niedermayer [Mon, 29 Feb 2016 12:53:13 +0000 (13:53 +0100)]
avformat/msf: Also check the codec tag in probing

Fixes probing failure

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoMerge commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2'
Derek Buitenhuis [Mon, 29 Feb 2016 18:07:41 +0000 (18:07 +0000)]
Merge commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2'

* commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2':
  protocols: make the list of protocols static

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoavformat: Remove async from TESTPROGS
Derek Buitenhuis [Mon, 29 Feb 2016 17:14:56 +0000 (17:14 +0000)]
avformat: Remove async from TESTPROGS

It is current disabled.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56'
Derek Buitenhuis [Mon, 29 Feb 2016 16:59:47 +0000 (16:59 +0000)]
Merge commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56'

* commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56':
  lavf: move urlcontext_child_class_next() to protocols.c

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6'
Derek Buitenhuis [Mon, 29 Feb 2016 16:56:47 +0000 (16:56 +0000)]
Merge commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6'

* commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6':
  lavf: move avio_enum_protocols() to protocols.c

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d'
Derek Buitenhuis [Mon, 29 Feb 2016 16:50:39 +0000 (16:50 +0000)]
Merge commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d'

This commit also disables the async fate test, because it
used internal APIs in a non-kosher way, which no longer
exists.

* commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d':
  lavf: reorganize URLProtocols

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agox86/vc1dsp: Split the file into MC and loopfilter
Timothy Gu [Mon, 29 Feb 2016 01:16:26 +0000 (17:16 -0800)]
x86/vc1dsp: Split the file into MC and loopfilter

3 years agoMerge commit '225e84e74544062706c0159ec0737b0e1d40915f'
Derek Buitenhuis [Mon, 29 Feb 2016 15:50:32 +0000 (15:50 +0000)]
Merge commit '225e84e74544062706c0159ec0737b0e1d40915f'

* commit '225e84e74544062706c0159ec0737b0e1d40915f':
  hls: disallow opening nested files in child demuxers

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728'
Derek Buitenhuis [Mon, 29 Feb 2016 15:43:00 +0000 (15:43 +0000)]
Merge commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728'

* commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728':
  smoothstreamingenc: do not open the files as read+write

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit 'd082078a88da3b3e926197d0d2aa9fa322123b76'
Derek Buitenhuis [Mon, 29 Feb 2016 15:41:03 +0000 (15:41 +0000)]
Merge commit 'd082078a88da3b3e926197d0d2aa9fa322123b76'

* commit 'd082078a88da3b3e926197d0d2aa9fa322123b76':
  dashenc: eliminate ffurl_* usage

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a'
Derek Buitenhuis [Mon, 29 Feb 2016 15:39:19 +0000 (15:39 +0000)]
Merge commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a'

* commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a':
  lavf: use the io_open callbacks for files opened from open_input() as well

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit '5efd91284e56d444139ed811671c59a129bbb92f'
Derek Buitenhuis [Mon, 29 Feb 2016 15:36:38 +0000 (15:36 +0000)]
Merge commit '5efd91284e56d444139ed811671c59a129bbb92f'

This commit is no-op. The affected piece of code does not
exist in FFmpeg.

* commit '5efd91284e56d444139ed811671c59a129bbb92f':
  avprobe: do not call avio_close() on a custom context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agoMerge commit 'dc6527ed908e4d330738f139074455ffbe56a2de'
Derek Buitenhuis [Mon, 29 Feb 2016 14:58:51 +0000 (14:58 +0000)]
Merge commit 'dc6527ed908e4d330738f139074455ffbe56a2de'

FATE tests have been updated to patch. They do not differ in
any meaningful way.

* commit 'dc6527ed908e4d330738f139074455ffbe56a2de':
  nutenc: do not use AVCodecContext.frame_size

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
3 years agolavf: Add pcx auto-detection.
Carl Eugen Hoyos [Mon, 29 Feb 2016 14:49:52 +0000 (15:49 +0100)]
lavf: Add pcx auto-detection.

3 years agolavc/pcxenc: Update format description link.
Carl Eugen Hoyos [Mon, 29 Feb 2016 11:42:29 +0000 (12:42 +0100)]
lavc/pcxenc: Update format description link.

3 years agolavf/img2dec: Skip SOS when auto-detecting jpeg.
Carl Eugen Hoyos [Mon, 29 Feb 2016 10:58:16 +0000 (11:58 +0100)]
lavf/img2dec: Skip SOS when auto-detecting jpeg.

Improves jpeg auto-detection.

3 years agobuild: add --install-name-dir=DIR Darwin option
Clément Bœsch [Fri, 19 Feb 2016 15:34:30 +0000 (16:34 +0100)]
build: add --install-name-dir=DIR Darwin option

This option is typically useful when cross-compiling dynamic libraries
for iOS, with something such as --install-name-dir=@rpath