ffmpeg.git
3 years agoMerge commit 'b0e8651a2a84553d08fbb2f7cb9697bd64fb1b55'
Hendrik Leppkes [Mon, 7 Dec 2015 13:18:41 +0000 (14:18 +0100)]
Merge commit 'b0e8651a2a84553d08fbb2f7cb9697bd64fb1b55'

* commit 'b0e8651a2a84553d08fbb2f7cb9697bd64fb1b55':
  doc: Amend the MSYS2 Documentation

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '4f979418c723652ad4e43115118c57a44bd46b52'
Hendrik Leppkes [Mon, 7 Dec 2015 13:16:36 +0000 (14:16 +0100)]
Merge commit '4f979418c723652ad4e43115118c57a44bd46b52'

* commit '4f979418c723652ad4e43115118c57a44bd46b52':
  avfoundation: Simple capture

Not merged on request by Thilo Borgmann, original author of the
AVFoundation capture in FFmpeg.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agodoc/filters: add more compand examples
Paul B Mahol [Mon, 7 Dec 2015 11:22:42 +0000 (12:22 +0100)]
doc/filters: add more compand examples

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_biquads: pass filter ctx to av_log calls
Paul B Mahol [Mon, 7 Dec 2015 10:14:59 +0000 (11:14 +0100)]
avfilter/af_biquads: pass filter ctx to av_log calls

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavutil/threadmessage: split the pthread condition in two
Clément Bœsch [Tue, 1 Dec 2015 14:54:31 +0000 (15:54 +0100)]
avutil/threadmessage: split the pthread condition in two

Fix a dead lock under certain conditions. Let's assume we have a queue of 1
message max, 2 senders, and 1 receiver.

Scenario (real record obtained with debug added):
    [...]
    SENDER #0: acquired lock
    SENDER #0: queue is full, wait
    SENDER #1: acquired lock
    SENDER #1: queue is full, wait
    RECEIVER: acquired lock
    RECEIVER: reading a msg from the queue
    RECEIVER: signal the cond
    RECEIVER: acquired lock
    RECEIVER: queue is empty, wait
    SENDER #0: writing a msg the queue
    SENDER #0: signal the cond
    SENDER #0: acquired lock
    SENDER #0: queue is full, wait
    SENDER #1: queue is full, wait

Translated:
 - initially the queue contains 1/1 message with 2 senders blocking on
   it, waiting to push another message.
 - Meanwhile the receiver is obtaining the lock, read the message,
   signal & release the lock. For some reason it is able to acquire the
   lock again before the signal wakes up one of the sender. Since it
   just emptied the queue, the reader waits for the queue to fill up
   again.
 - The signal finally reaches one of the sender, which writes a message
   and then signal the condition. Unfortunately, instead of waking up
   the reader, it actually wakes up the other worker (signal = notify
   the condition just for 1 waiter), who can't push another message in
   the queue because it's full.
 - Meanwhile, the receiver is still waiting. Deadlock.

This scenario can be triggered with for example:
    tests/api/api-threadmessage-test 1 2 100 100 1 1000 1000

One working solution is to make av_thread_message_queue_{send,recv}()
call pthread_cond_broadcast() instead of pthread_cond_signal() so both
senders and receivers are unlocked when work is done (be it reading or
writing).

This second solution replaces the condition with two: one to notify the
senders, and one to notify the receivers. This prevents senders from
notifying other senders instead of a reader, and the other way around.
It also avoid broadcasting to everyone like the first solution, and is,
as a result in theory more optimized.

3 years agofate/api: test threadmessage
Clément Bœsch [Mon, 30 Nov 2015 17:18:59 +0000 (18:18 +0100)]
fate/api: test threadmessage

3 years agoavutil/threadmessage: add av_thread_message_flush()
Clément Bœsch [Mon, 30 Nov 2015 17:18:42 +0000 (18:18 +0100)]
avutil/threadmessage: add av_thread_message_flush()

3 years agofate: add limited_input_seek tests
Simon Thelen [Sun, 6 Dec 2015 04:00:54 +0000 (05:00 +0100)]
fate: add limited_input_seek tests

Signed-off-by: Simon Thelen <ffmpeg-dev@c-14.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffmpeg_dxva2: support vp9 hwaccel
Hendrik Leppkes [Mon, 12 Oct 2015 22:09:22 +0000 (00:09 +0200)]
ffmpeg_dxva2: support vp9 hwaccel

