ffmpeg.git
3 years agoon2avc: limit number of bits to 30 in get_egolomb
Andreas Cadhalpun [Wed, 16 Dec 2015 15:48:19 +0000 (16:48 +0100)]
on2avc: limit number of bits to 30 in get_egolomb

More don't fit into the integer output.

Also use get_bits_long, since get_bits only supports reading up to 25
bits, while get_bits_long supports the full integer range.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoacenc: remove deprecated avctx->frame_bits use
Rostislav Pehlivanov [Fri, 18 Dec 2015 14:27:13 +0000 (14:27 +0000)]
acenc: remove deprecated avctx->frame_bits use

The type of last_frame_pb_count was chosen to be an int since overflow
is impossible (the spec says the maximum bits per frame is 6144 per
channel and the encoder checks for that).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
3 years agodoc/filters: copy all input modes to output modes.
Paul B Mahol [Fri, 18 Dec 2015 13:36:39 +0000 (14:36 +0100)]
doc/filters: copy all input modes to output modes.

For people who cant read.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_stereo3d: add fast path for interleave rows to mono
Paul B Mahol [Fri, 18 Dec 2015 12:30:49 +0000 (13:30 +0100)]
avfilter/vf_stereo3d: add fast path for interleave rows to mono

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoMerge commit '458e53f51fc75d08df884f8e9eb3d7ded23e97b3'
Hendrik Leppkes [Fri, 18 Dec 2015 13:53:19 +0000 (14:53 +0100)]
Merge commit '458e53f51fc75d08df884f8e9eb3d7ded23e97b3'

* commit '458e53f51fc75d08df884f8e9eb3d7ded23e97b3':
  mpegvideo_enc: actually add the side data with vbv_delay to the packet

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'b0b133b8c02984ba0a50448f632a5dd8a50c9045'
Hendrik Leppkes [Fri, 18 Dec 2015 13:53:00 +0000 (14:53 +0100)]
Merge commit 'b0b133b8c02984ba0a50448f632a5dd8a50c9045'

* commit 'b0b133b8c02984ba0a50448f632a5dd8a50c9045':
  hevcdsp: use a macro for .rodata section

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '81c95eb8eee856d98d4ac37367dbc761f2faf875'
Hendrik Leppkes [Fri, 18 Dec 2015 13:52:18 +0000 (14:52 +0100)]
Merge commit '81c95eb8eee856d98d4ac37367dbc761f2faf875'

* commit '81c95eb8eee856d98d4ac37367dbc761f2faf875':
  openh264: Directly include the deprecation guards header

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '34138ece23c8ddae543269212a051c00d49e67d7'
Hendrik Leppkes [Fri, 18 Dec 2015 13:50:54 +0000 (14:50 +0100)]
Merge commit '34138ece23c8ddae543269212a051c00d49e67d7'

* commit '34138ece23c8ddae543269212a051c00d49e67d7':
  log: Use a do {} while (0) for tlog

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'febfb49a70e82f5ac46dc7ea34dabd4d56b19b31'
Hendrik Leppkes [Fri, 18 Dec 2015 13:49:56 +0000 (14:49 +0100)]
Merge commit 'febfb49a70e82f5ac46dc7ea34dabd4d56b19b31'

* commit 'febfb49a70e82f5ac46dc7ea34dabd4d56b19b31':
  matroskadec: Fix sample_aspect_ratio for stereo matroska content

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agolavc/sunrastenc: fix private codec options
Hendrik Leppkes [Fri, 18 Dec 2015 13:44:49 +0000 (14:44 +0100)]
lavc/sunrastenc: fix private codec options

The options were not actually hooked up.

3 years agoMerge commit 'c34df422628e6b7b657faee241fe7bb2629e0f57'
Hendrik Leppkes [Fri, 18 Dec 2015 13:39:59 +0000 (14:39 +0100)]
Merge commit 'c34df422628e6b7b657faee241fe7bb2629e0f57'

* commit 'c34df422628e6b7b657faee241fe7bb2629e0f57':
  sgienc: Make sure to initialize skipped header portions

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '16216b713f9a21865cc07993961cf5d0ece24916'
Hendrik Leppkes [Fri, 18 Dec 2015 13:39:15 +0000 (14:39 +0100)]
Merge commit '16216b713f9a21865cc07993961cf5d0ece24916'

