ffmpeg.git
3 years agoavcodec/libdcadec: add some useful options
foo86 [Mon, 7 Dec 2015 15:48:34 +0000 (18:48 +0300)]
avcodec/libdcadec: add some useful options

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/libdcadec: implement logging callback
foo86 [Mon, 7 Dec 2015 15:48:13 +0000 (18:48 +0300)]
avcodec/libdcadec: implement logging callback

Don't print a warning when dcadec_context_filter() returns positive
warning code. Most relevant warnings are now output through the callback
function.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/libdcadec: fix request_channel_layout
foo86 [Mon, 7 Dec 2015 15:47:47 +0000 (18:47 +0300)]
avcodec/libdcadec: fix request_channel_layout

Take request_channel_layout as a hint and don't force 2.0 downmix by
using both the 2CH and 6CH flags together.

Remove warnings about missing coefficients because they are no longer
relevant.

Honor AV_CH_LAYOUT_NATIVE and make it possible for native DTS channel
layout to be output.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agolavf/mxfdec: fix seeking before the first keyframe
Marton Balint [Fri, 27 Nov 2015 23:13:52 +0000 (00:13 +0100)]
lavf/mxfdec: fix seeking before the first keyframe

Regression since 53f2ef2c4afb1d49a679dea9163cb0e4671f3117.
Fixes ticket #5017.

Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agolavu/opencl: restore #if HAVE_THREADS
Clément Bœsch [Mon, 7 Dec 2015 19:28:26 +0000 (20:28 +0100)]
lavu/opencl: restore #if HAVE_THREADS

Fix regression since a8bb81a.

Spotted-by: RiCON
3 years agocosmetics: Fix weird indentations
Timothy Gu [Mon, 7 Dec 2015 18:42:28 +0000 (10:42 -0800)]
cosmetics: Fix weird indentations

3 years agolavc, lavu: use avutil/thread.h instead of redundant conditional includes
Clément Bœsch [Mon, 7 Dec 2015 14:08:51 +0000 (15:08 +0100)]
lavc, lavu: use avutil/thread.h instead of redundant conditional includes

3 years agoconfigure: fix vp9_d3d11va_hwaccel deps
James Almer [Mon, 7 Dec 2015 16:12:21 +0000 (13:12 -0300)]
configure: fix vp9_d3d11va_hwaccel deps

Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoavutil/threadmessage: fix build without HAVE_THREADS, new attempt
Clément Bœsch [Mon, 7 Dec 2015 15:39:57 +0000 (16:39 +0100)]
avutil/threadmessage: fix build without HAVE_THREADS, new attempt

3 years agoavcodec/g723_1: fix license header
Hendrik Leppkes [Mon, 7 Dec 2015 15:10:51 +0000 (16:10 +0100)]
avcodec/g723_1: fix license header

3 years agoMerge commit 'cb49bb10ca7fcff2e382d9d989232b1a7f28e7da'
Hendrik Leppkes [Mon, 7 Dec 2015 15:01:41 +0000 (16:01 +0100)]
Merge commit 'cb49bb10ca7fcff2e382d9d989232b1a7f28e7da'

* commit 'cb49bb10ca7fcff2e382d9d989232b1a7f28e7da':
  build: Move -Wcast-qual to the extra_warnings

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '0fc61c6ab6912a2f0c40fdd3f3c591bc2a33efd4'
Hendrik Leppkes [Mon, 7 Dec 2015 15:00:47 +0000 (16:00 +0100)]
Merge commit '0fc61c6ab6912a2f0c40fdd3f3c591bc2a33efd4'

* commit '0fc61c6ab6912a2f0c40fdd3f3c591bc2a33efd4':
  avi: Validate the stream-id for DV as well

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'd017ed878a45171f2f6c69fb9d76401c3c494110'
Hendrik Leppkes [Mon, 7 Dec 2015 14:57:02 +0000 (15:57 +0100)]
Merge commit 'd017ed878a45171f2f6c69fb9d76401c3c494110'

* commit 'd017ed878a45171f2f6c69fb9d76401c3c494110':
  avi: Use the correct data type

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '7f57ea143c55ce5732ef7e31e4b75ae6c307af13'
Hendrik Leppkes [Mon, 7 Dec 2015 14:55:51 +0000 (15:55 +0100)]
Merge commit '7f57ea143c55ce5732ef7e31e4b75ae6c307af13'

* commit '7f57ea143c55ce5732ef7e31e4b75ae6c307af13':
  vsrc_color: Drop unneeded variable

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

* commit 'ca5f386e75c592ce25b8184516fd0d580ccb31bb':
  lavf: G.723.1 muxer

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit 'f023d57d355ff3b917f1aad9b03db5c293ec4244'
Hendrik Leppkes [Mon, 7 Dec 2015 14:50:45 +0000 (15:50 +0100)]
Merge commit 'f023d57d355ff3b917f1aad9b03db5c293ec4244'

* commit 'f023d57d355ff3b917f1aad9b03db5c293ec4244':
  lavc: G.723.1 encoder

Split existing FFmpeg G.723.1 encoder into a new file.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agoMerge commit '165cc6fb9defcd79fd71c08167f3e8df26b058ff'
Hendrik Leppkes [Mon, 7 Dec 2015 14:18:12 +0000 (15:18 +0100)]
Merge commit '165cc6fb9defcd79fd71c08167f3e8df26b058ff'

* commit '165cc6fb9defcd79fd71c08167f3e8df26b058ff':
  g723_1: Move sharable functions to a separate file

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

* commit 'aac996cc01042194bf621d845bbe684549b5882e':
  g723_1: Rename files to better reflect their purpose

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agofate/api: add w32+os2 support for fate-api-threadmessage
Clément Bœsch [Mon, 7 Dec 2015 13:51:21 +0000 (14:51 +0100)]
fate/api: add w32+os2 support for fate-api-threadmessage

3 years agoMerge commit 'b74b88f30da2389f333a31815d8326d5576d3331'
Hendrik Leppkes [Mon, 7 Dec 2015 13:58:38 +0000 (14:58 +0100)]
Merge commit 'b74b88f30da2389f333a31815d8326d5576d3331'

* commit 'b74b88f30da2389f333a31815d8326d5576d3331':
  g723_1: Handle values at the ends of the table in lsp2lpc()

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

* commit 'a0fa6d06b848f26b16ba12f0a9a4a85b93ab8022':
  matroska: Warn when metadata references a non-existent element

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

* commit 'f7986239f4dbec91c743c4c5eb0a2339bd325bf6':
  dvenc: Validate the frame size before copying it

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
3 years agofate/api: fix fate-api-threadmessage dependency
Clément Bœsch [Mon, 7 Dec 2015 13:40:10 +0000 (14:40 +0100)]
fate/api: fix fate-api-threadmessage dependency

3 years agoavutil/threadmessage: fix build without HAVE_THREADS
Clément Bœsch [Mon, 7 Dec 2015 13:26:39 +0000 (14:26 +0100)]
avutil/threadmessage: fix build without HAVE_THREADS

3 years agoMerge commit '7139489c452ef8af6a745ec4e62056ee4ea4d6a8'
Hendrik Leppkes [Mon, 7 Dec 2015 13:20:03 +0000 (14:20 +0100)]
Merge commit '7139489c452ef8af6a745ec4e62056ee4ea4d6a8'

* commit '7139489c452ef8af6a745ec4e62056ee4ea4d6a8':
  pgssubdec: fix API compability layer

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
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