3 years agoavcodec: implement vp9 dxva2 hwaccel
Hendrik Leppkes [Thu, 3 Dec 2015 10:09:51 +0000 (11:09 +0100)]
avcodec: implement vp9 dxva2 hwaccel

3 years agovp9: add hwaccel hooks
Hendrik Leppkes [Thu, 3 Dec 2015 10:10:33 +0000 (11:10 +0100)]
vp9: add hwaccel hooks

3 years agovp9: fix pixel format changes with threading
Hendrik Leppkes [Sun, 6 Dec 2015 15:44:32 +0000 (16:44 +0100)]
vp9: fix pixel format changes with threading

3 years agocmdutils: use version accessor macros
Reynaldo H. Verdejo Pinochet [Mon, 7 Dec 2015 04:27:40 +0000 (20:27 -0800)]
cmdutils: use version accessor macros

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agoavfilter/showcqt: BASEFREQ and ENDFREQ cast to double
Muhammad Faiz [Mon, 30 Nov 2015 15:20:30 +0000 (22:20 +0700)]
avfilter/showcqt: BASEFREQ and ENDFREQ cast to double

fix default basefreq/endfreq comparison
on platform that does not do comparison
in double type

found on zeranoe 32-bit build, where
default freq range is detected as non-default

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoRemove Redundant Entry of MPEG2 Video Desc
Anshul Maheshwari [Sun, 6 Dec 2015 18:22:15 +0000 (23:52 +0530)]
Remove Redundant Entry of MPEG2 Video Desc

Signed-off-by: Anshul Maheshwari <er.anshul.maheshwari@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agomjpegdec: consider chroma subsampling in size check
Andreas Cadhalpun [Wed, 2 Dec 2015 20:52:23 +0000 (21:52 +0100)]
mjpegdec: consider chroma subsampling in size check

If the chroma components are subsampled, smaller buffers are allocated
for them. In that case the maximal block_offset for the chroma
components is not as large as for the luma component.

This fixes out of bounds writes causing segmentation faults or memory
corruption.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agofate: change the CMP_TARGETs for the recent AAC encoder changes
Rostislav Pehlivanov [Sun, 6 Dec 2015 13:54:06 +0000 (13:54 +0000)]
fate: change the CMP_TARGETs for the recent AAC encoder changes

The case of PNS was outdated and resulted in failures on some
kdfreebds systems.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoaacenc_tns: tune and reduce artifacts
Rostislav Pehlivanov [Sun, 6 Dec 2015 13:34:33 +0000 (13:34 +0000)]
aacenc_tns: tune and reduce artifacts

There are a couple of major changes here:

1. Start using TNS coefficient compression.
2. Start using 3 bits per coefficient maximum for short windows.
The bits we save from these 2 changes seem to make a nice impact on the
rest of the file/windows.

3. Remove special case gain checking for short windows.
4. Modify the coefficient loop to support up to 3 windows.
The additional restrictions on TNS were something that was no in the
specifications and furthermore restricting TNS to only low energy short
windows was done to compensate for bugs elsewhere in the code.

Overall, the improvements here reduce crackling artifacts heard in very
noisy tracks.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoaacenc: move the TNS search and filtering before PNS
Rostislav Pehlivanov [Sun, 6 Dec 2015 13:32:40 +0000 (13:32 +0000)]
aacenc: move the TNS search and filtering before PNS

The original plan was to have TNS use data from the PNS search to better
tune itself to noise but this was never used nor necessary. This should
slightly boost the PNS accuracy if TNS was used.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoavfilter/af_alimiter: add 3 more options
Paul B Mahol [Sun, 6 Dec 2015 13:57:05 +0000 (14:57 +0100)]
avfilter/af_alimiter: add 3 more options

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agofate/concatdec: Use -bitexact
Timothy Gu [Fri, 27 Nov 2015 22:33:03 +0000 (14:33 -0800)]
fate/concatdec: Use -bitexact

Fixes FATE failures on --enable-small builds.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffprobe: Do not print profile names in -bitexact
Timothy Gu [Fri, 27 Nov 2015 22:33:02 +0000 (14:33 -0800)]
ffprobe: Do not print profile names in -bitexact