* commit '16216b713f9a21865cc07993961cf5d0ece24916':
  lavc: Drop exporting 2-pass encoding stats

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'be00ec832c519427cd92218abac77dafdc1d5487'
Hendrik Leppkes [Fri, 18 Dec 2015 13:27:41 +0000 (14:27 +0100)]
Merge commit 'be00ec832c519427cd92218abac77dafdc1d5487'

* commit 'be00ec832c519427cd92218abac77dafdc1d5487':
  lavc: Deprecate coder_type and its symbols

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoavfilter/vf_stereo3d: fix interleave rows output
Paul B Mahol [Fri, 18 Dec 2015 09:48:36 +0000 (10:48 +0100)]
avfilter/vf_stereo3d: fix interleave rows output

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_stereo3d: add fast path for interleave rows to alternating
Paul B Mahol [Fri, 18 Dec 2015 09:34:19 +0000 (10:34 +0100)]
avfilter/vf_stereo3d: add fast path for interleave rows to alternating

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agolavu/error: add missing error messages for errors supported on all platforms
Marton Balint [Wed, 9 Dec 2015 20:45:01 +0000 (21:45 +0100)]
lavu/error: add missing error messages for errors supported on all platforms

We need these if we have no strerror_r.

Descriptions are taken from doc/errno.txt except for ENOMEM.

Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agodoc/errno: fix description typo for ENAMETOOLONG
Marton Balint [Wed, 9 Dec 2015 20:45:54 +0000 (21:45 +0100)]
doc/errno: fix description typo for ENAMETOOLONG

Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agoavcodec/h264_mc_template: prefetch list1 only if it is used in the MB
Michael Niedermayer [Thu, 17 Dec 2015 23:20:51 +0000 (00:20 +0100)]
avcodec/h264_mc_template: prefetch list1 only if it is used in the MB

Fixes ubsan warning
Fixes Mozilla bug 1230276

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/h264_slice: Simplify ref2frm indexing
Michael Niedermayer [Thu, 17 Dec 2015 21:51:00 +0000 (22:51 +0100)]
avcodec/h264_slice: Simplify ref2frm indexing

This also suppresses a ubsan warning
Fixes Mozilla bug 1230247

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavc/opus_celt: replace pow by exp2
Ganesh Ajjanagadde [Wed, 9 Dec 2015 23:23:00 +0000 (18:23 -0500)]
lavc/opus_celt: replace pow by exp2

exp2 is faster.

It may be possible to optimize further; e.g the exponents seem to be
multiples of 0.25. This requires study though.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoRevert "avcodec/aarch64/neon.S: Update neon.s for transpose_4x4H"
Michael Niedermayer [Thu, 17 Dec 2015 20:14:45 +0000 (21:14 +0100)]
Revert "avcodec/aarch64/neon.S: Update neon.s for transpose_4x4H"

The change was not correct and broke H264

This reverts commit cd83f899c94f691b045697d12efa21f83eb2329f.

3 years agosonic: make sure num_taps * channels is not larger than frame_size
Andreas Cadhalpun [Tue, 15 Dec 2015 22:43:03 +0000 (23:43 +0100)]
sonic: make sure num_taps * channels is not larger than frame_size