Instead, print "unknown" if it's unknown, or their numerical values if
they are known.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffplay: use hypot()
Ganesh Ajjanagadde [Sun, 22 Nov 2015 16:27:22 +0000 (11:27 -0500)]
ffplay: use hypot()

Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoavcodec/dvdsubdec: fix typo in dlog message
Ganesh Ajjanagadde [Fri, 4 Dec 2015 07:35:25 +0000 (02:35 -0500)]
avcodec/dvdsubdec: fix typo in dlog message

Likely accidental in 764900d6458a2f79166ff91df4f20ad39cd6acec.

Fixes: CID 1341578.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoavformat/movenc-test: correct varargs usage
Ganesh Ajjanagadde [Fri, 4 Dec 2015 06:03:26 +0000 (01:03 -0500)]
avformat/movenc-test: correct varargs usage

It is required to call va_end for each invocation of va_start within the
same function.

Fixes: CID 1341583.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoavformat/rtsp: free opts dictionary on failure of getnameinfo
Ganesh Ajjanagadde [Fri, 4 Dec 2015 06:11:10 +0000 (01:11 -0500)]
avformat/rtsp: free opts dictionary on failure of getnameinfo

Fixes: CID 1341579.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
3 years agoavfilter/af_stereotools: fix logic fail
Paul B Mahol [Sun, 6 Dec 2015 09:09:09 +0000 (10:09 +0100)]
avfilter/af_stereotools: fix logic fail

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agolibavutil: add version component accessor macros
Reynaldo H. Verdejo Pinochet [Fri, 4 Dec 2015 22:07:23 +0000 (14:07 -0800)]
libavutil: add version component accessor macros

Pretty standard macros, these should help libav*
users avoid repeating ver.si.on parsing code,
which aids in compatibility-checking tasks like
identifying FFmpeg from Libav (_MICRO >= 100 check).
Something many are doing since we are not
intercompatible anymore.

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
3 years agodoc/encoders.texi: fix typo and clarify mpeg2_aac_low
Rostislav Pehlivanov [Sat, 5 Dec 2015 23:44:04 +0000 (23:44 +0000)]
doc/encoders.texi: fix typo and clarify mpeg2_aac_low

Thanks to Brad Smith for finding the typo.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoavcodec/hevc: Fix integer overflow of entry_point_offset
Michael Niedermayer [Sat, 5 Dec 2015 21:08:59 +0000 (22:08 +0100)]
avcodec/hevc: Fix integer overflow of entry_point_offset

Fixes out of array read
Fixes: d41d8cd98f00b204e9800998ecf8427e/signal_sigsegv_321165b_7641_077dfcd8cbc80b1c0b470c8554cd6ffb.bit

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoaacenc_ltp: use an AR filter for LTP encoding as well
Rostislav Pehlivanov [Sat, 5 Dec 2015 19:06:39 +0000 (19:06 +0000)]
aacenc_ltp: use an AR filter for LTP encoding as well

Seems to work better. Information on why the decoder does this is
lacking.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoaacenc: fix aac_pred option triggering an error
Rostislav Pehlivanov [Sat, 5 Dec 2015 18:43:17 +0000 (18:43 +0000)]
aacenc: fix aac_pred option triggering an error

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agodoc/encoders.texi: use words intead of numbers to describe option states
Rostislav Pehlivanov [Sat, 5 Dec 2015 18:35:59 +0000 (18:35 +0000)]
doc/encoders.texi: use words intead of numbers to describe option states

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoChangelog: append experimental flag removal to the AAC encoder entry
Rostislav Pehlivanov [Sat, 5 Dec 2015 18:29:10 +0000 (18:29 +0000)]
Changelog: append experimental flag removal to the AAC encoder entry

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoavcodec/dirac_parser: Check that there is a previous PU before accessing it
Michael Niedermayer [Sat, 5 Dec 2015 16:15:38 +0000 (17:15 +0100)]
avcodec/dirac_parser: Check that there is a previous PU before accessing it

Fixes out of array read
Fixes: 99d142c47e6ba3510a74b872a1a2ae72/asan_heap-oob_11b36f4_3811_0f5c69e7609a88a580135678de1df844.dxa

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/dirac_parser: Add basic validity checks for next_pu_offset and prev_pu_offset
Michael Niedermayer [Sat, 5 Dec 2015 16:14:36 +0000 (17:14 +0100)]
avcodec/dirac_parser: Add basic validity checks for next_pu_offset and prev_pu_offset

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/dirac_parser: Fix potential overflows in pointer checks
Michael Niedermayer [Sat, 5 Dec 2015 16:11:54 +0000 (17:11 +0100)]
avcodec/dirac_parser: Fix potential overflows in pointer checks

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agodoc/encoders.texi: remove forgotten mention of "experimental" from libvo-aacenc
Rostislav Pehlivanov [Sat, 5 Dec 2015 16:38:18 +0000 (16:38 +0000)]
doc/encoders.texi: remove forgotten mention of "experimental" from libvo-aacenc

Previous documentation commit overlooked that particular mention.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoaacenc: remove the experimental flag
Rostislav Pehlivanov [Sat, 5 Dec 2015 14:45:18 +0000 (14:45 +0000)]
aacenc: remove the experimental flag

Thiss commit removes the experimental flag from the native AAC Encoder
and thus makes it the default.

After a lot of work, done by myself and Claudio Freire, the quality of
this encoder rivals and surpasses libfdk_aac in some situations. The
encoder had instability issues earlier which prevented it from having
its experimental flag removed, however the last commits done by Claudio
removed the last known source of instability and solved a lot of
problems which were previously observed. The issues were caused by the
various coding tools interfering with the scalefactor indices. Thus,
with these problems solved, it should now be possible to declare this
encoder as the default and recommend that the users should use it
instead of others provided by external libraries, as it is both faster
and has a subjectively higher quality with selected tracks.
The encoder has still yet to be fine tuned for every possible audio file
type like music or voice, so it is hoped that with the experimental flag
removed the users should be able to provide feedback and make the
encoder better than the alternatives for every type of audio and at
every bitrate.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agodoc/encoders.texi: update documentation for the native AAC encoder
Rostislav Pehlivanov [Sat, 5 Dec 2015 14:43:17 +0000 (14:43 +0000)]
doc/encoders.texi: update documentation for the native AAC encoder

Since the next commit removes the experimental flag from the encoder
it's better to update the documentation which has been around in its
current form for as long as the encoder itself.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoaacenc: mark coders other than twoloop as experimental
Rostislav Pehlivanov [Sat, 5 Dec 2015 14:41:41 +0000 (14:41 +0000)]
aacenc: mark coders other than twoloop as experimental

ANMR has some interesting things coming up but is currently not in a
shape fit for non-experimental usage. Same with "FAST".

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoaacenc: mark the "faac"-like coder for removal
Rostislav Pehlivanov [Sat, 5 Dec 2015 14:38:44 +0000 (14:38 +0000)]
aacenc: mark the "faac"-like coder for removal

This coder produces a much lower quality audio than the rest, is much
slower and is unstable. Hasn't been updated for a very long time as
well, hence it is more appropriate to remove it since it also depends on
a big burden of a code (the encode_window_bands_info function which is
just as old, just as unstable and bad and in no way modifiable or
fixable).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agoavfilter/af_stereotools: check s->length size
Paul B Mahol [Sat, 5 Dec 2015 15:08:29 +0000 (16:08 +0100)]
avfilter/af_stereotools: check s->length size

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavcodec/wmaprodec: Check bits per sample to be within the range not causing integer...
Michael Niedermayer [Sat, 5 Dec 2015 12:48:06 +0000 (13:48 +0100)]
avcodec/wmaprodec: Check bits per sample to be within the range not causing integer overflows

Fixes: 549d5aab1480d10f2a775ed90b0342f1/signal_sigabrt_7ffff6ae7cc9_5643_96bbb0cfe3e28be1dadfce1075016345.wma

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/utils: Fix overflow in get_bit_rates computations
Michael Niedermayer [Sat, 5 Dec 2015 12:15:01 +0000 (13:15 +0100)]
avcodec/utils: Fix overflow in get_bit_rates computations

Fixes: 129ca3e28d73af7b1e24a9d4118e7a2d/signal_sigabrt_7ffff6ae7cc9_836_762b310fc3ef6087bd7771e5d8e90b9b.asf

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/pcm: Fix overflow in bitrate computation
Michael Niedermayer [Sat, 5 Dec 2015 12:13:10 +0000 (13:13 +0100)]
avcodec/pcm: Fix overflow in bitrate computation