If that is the case, the loop setting predictor_state in
sonic_decode_frame causes out of bounds reads of int_samples, which has
only frame_size number of elements.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoavfilter/af_sofalizer: Fix occured typo
Michael Niedermayer [Thu, 17 Dec 2015 17:58:53 +0000 (18:58 +0100)]
avfilter/af_sofalizer: Fix occured typo

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/diracdec: Check ff_set_dimensions() for failure
Michael Niedermayer [Thu, 17 Dec 2015 16:02:14 +0000 (17:02 +0100)]
avcodec/diracdec: Check ff_set_dimensions() for failure

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/oggparsedirac: Export sample aspect ratio
Michael Niedermayer [Thu, 17 Dec 2015 15:01:43 +0000 (16:01 +0100)]
avformat/oggparsedirac: Export sample aspect ratio

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/diracdec: fix aspect ratio (it was lost after efcc8fddd6b7d1f931ff349e195d78c...
Michael Niedermayer [Thu, 17 Dec 2015 15:01:21 +0000 (16:01 +0100)]
avcodec/diracdec: fix aspect ratio (it was lost after efcc8fddd6b7d1f931ff349e195d78c3c943d7fd)

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/xmv: Add *.xmv to the recognized extensions for the XMV format.
rsn8887 [Wed, 16 Dec 2015 23:08:23 +0000 (17:08 -0600)]
avformat/xmv: Add *.xmv to the recognized extensions for the XMV format.

3 years agolavc/nellymoserenc: avoid wasteful pow
Ganesh Ajjanagadde [Wed, 9 Dec 2015 23:50:28 +0000 (18:50 -0500)]
lavc/nellymoserenc: avoid wasteful pow

exp2 suffices here. Some trivial speedup is done in addition here by
reusing results.

This retains accuracy, and in particular results in identical values
with GNU libm + gcc/clang.

sample benchmark (Haswell, GNU/Linux):
proposed : 424160 decicycles in pow_table,     512 runs,      0 skips
exp2 only: 1262093 decicycles in pow_table,     512 runs,      0 skips
old      : 2849085 decicycles in pow_table,     512 runs,      0 skips

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agolavu/random_seed: use arc4random() when available
Ganesh Ajjanagadde [Mon, 7 Dec 2015 02:10:21 +0000 (21:10 -0500)]
lavu/random_seed: use arc4random() when available

arc4random() was designed as a superior interface for system random
number generation, designed for OpenBSD and subsequently incorporated by
other BSD's, Mac OS X, and some non-standard libc's. It is thus an improvement to
use it whenever available.

As a side note, this may or may not get included in glibc, and there is
a proposal to create a posix_random family based on these ideas:
http://austingroupbugs.net/view.php?id=859.

Tested on Mac OS X.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoMerge commit 'f1ccd076801444ab7f524cb13e0886faaf10fd50'
Hendrik Leppkes [Thu, 17 Dec 2015 14:03:50 +0000 (15:03 +0100)]
Merge commit 'f1ccd076801444ab7f524cb13e0886faaf10fd50'

* commit 'f1ccd076801444ab7f524cb13e0886faaf10fd50':
  h264: do not call frame_start() for missing frames

Not merged, FFmpeg does a lot more in frame_start to setup missing frames
as well (like coloring them), and the overhead of the other setup is
minimal.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'd6dc5d15af0d8617611281a34a2c3f9ced149ccf'
Hendrik Leppkes [Thu, 17 Dec 2015 13:53:37 +0000 (14:53 +0100)]
Merge commit 'd6dc5d15af0d8617611281a34a2c3f9ced149ccf'

* commit 'd6dc5d15af0d8617611281a34a2c3f9ced149ccf':
  aacdec: fix aac_static_table_init() prototype

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '68e547ae8b455e5e2b60839f35c359d77a6d94bc'
Hendrik Leppkes [Thu, 17 Dec 2015 13:52:28 +0000 (14:52 +0100)]
Merge commit '68e547ae8b455e5e2b60839f35c359d77a6d94bc'

* commit '68e547ae8b455e5e2b60839f35c359d77a6d94bc':
  avpacket: use ERANGE instead of EOVERFLOW

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'd5f5c90be9ec120f1320dcdd808b7bd917dee47c'
Hendrik Leppkes [Thu, 17 Dec 2015 13:52:15 +0000 (14:52 +0100)]
Merge commit 'd5f5c90be9ec120f1320dcdd808b7bd917dee47c'

* commit 'd5f5c90be9ec120f1320dcdd808b7bd917dee47c':
  rtsp: free opts dictionary on failure of getnameinfo

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '8df8f0c70c9c2085d9ca186b7cbf43656c4412eb'
Hendrik Leppkes [Thu, 17 Dec 2015 13:52:05 +0000 (14:52 +0100)]
Merge commit '8df8f0c70c9c2085d9ca186b7cbf43656c4412eb'

* commit '8df8f0c70c9c2085d9ca186b7cbf43656c4412eb':
  movenc-test: add a missing va_end call

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'b8b21dee0f0b4bcc1888067c497d6e838859d2cd'
Hendrik Leppkes [Thu, 17 Dec 2015 13:49:24 +0000 (14:49 +0100)]
Merge commit 'b8b21dee0f0b4bcc1888067c497d6e838859d2cd'

* commit 'b8b21dee0f0b4bcc1888067c497d6e838859d2cd':
  mxfenc: always assume long gop

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'e02de9df4b218bd6e1e927b67fd4075741545688'
Hendrik Leppkes [Thu, 17 Dec 2015 13:48:46 +0000 (14:48 +0100)]
Merge commit 'e02de9df4b218bd6e1e927b67fd4075741545688'

* commit 'e02de9df4b218bd6e1e927b67fd4075741545688':
  lavc: export Dirac parsing API used by the ogg demuxer as public

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '8bcadaacc2b8dc3c5d6569835a5ca20e62d3efca'
Hendrik Leppkes [Thu, 17 Dec 2015 12:55:39 +0000 (13:55 +0100)]
Merge commit '8bcadaacc2b8dc3c5d6569835a5ca20e62d3efca'

* commit '8bcadaacc2b8dc3c5d6569835a5ca20e62d3efca':
  mpegenc: use the CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '5845a8273e4694e0254ad728970b82bb64fd8bc0'
Hendrik Leppkes [Thu, 17 Dec 2015 12:50:36 +0000 (13:50 +0100)]
Merge commit '5845a8273e4694e0254ad728970b82bb64fd8bc0'

* commit '5845a8273e4694e0254ad728970b82bb64fd8bc0':
  movenc: use the CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '825900248b4053515803152d3165efdb034b660b'
Hendrik Leppkes [Thu, 17 Dec 2015 12:42:53 +0000 (13:42 +0100)]
Merge commit '825900248b4053515803152d3165efdb034b660b'

* commit '825900248b4053515803152d3165efdb034b660b':
  qsvenc: export CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '1520c6ff05d835da4b793318fc88bbbc129c86a1'
Hendrik Leppkes [Thu, 17 Dec 2015 12:41:29 +0000 (13:41 +0100)]
Merge commit '1520c6ff05d835da4b793318fc88bbbc129c86a1'

* commit '1520c6ff05d835da4b793318fc88bbbc129c86a1':
  nvenc: export CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '2507b5dd674834be7261772996f47ae3b95cca69'
Hendrik Leppkes [Thu, 17 Dec 2015 12:36:09 +0000 (13:36 +0100)]
Merge commit '2507b5dd674834be7261772996f47ae3b95cca69'

* commit '2507b5dd674834be7261772996f47ae3b95cca69':
  mpegvideo_enc: export vbv_delay in side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '3f5c99fcbb2c366d7bdef8500c19f43a33bdb6b9'
Hendrik Leppkes [Thu, 17 Dec 2015 12:35:34 +0000 (13:35 +0100)]
Merge commit '3f5c99fcbb2c366d7bdef8500c19f43a33bdb6b9'

* commit '3f5c99fcbb2c366d7bdef8500c19f43a33bdb6b9':
  mpegvideo_enc: export CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '732a37d1466d45b3812509d68c82e783530e291a'
Hendrik Leppkes [Thu, 17 Dec 2015 12:34:51 +0000 (13:34 +0100)]
Merge commit '732a37d1466d45b3812509d68c82e783530e291a'

* commit '732a37d1466d45b3812509d68c82e783530e291a':
  libx264: export CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '03afb62e83516141ba999536fc97575faefb98af'
Hendrik Leppkes [Thu, 17 Dec 2015 12:33:20 +0000 (13:33 +0100)]
Merge commit '03afb62e83516141ba999536fc97575faefb98af'

* commit '03afb62e83516141ba999536fc97575faefb98af':
  libvpxenc: export CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '11c9bd633f635f07a762be1ecd672de55daf4edc'
Hendrik Leppkes [Thu, 17 Dec 2015 12:31:21 +0000 (13:31 +0100)]
Merge commit '11c9bd633f635f07a762be1ecd672de55daf4edc'

* commit '11c9bd633f635f07a762be1ecd672de55daf4edc':
  libopenh264enc: export CPB props side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'f0b769c16daafa64720dcba7fa81a9f5255e1d29'
Hendrik Leppkes [Thu, 17 Dec 2015 12:25:52 +0000 (13:25 +0100)]
Merge commit 'f0b769c16daafa64720dcba7fa81a9f5255e1d29'

* commit 'f0b769c16daafa64720dcba7fa81a9f5255e1d29':
  lavc: add a packet side data type for VBV-like parameters

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'e63e3797a1ed9346f529848e6ba3d27fd2d2cc8d'
Hendrik Leppkes [Thu, 17 Dec 2015 12:20:37 +0000 (13:20 +0100)]
Merge commit 'e63e3797a1ed9346f529848e6ba3d27fd2d2cc8d'

* commit 'e63e3797a1ed9346f529848e6ba3d27fd2d2cc8d':
  avconv: pass the global codec side data to the muxer

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '84adab333cddeefc3cfd843089dee23f58bd372c'
Hendrik Leppkes [Thu, 17 Dec 2015 12:18:18 +0000 (13:18 +0100)]
Merge commit '84adab333cddeefc3cfd843089dee23f58bd372c'

* commit '84adab333cddeefc3cfd843089dee23f58bd372c':
  lavc: add stream-global packet side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '31c51f7441de07b88cfea2550245bf1f5140cb8f'
Hendrik Leppkes [Thu, 17 Dec 2015 12:12:07 +0000 (13:12 +0100)]
Merge commit '31c51f7441de07b88cfea2550245bf1f5140cb8f'

* commit '31c51f7441de07b88cfea2550245bf1f5140cb8f':
  avpacket: add a function for wrapping existing data as side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'b09ad37c83841c399abb7f2503a2ab214d0c2d48'
Hendrik Leppkes [Thu, 17 Dec 2015 12:00:37 +0000 (13:00 +0100)]
Merge commit 'b09ad37c83841c399abb7f2503a2ab214d0c2d48'

* commit 'b09ad37c83841c399abb7f2503a2ab214d0c2d48':
  h264: derive the delay from the level when it's not present

Merged without changing the strict_std_compliance check, as it breaks FATE
and changes decoding behavior.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '792b9c9dfcf44b657d7854368d975b5ca3bc22ca'
Hendrik Leppkes [Thu, 17 Dec 2015 11:59:25 +0000 (12:59 +0100)]
Merge commit '792b9c9dfcf44b657d7854368d975b5ca3bc22ca'

* commit '792b9c9dfcf44b657d7854368d975b5ca3bc22ca':
  h264: set frame_num in start_frame(), not decode_slice_header()

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '741b494fa8cd28a7d096349bac183893c236e3f9'
Hendrik Leppkes [Thu, 17 Dec 2015 11:45:28 +0000 (12:45 +0100)]
Merge commit '741b494fa8cd28a7d096349bac183893c236e3f9'

* commit '741b494fa8cd28a7d096349bac183893c236e3f9':
  h264: eliminate default_ref_list

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoffmpeg: add progress speed to status line and report
Moritz Barsnick [Fri, 11 Dec 2015 15:49:14 +0000 (16:49 +0100)]
ffmpeg: add progress speed to status line and report

This adds a computation of the progress speed versus realtime ("Nx")
to the status line and to the report log. It uses the progress time
as already calculated for total output time as a base.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/swfenc: Check frama rate before writing it
Michael Niedermayer [Thu, 17 Dec 2015 00:23:43 +0000 (01:23 +0100)]
avformat/swfenc: Check frama rate before writing it

Fixes assertion failure with ffserver

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agodiracdec: Fix codeblock parameters reading
Kieran Kunhya [Wed, 16 Dec 2015 23:26:03 +0000 (23:26 +0000)]
diracdec: Fix codeblock parameters reading

3 years agodiracdec: Add support for HQ profile
Kieran Kunhya [Wed, 9 Dec 2015 00:03:17 +0000 (00:03 +0000)]
diracdec: Add support for HQ profile

3 years agodiracdec: Add 10-bits to pix_fmt table
Kieran Kunhya [Tue, 8 Dec 2015 23:52:54 +0000 (23:52 +0000)]
diracdec: Add 10-bits to pix_fmt table

3 years agoopus_silk: fix typo causing overflow in silk_stabilize_lsf
Andreas Cadhalpun [Tue, 15 Dec 2015 21:00:31 +0000 (22:00 +0100)]
opus_silk: fix typo causing overflow in silk_stabilize_lsf

Due to this typo max_center can be too large, causing nlsf to be set to
too large values, which in turn can cause nlsf[i - 1] + min_delta[i] to
overflow to a negative value, which is not allowed for nlsf and can
cause an out of bounds read in silk_lsf2lpc.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoffprobe: use print_val to print the frame pkt_size value
Stefano Sabatini [Wed, 16 Dec 2015 17:57:05 +0000 (18:57 +0100)]
ffprobe: use print_val to print the frame pkt_size value

This allows to honour formatting options.

3 years agoavfilter/af_sofalizer: use SIMD in compensate_volume()
Paul B Mahol [Wed, 16 Dec 2015 13:44:20 +0000 (14:44 +0100)]
avfilter/af_sofalizer: use SIMD in compensate_volume()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agomips: add mips64r2 architecture variant
Vicente Olivert Riera [Thu, 3 Dec 2015 13:22:23 +0000 (13:22 +0000)]
mips: add mips64r2 architecture variant

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agomips: i6400 core is not mips32r2, so disable mips32r2
Vicente Olivert Riera [Thu, 3 Dec 2015 13:22:22 +0000 (13:22 +0000)]
mips: i6400 core is not mips32r2, so disable mips32r2

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffmpeg: Allow specifying the program number for created programs
Michael Niedermayer [Tue, 15 Dec 2015 15:27:52 +0000 (16:27 +0100)]
ffmpeg: Allow specifying the program number for created programs

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavc: move exp2fi to ff_exp2fi in internal.h
Ganesh Ajjanagadde [Wed, 16 Dec 2015 04:44:54 +0000 (23:44 -0500)]
lavc: move exp2fi to ff_exp2fi in internal.h

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agolavu/eval: remove pow and exp2 for postfixes
Ganesh Ajjanagadde [Wed, 16 Dec 2015 03:42:05 +0000 (22:42 -0500)]
lavu/eval: remove pow and exp2 for postfixes

These postfixes can be computed statically, and there is no need to
waste runtime resources.

Tested with FATE.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoavfilter/vf_stereo3d: get rid of ts_unit hack
Paul B Mahol [Wed, 16 Dec 2015 11:36:21 +0000 (12:36 +0100)]
avfilter/vf_stereo3d: get rid of ts_unit hack

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agolavc/libopenh264: apply minor options text consistency fixes
Stefano Sabatini [Mon, 14 Dec 2015 18:08:53 +0000 (19:08 +0100)]
lavc/libopenh264: apply minor options text consistency fixes

3 years agodoc/encoders/libopenh264: update documentation after recent changes
Stefano Sabatini [Mon, 14 Dec 2015 18:07:47 +0000 (19:07 +0100)]
doc/encoders/libopenh264: update documentation after recent changes

3 years agolavc: typo fix uncliped -> unclipped
Ganesh Ajjanagadde [Sat, 12 Dec 2015 00:53:00 +0000 (19:53 -0500)]
lavc: typo fix uncliped -> unclipped

Untested due to lack of ppc.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoffm: reject invalid codec_id and codec_type
Andreas Cadhalpun [Mon, 14 Dec 2015 21:11:55 +0000 (22:11 +0100)]
ffm: reject invalid codec_id and codec_type

A negative codec_id cannot be handled by the found_decoder API of
AVStream->info: if the codec_id is not recognized, found_decoder is set
to -codec_id, which has to be '<0' according to the API documentation.

This can cause NULL pointer dereferencing in try_decode_frame.

Also make sure the codec_type matches the expected one for codec_id.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoavfilter/af_ladspa: unbreak Mch -> Nch plugins, where M < N
Paul B Mahol [Tue, 15 Dec 2015 19:53:13 +0000 (20:53 +0100)]
avfilter/af_ladspa: unbreak Mch -> Nch plugins, where M < N

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoffserver: explicitly use time_t for uptime calc
Reynaldo H. Verdejo Pinochet [Tue, 15 Dec 2015 07:28:03 +0000 (23:28 -0800)]
ffserver: explicitly use time_t for uptime calc

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agoffserver: free pathname before bailing out
Reynaldo H. Verdejo Pinochet [Tue, 15 Dec 2015 05:36:11 +0000 (21:36 -0800)]
ffserver: free pathname before bailing out

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agoffserver: use EXIT_FAILURE on failed child fork()
Reynaldo H. Verdejo Pinochet [Tue, 15 Dec 2015 05:32:45 +0000 (21:32 -0800)]
ffserver: use EXIT_FAILURE on failed child fork()

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agoffserver: be explicit on failed fork() msg
Reynaldo H. Verdejo Pinochet [Tue, 15 Dec 2015 00:10:20 +0000 (16:10 -0800)]
ffserver: be explicit on failed fork() msg

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agoffserver: allocate AVStream's internal too
Reynaldo H. Verdejo Pinochet [Mon, 14 Dec 2015 17:49:08 +0000 (09:49 -0800)]
ffserver: allocate AVStream's internal too

Avoids segfault at init_muxer() (mux.c) due to a
null pointer dereference on the recently
introduced AVStream->internal

Fixes: #5059 (https://trac.ffmpeg.org/ticket/5059)

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agomovenc: support cenc (common encryption)
erankor [Mon, 7 Dec 2015 10:01:09 +0000 (12:01 +0200)]
movenc: support cenc (common encryption)

support writing encrypted mp4 using aes-ctr, conforming to ISO/IEC
23001-7.

3 new parameters were added:
- encryption_scheme - allowed values are none (default) and cenc-aes-ctr
- encryption_key - 128 bit encryption key (hex)
- encryption_kid - 128 bit encryption key identifier (hex)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolibavutil: add aes-ctr support
erankor [Mon, 7 Dec 2015 09:58:41 +0000 (11:58 +0200)]
libavutil: add aes-ctr support

for supporting mp4 cenc encoding/decoding

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/vf_stereo3d: add direct (faster) path:
Paul B Mahol [Tue, 15 Dec 2015 10:11:41 +0000 (11:11 +0100)]
avfilter/vf_stereo3d: add direct (faster) path:

for above below and side by side to alternating format
for above below and side by side to mono format

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoMerge commit 'e7078e842d93436edba1f30af1f9869d3913f7fe'
Hendrik Leppkes [Tue, 15 Dec 2015 09:46:21 +0000 (10:46 +0100)]
Merge commit 'e7078e842d93436edba1f30af1f9869d3913f7fe'

* commit 'e7078e842d93436edba1f30af1f9869d3913f7fe':
  hevcdsp: add x86 SIMD for MC

Not merged, FFmpeg HEVC DSP has diverged substantially from Libav.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '0cef06df073934ca08d0357fcbbbcf2bc9b2a0cd'
Hendrik Leppkes [Tue, 15 Dec 2015 09:45:06 +0000 (10:45 +0100)]
Merge commit '0cef06df073934ca08d0357fcbbbcf2bc9b2a0cd'

* commit '0cef06df073934ca08d0357fcbbbcf2bc9b2a0cd':
  checkasm: add HEVC MC tests

Not merged, FFmpeg HEVC DSP has diverged substantially from Libav.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'a853388d2fc5be848cca839a9fdf39a97c2d7b0e'
Hendrik Leppkes [Tue, 15 Dec 2015 09:43:54 +0000 (10:43 +0100)]
Merge commit 'a853388d2fc5be848cca839a9fdf39a97c2d7b0e'

* commit 'a853388d2fc5be848cca839a9fdf39a97c2d7b0e':
  hevc: change the stride of the MC buffer to be in bytes instead of elements

Not merged, FFmpeg HEVC DSP has diverged substantially from Libav.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '688417399c69aadd4c287bdb0dec82ef8799011c'
Hendrik Leppkes [Tue, 15 Dec 2015 09:43:06 +0000 (10:43 +0100)]
Merge commit '688417399c69aadd4c287bdb0dec82ef8799011c'

* commit '688417399c69aadd4c287bdb0dec82ef8799011c':
  hevcdsp: split the pred functions by width

Not merged, FFmpeg HEVC DSP has diverged substantially from Libav.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '818bfe7f0a3ff243deb63c4b146de2563f38ffd4'
Hendrik Leppkes [Tue, 15 Dec 2015 09:42:13 +0000 (10:42 +0100)]
Merge commit '818bfe7f0a3ff243deb63c4b146de2563f38ffd4'

* commit '818bfe7f0a3ff243deb63c4b146de2563f38ffd4':
  hevcdsp: split the epel functions by width

Not merged, FFmpeg HEVC DSP has diverged substantially from Libav.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '1f821750f0b8d0c87cbf88a28ad699b92db5ec88'
Hendrik Leppkes [Tue, 15 Dec 2015 09:41:26 +0000 (10:41 +0100)]
Merge commit '1f821750f0b8d0c87cbf88a28ad699b92db5ec88'

* commit '1f821750f0b8d0c87cbf88a28ad699b92db5ec88':
  hevcdsp: split the qpel functions by width instead of by the subpixel fraction

Not merged, FFmpeg HEVC DSP has diverged substantially from Libav.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agolavc/utils: use AVPixFmtDescriptor to probe palette formats
Matthieu Bouron [Mon, 14 Dec 2015 16:49:48 +0000 (17:49 +0100)]
lavc/utils: use AVPixFmtDescriptor to probe palette formats

Also use the input frame format instead of the AVCodecContext one according
to the documentation of AVCodecContext.get_buffer2().

3 years agolavfi: use a video frame pool for each link of the filtergraph
Matthieu Bouron [Fri, 11 Dec 2015 12:32:47 +0000 (13:32 +0100)]
lavfi: use a video frame pool for each link of the filtergraph

3 years agoavfilter/af_sofalizer: check av_fft_init return code
Paul B Mahol [Tue, 15 Dec 2015 09:03:05 +0000 (10:03 +0100)]
avfilter/af_sofalizer: check av_fft_init return code

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoswscale/x86/rgb2rgb_template: Fallback to mmx in interleaveBytes() if the alignment...
Michael Niedermayer [Tue, 15 Dec 2015 01:50:20 +0000 (02:50 +0100)]
swscale/x86/rgb2rgb_template: Fallback to mmx in interleaveBytes() if the alignment is insufficient for SSE*

This also as a sideeffect fixes the non aligned case

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoswscale/x86/rgb2rgb_template: Do not crash on misaligend stride
Michael Niedermayer [Tue, 15 Dec 2015 01:06:04 +0000 (02:06 +0100)]
swscale/x86/rgb2rgb_template: Do not crash on misaligend stride

Fixes Ticket5013

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/vf_decimate: fix typo in fraction
Michael Niedermayer [Mon, 14 Dec 2015 21:59:38 +0000 (22:59 +0100)]
avfilter/vf_decimate: fix typo in fraction

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoconfigure: add conditional library dependency for sofalizer and showfreqs
Paul B Mahol [Mon, 14 Dec 2015 21:41:52 +0000 (22:41 +0100)]
configure: add conditional library dependency for sofalizer and showfreqs

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_sofalizer: add frequency domain processing and use it by default
Paul B Mahol [Sun, 13 Dec 2015 22:05:09 +0000 (23:05 +0100)]
avfilter/af_sofalizer: add frequency domain processing and use it by default

Code ported from SOFAlizer patch for VLC.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/vf_decimate: Check that input parameters match
Michael Niedermayer [Mon, 14 Dec 2015 20:18:39 +0000 (21:18 +0100)]
avfilter/vf_decimate: Check that input parameters match

Fixes Ticket4964

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agogolomb: always check for invalid UE golomb codes in get_ue_golomb
Andreas Cadhalpun [Sun, 13 Dec 2015 20:02:16 +0000 (21:02 +0100)]
golomb: always check for invalid UE golomb codes in get_ue_golomb

Also correct the check to reject log < 7, because UPDATE_CACHE only
guarantees 25 meaningful bits.

This fixes undefined behavior:
runtime error: shift exponent is negative

Testing with START/STOP timers in get_ue_golomb, one for the first
branch (A) and one for the second (B), shows that there is practically no
slowdown, e.g. for the cavs decoder:

With the check in the B branch:
    629 decicycles in get_ue_golomb B, 4194260 runs,     44 skips
    433 decicycles in get_ue_golomb A,268434102 runs,   1354 skips

Without the check:
    624 decicycles in get_ue_golomb B, 4194273 runs,     31 skips
    433 decicycles in get_ue_golomb A,268434203 runs,   1253 skips

Since the B branch is executed far less often than the A branch, this
change is negligible, even more so for the h264 decoder, where the ratio
B/A is a lot smaller.

Fixes: mozilla bug 1230239
Fixes: fbeb8b2c7c996e9b91c6b1af319d7ebc/asan_heap-oob_195450f_2743_e8856ece4579ea486670be2b236099a0.bit

Found-by: Tyson Smith
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoavfilter/vf_decimate: change ts_unit to AVRational
Michael Niedermayer [Mon, 14 Dec 2015 19:24:21 +0000 (20:24 +0100)]
avfilter/vf_decimate: change ts_unit to AVRational

This might help with rounding differences between platforms

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/vf_mpdecimate: Add missing emms_c()
Michael Niedermayer [Mon, 14 Dec 2015 17:56:13 +0000 (18:56 +0100)]
avfilter/vf_mpdecimate: Add missing emms_c()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoaacenc: switch to using the RNG from libavutil
Rostislav Pehlivanov [Mon, 14 Dec 2015 18:53:09 +0000 (18:53 +0000)]
aacenc: switch to using the RNG from libavutil

PSNR doesn't change as expected. The AAC spec doesn't really say
anything about how exactly to generate noise.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoavfilter/vf_delogo: fix show option when clipping
Jean Delvare [Mon, 14 Dec 2015 10:23:05 +0000 (11:23 +0100)]
avfilter/vf_delogo: fix show option when clipping

The show option did not take clipping into account, so the borders on
the clipped side wouldn't show up. Fix it.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/nvenc: clamp initial qp value to [1, 51]
Agatha Hu [Mon, 14 Dec 2015 09:34:59 +0000 (10:34 +0100)]
avcodec/nvenc: clamp initial qp value to [1, 51]

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>