Fixes: 129ca3e28d73af7b1e24a9d4118e7a2d/signal_sigabrt_7ffff6ae7cc9_836_762b310fc3ef6087bd7771e5d8e90b9b.asf

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/wmaprodec: Fix overflow of cutoff
Michael Niedermayer [Sat, 5 Dec 2015 12:11:23 +0000 (13:11 +0100)]
avcodec/wmaprodec: Fix overflow of cutoff

Fixes: 129ca3e28d73af7b1e24a9d4118e7a2d/signal_sigabrt_7ffff6ae7cc9_836_762b310fc3ef6087bd7771e5d8e90b9b.asf

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/smacker: fix integer overflow with pts_inc
Michael Niedermayer [Sat, 5 Dec 2015 12:06:16 +0000 (13:06 +0100)]
avformat/smacker: fix integer overflow with pts_inc

Fixes: ce19e41f0ef1e52a23edc488faecdb58/asan_heap-oob_2504e97_4202_ffa0df1baed14022b9bfd4f8ac23d0cb.smk

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/codecview: reindent after previous commit
Clément Bœsch [Sat, 5 Dec 2015 11:25:14 +0000 (12:25 +0100)]
avfilter/codecview: reindent after previous commit

3 years agoavfilter/codecview: add QP support
Clément Bœsch [Mon, 31 Aug 2015 13:18:34 +0000 (15:18 +0200)]
avfilter/codecview: add QP support

3 years agoMerge commit '9f57f134c19773d54269b6cb9ee455ff87c2e9e1'
Hendrik Leppkes [Sat, 5 Dec 2015 10:49:44 +0000 (11:49 +0100)]
Merge commit '9f57f134c19773d54269b6cb9ee455ff87c2e9e1'

* commit '9f57f134c19773d54269b6cb9ee455ff87c2e9e1':
  configure: ObjC support

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agolibavformat/mov.c: allow QuickTime metadata to come after traks
Neil Birkbeck [Fri, 4 Dec 2015 00:40:24 +0000 (16:40 -0800)]
libavformat/mov.c: allow QuickTime metadata to come after traks

QuickTime metadata can come after trak data. Add indicator for which trak is being parsed (-1 if none) so that global metadata after the trak can be parsed.

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffmpeg: When streamcopying, only add the input seek position when copying timestamps.
Simon Thelen [Sun, 22 Nov 2015 14:03:17 +0000 (15:03 +0100)]
ffmpeg: When streamcopying, only add the input seek position when copying timestamps.

Using -ss as an input option shifts timestamps down by the seek, so it
doesn't have to be added to the recording time when checking whether to
stop.

Fixes #977

Signed-off-by: Simon Thelen <ffmpeg-dev@c-14.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoAAC encoder: ANMR, avoid empty search ranges
Claudio Freire [Sat, 5 Dec 2015 01:56:34 +0000 (22:56 -0300)]
AAC encoder: ANMR, avoid empty search ranges

Avoid generating broken paths when some bands have an
empty search space.

3 years agoaaccoder: prevent crash of anmr coder
Andreas Cadhalpun [Fri, 4 Dec 2015 17:13:07 +0000 (18:13 +0100)]
aaccoder: prevent crash of anmr coder

If minq is negative, the range of sf_idx can be larger than
SCALE_MAX_DIFF allows, causing assertion failures later in
encode_scale_factors.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoswscale/utils: Fix for runtime error: left shift of negative value -1
Michael Niedermayer [Fri, 4 Dec 2015 20:44:05 +0000 (21:44 +0100)]
swscale/utils: Fix for runtime error: left shift of negative value -1

Fixes: c106b36fa36db8ff8f3ed0c82be7bea2/asan_heap-oob_32699f0_6321_467b9a1d7e03d7cfd310b7e65dc53bcc.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/pgssubdec: Fix left shift of 255 by 24 places cannot be represented in type int
Michael Niedermayer [Fri, 4 Dec 2015 20:38:12 +0000 (21:38 +0100)]
avcodec/pgssubdec: Fix left shift of 255 by 24 places cannot be represented in type int

Fixes: b293a6479bb4b5286cff24d356bfd955/asan_generic_225c3c9_7819_cc526b657450c6cdef1371b526499626.mkv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agomips: add p5600 core optimizations
Vicente Olivert Riera [Thu, 3 Dec 2015 13:22:18 +0000 (13:22 +0000)]
mips: add p5600 core optimizations

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agomips: remove --mips32r5 configure option
Vicente Olivert Riera [Thu, 3 Dec 2015 13:22:17 +0000 (13:22 +0000)]
mips: remove --mips32r5 configure option

Having a configure option with the same name as a MIPS ISA is confusing,
so better to remove it. This option was being used to add some
optimizations to a specific core (p5600). We will add the optimizations
just when the p5600 core has been detected, in a later patch.

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/flvdec: Fix left shift of 137 by 24 places cannot be represented in type int
Michael Niedermayer [Fri, 4 Dec 2015 17:53:03 +0000 (18:53 +0100)]
avformat/flvdec: Fix left shift of 137 by 24 places cannot be represented in type int

Fixes: 3c857d4d90365731524716e6d051e43a/signal_sigsegv_7f4f59bcc29e_1386_20abd2c8e655cb9c75b24368e65fe3b1.flv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/msf: Check channels when reading the header
Michael Niedermayer [Fri, 4 Dec 2015 17:48:39 +0000 (18:48 +0100)]
avformat/msf: Check channels when reading the header

Fixes integer overflow
Fixes: 0c2625f236ced104d402b4a03c0d65c7/asan_generic_274e1ce_5990_9314e7a67c26aecf011b178ade9f217c.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/jpeg2000dec: Check bpno in decode_cblk()
Michael Niedermayer [Fri, 4 Dec 2015 15:23:24 +0000 (16:23 +0100)]
avcodec/jpeg2000dec: Check bpno in decode_cblk()

Fixes: undefined shift
Fixes: c409ef86f892335a0a164b5871174d5a/asan_heap-oob_1dff564_2159_162b7234616deab02b544410455eb07b.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter: add audio emphasis filter
Paul B Mahol [Mon, 30 Nov 2015 12:36:58 +0000 (13:36 +0100)]
avfilter: add audio emphasis filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoffmpeg: enable echoing with command and debug modes
Clément Bœsch [Thu, 19 Nov 2015 21:54:45 +0000 (22:54 +0100)]
ffmpeg: enable echoing with command and debug modes

Allow seeing text when pressing 'c' or 'd'.

3 years agoavcodec/mpegvideo: use constants for rc_strategy
Clément Bœsch [Sat, 21 Nov 2015 20:28:31 +0000 (21:28 +0100)]
avcodec/mpegvideo: use constants for rc_strategy

3 years agoswscale: use AV_OPT_TYPE_BOOL for {src,dst}_range options
Clément Bœsch [Sat, 21 Nov 2015 21:06:07 +0000 (22:06 +0100)]
swscale: use AV_OPT_TYPE_BOOL for {src,dst}_range options

3 years agoswresample: use AV_OPT_TYPE_BOOL for linear_interp and cheby options
Clément Bœsch [Sat, 21 Nov 2015 21:05:40 +0000 (22:05 +0100)]
swresample: use AV_OPT_TYPE_BOOL for linear_interp and cheby options

3 years agoavformat: use AV_OPT_TYPE_BOOL in a bunch of places
Clément Bœsch [Sat, 21 Nov 2015 21:05:07 +0000 (22:05 +0100)]
avformat: use AV_OPT_TYPE_BOOL in a bunch of places

3 years agoavfilter: use AV_OPT_TYPE_BOOL in a bunch of places
Clément Bœsch [Sat, 21 Nov 2015 21:04:54 +0000 (22:04 +0100)]
avfilter: use AV_OPT_TYPE_BOOL in a bunch of places

3 years agoavcodec: use AV_OPT_TYPE_BOOL in a bunch of places
Clément Bœsch [Sat, 21 Nov 2015 21:04:39 +0000 (22:04 +0100)]
avcodec: use AV_OPT_TYPE_BOOL in a bunch of places

3 years agoffmdec: reject zero-sized chunks
Andreas Cadhalpun [Wed, 2 Dec 2015 21:47:12 +0000 (22:47 +0100)]
ffmdec: reject zero-sized chunks

If size is zero, avio_get_str fails, leaving the buffer uninitialized.
This causes invalid reads in av_set_options_string.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agoffmdec: only seek back at EOF if a server is attached
Andreas Cadhalpun [Wed, 2 Dec 2015 21:25:55 +0000 (22:25 +0100)]
ffmdec: only seek back at EOF if a server is attached

Otherwise the ffm demuxer can return the same packets endlessly, if
there is no server attached.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
3 years agolibavcodec/aacsbr_tablegen: fix tablegen on windows
Hendrik Leppkes [Wed, 2 Dec 2015 08:52:03 +0000 (09:52 +0100)]
libavcodec/aacsbr_tablegen: fix tablegen on windows

Including these headers is not needed and breaks building on Windows as it
tries to activate the full compat tools, which are not needed for host
tools.

3 years agoavcodec: include tablegen compat header before the tablegen functionality
Hendrik Leppkes [Wed, 2 Dec 2015 08:52:02 +0000 (09:52 +0100)]
avcodec: include tablegen compat header before the tablegen functionality

3 years agolibavutil/tablegen: add missing math.h include
Hendrik Leppkes [Wed, 2 Dec 2015 08:52:01 +0000 (09:52 +0100)]
libavutil/tablegen: add missing math.h include

3 years agoavformat/oggparsetheora: Check duration to be not AV_NOPTS_VALUE (and positive) befor...
Michael Niedermayer [Fri, 4 Dec 2015 12:46:53 +0000 (13:46 +0100)]
avformat/oggparsetheora: Check duration to be not AV_NOPTS_VALUE (and positive) before use

Fixes: 1536b9b096a8f95b742bae9d3d761cc6/signal_sigsegv_294aaed_7322_4fad88a38dc8952dc20dcb60c1895758.ogg

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/dnxhddec: Fix runtime error: left shift of negative value
Michael Niedermayer [Fri, 4 Dec 2015 12:43:18 +0000 (13:43 +0100)]
avcodec/dnxhddec: Fix runtime error: left shift of negative value

Fixes: 2abd25478c62a675f335fac00b467023/asan_static-oob_10aff98_1227_8811480c6ef1e970a7977ceb7e5a9958.mxf

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffmpeg: Check pkt_dts for AV_NOPTS_VALUE
Michael Niedermayer [Fri, 4 Dec 2015 12:17:30 +0000 (13:17 +0100)]
ffmpeg: Check pkt_dts for AV_NOPTS_VALUE

Fixes integer overflow
Fixes: 1536b9b096a8f95b742bae9d3d761cc6/signal_sigsegv_294aaed_2039_8d1797aeb823ea43858d0fa45c9eb899.ogv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/vp3: Fix "runtime error: left shift of negative value"
Michael Niedermayer [Fri, 4 Dec 2015 11:47:20 +0000 (12:47 +0100)]
avcodec/vp3: Fix "runtime error: left shift of negative value"

Fixes: 5c6129154b356b80bcab86f9e3ee5d29/signal_sigabrt_7ffff6ae7cc9_7322_d26ac6d7cb6567db1b8be0159b387d0b.ogg

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/movenc: HE-AAC correct FourCC in ISML
Yann Coupin [Tue, 1 Dec 2015 11:22:38 +0000 (12:22 +0100)]
avformat/movenc: HE-AAC correct FourCC in ISML

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/mpjpegdec: Fix "libavformat/mpjpegdec.c:269:9: warning: passing argument...
Michael Niedermayer [Fri, 4 Dec 2015 02:09:00 +0000 (03:09 +0100)]
avformat/mpjpegdec: Fix "libavformat/mpjpegdec.c:269:9: warning: passing argument 3 of av_stristart from incompatible pointer type"

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agomips: rename mipsdspr1 to mipsdsp
Vicente Olivert Riera [Thu, 3 Dec 2015 13:22:16 +0000 (13:22 +0000)]
mips: rename mipsdspr1 to mipsdsp

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agompegtsenc: Fix off-by-one in indexing into Opus channel mapping arrays
Sebastian Dröge [Thu, 3 Dec 2015 21:04:09 +0000 (23:04 +0200)]
mpegtsenc: Fix off-by-one in indexing into Opus channel mapping arrays

Fixes, CID1338323, CID1338324

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/h264_direct: Check CO-POCs before use
Michael Niedermayer [Thu, 3 Dec 2015 23:31:44 +0000 (00:31 +0100)]
avcodec/h264_direct: Check CO-POCs before use

Fixes harmless integer overflow
Fixes mozilla bug 1230286

Found-by: Tyson Smith
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/utils: Fix "libavformat/utils.c:927:35: runtime error: signed integer overfl...
Michael Niedermayer [Thu, 3 Dec 2015 20:54:43 +0000 (21:54 +0100)]
avformat/utils: Fix "libavformat/utils.c:927:35: runtime error: signed integer overflow: -2450238577049583619 - 9223090561878065151 cannot be represented in type long long"

Fixes Mozilla bug 1229205

Found-by: Tyson Smith
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoaacenc_ltp: fix out of bounds memory access
Rostislav Pehlivanov [Thu, 3 Dec 2015 23:12:37 +0000 (23:12 +0000)]
aacenc_ltp: fix out of bounds memory access

Discovered by Coverity.

3 years agoavformat/riffdec: remove special case for bitrate > 32bit
Michael Niedermayer [Thu, 3 Dec 2015 19:18:35 +0000 (20:18 +0100)]
avformat/riffdec: remove special case for bitrate > 32bit

AVCodecContext.bitrate is 64bit

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/riffdec: Initialize bitrate
Michael Niedermayer [Thu, 3 Dec 2015 19:16:00 +0000 (20:16 +0100)]
avformat/riffdec: Initialize bitrate

Fixes CID1338334

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/mpegts: use AVERROR_INVALIDDATA instead of AVERROR(EINTR).
Nicolas George [Fri, 27 Nov 2015 17:58:46 +0000 (18:58 +0100)]
lavf/mpegts: use AVERROR_INVALIDDATA instead of AVERROR(EINTR).

3 years agolavf/lxfdec: use FFERROR_REDO instead of AVERROR(EAGAIN).
Nicolas George [Fri, 27 Nov 2015 17:58:25 +0000 (18:58 +0100)]
lavf/lxfdec: use FFERROR_REDO instead of AVERROR(EAGAIN).

3 years agolavf/mpeg: use FFERROR_REDO instead of AVERROR(EAGAIN).
Nicolas George [Fri, 27 Nov 2015 17:58:38 +0000 (18:58 +0100)]
lavf/mpeg: use FFERROR_REDO instead of AVERROR(EAGAIN).

3 years agolavf/flvdec: use FFERROR_REDO instead of AVERROR(EAGAIN).
Nicolas George [Fri, 27 Nov 2015 17:58:05 +0000 (18:58 +0100)]
lavf/flvdec: use FFERROR_REDO instead of AVERROR(EAGAIN).

Fix trac ticket #5041.

3 years agolavf: add FFERROR_REDO to let demuxers return no packet.
Nicolas George [Fri, 27 Nov 2015 17:57:27 +0000 (18:57 +0100)]
lavf: add FFERROR_REDO to let demuxers return no packet.

3 years agompegencts: Fix overflow in cbr mode period calculations
Timo Teräs [Sat, 28 Nov 2015 06:27:39 +0000 (08:27 +0200)]
mpegencts: Fix overflow in cbr mode period calculations

ts->mux_rate is int (signed 32-bit) type. The period calculations
will start to overflow when mux_rate > 5mbps. This fixes overflows
by converting first to 64-bit type.

Fixes #5044.

Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavfilter/af_agate: change default for detection to rms
Paul B Mahol [Thu, 3 Dec 2015 09:20:09 +0000 (10:20 +0100)]
avfilter/af_agate: change default for detection to rms

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_sidechaincompress: kill init function
Paul B Mahol [Thu, 3 Dec 2015 09:05:21 +0000 (10:05 +0100)]
avfilter/af_sidechaincompress: kill init function

Should make addition of process_command easier.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_agate: compile agate only when requested.
Paul B Mahol [Thu, 3 Dec 2015 09:01:50 +0000 (10:01 +0100)]
avfilter/af_agate: compile agate only when requested.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_agate: add level_sc option for sidechaingate filter
Paul B Mahol [Thu, 3 Dec 2015 08:55:30 +0000 (09:55 +0100)]
avfilter/af_agate: add level_sc option for sidechaingate filter

Also correct usage of input gain for both filters.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter: add sidechaingate filter
Paul B Mahol [Sun, 29 Nov 2015 22:22:47 +0000 (23:22 +0100)]
avfilter: add sidechaingate filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
3 years agoavfilter/af_agate: prepare for adding sidechain version
Paul B Mahol [Sun, 29 Nov 2015 22:08:22 +0000 (23:08 +0100)]
avfilter/af_agate: prepare for adding sidechain version

Signed-off-by: Paul B Mahol <onemda@gmail.com>