1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00
Commit Graph

86795 Commits

Author SHA1 Message Date
Michael Niedermayer
c61715e2c5 avcodec/htmlsubtitles: Be a bit more picky on syntax
This reduces the number of strstr() calls per byte
This diasalows empty tags like '< >' as well as '<' in tags like '<ab<cd<<ef>'

Fixes timeout
Fixes: 1817/clusterfuzz-testcase-minimized-5104230530547712

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-18 22:14:16 +02:00
Michael Niedermayer
2886142e0c avcodec/aacdec_template (fixed point): Check gain in decode_cce() to avoid undefined shifts later
Fixes: runtime error: shift exponent 47 is too large for 32-bit type 'int'
Fixes: 2581/clusterfuzz-testcase-minimized-4681474395602944

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-18 22:14:16 +02:00
Rostislav Pehlivanov
79450adfc8 opus: simplify coarse energy beta coefficients
Just put the subtraction in the table.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-18 20:52:06 +01:00
Marton Balint
9b93795890 avdevice/decklink_dec: add support for receiving op47 teletext
v2:
- use uint16_t instead of int to store 10-bit ancillary data
- fix ancillary line numbers for 1080p
- some comments and clarifications as requested by Aaron Levinson

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-07-18 18:28:57 +02:00
Marton Balint
cc0916bfc2 avdevice/decklink_dec: add support for decoding teletext from 10bit ancillary data
This also add supports for 4K DeckLink cards because they always output the
ancillary data in 10-bit.

v2:
- only try teletext decoding for 576i PAL mode
- some comments as requested by Aaron Levinson

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-07-18 18:28:57 +02:00
Carl Eugen Hoyos
4c1aac893c lavc/jpeg2000dec: Read the sample aspect ratio from the jp2 resolution box. 2017-07-18 11:51:10 +02:00
Clément Bœsch
dad54e3c29 ffprobe: reindent after previous commit 2017-07-18 10:39:46 +02:00
Clément Bœsch
8e0d5b354e ffprobe: add -(no)find_stream_info expert option 2017-07-18 10:39:45 +02:00
Clément Bœsch
af50fbaaeb ffplay: reindent after previous commit 2017-07-18 10:39:43 +02:00
Clément Bœsch
998687f1b2 ffplay: add -(no)find_stream_info expert option 2017-07-18 10:39:42 +02:00
Clément Bœsch
d7ea14c5e2 ffmpeg: reindent after previous commit 2017-07-18 10:39:38 +02:00
Clément Bœsch
b7a741223d ffmpeg: add -(no)find_stream_info expert option 2017-07-18 10:23:29 +02:00
Rostislav Pehlivanov
04a8e03ef0 opusenc: remove unused variable
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-18 04:12:59 +01:00
Matt Oliver
d8f1982639 configure: Fix libvmaf name
Fixes:
    fatal error: libvmaf.h: No such file or directory.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2017-07-16 16:12:25 +01:00
Derek Buitenhuis
a27c412795 webmdashenc: Fix memory leak
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2017-07-16 16:09:17 +01:00
Michael Niedermayer
ba4beaf614 avcodec/apedec: Fix integer overflow
Fixes: out of array access
Fixes: PoC.ape and others

Found-by: Bingchang, Liu@VARAS of IIE
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-16 16:53:02 +02:00
Ashish Singh
615479d51c avfilter: add LIBVMAF filter
This one changes the previous vmaf patch to libvmaf to keep it separate from the
native implementation of vmaf inside ffmpeg later.

Signed-off-by: Ashish Singh <ashk43712@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-07-16 08:21:32 -04:00
Michael Niedermayer
4de4308d2a avcodec/ffv1dec_template: Fix signed integer overflow
Fixes: runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself
Fixes: 2634/clusterfuzz-testcase-minimized-4540890636877824

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-16 02:09:43 +02:00
Michael Niedermayer
0ef8f03133 avcodec/aacdec_template: Fix undefined integer overflow in apply_tns()
Fixes: runtime error: signed integer overflow: -2147483648 - 1202286525 cannot be represented in type 'int'
Fixes: 2071/clusterfuzz-testcase-minimized-6036414271586304

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-16 01:07:27 +02:00
Michael Niedermayer
d0ba0be355 fate: add sub-srt-badsyntax test
Based-on: srt sample by ubitux

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-15 04:16:44 +02:00
Derek Buitenhuis
e10c31f331 hdsenc: Remove dead store
This is apparently not supposed to error out anyway.

Reviewed-by: Steven Liu <lq@onvideo.cn>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2017-07-14 13:48:56 +01:00
Rostislav Pehlivanov
91b27b8393 opusenc: use float_dsp for non-transient windowing
Also fixes transient windowing

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-14 04:54:32 +01:00
Aleksandr Slobodeniuk
390e028c66 avutil/threadmessage: fix error return in case of av_fifo_alloc failure
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-14 02:30:37 +02:00
Kaustubh Raste
df806605f7 avcodec: Add prefetch for mips
Signed-off-by: Kaustubh Raste <kaustubh.raste@imgtec.com>
Reviewed-by: Manojkumar Bhosale <Manojkumar.Bhosale@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-14 02:30:37 +02:00
James Almer
5688fd77b5 x86/vf_limiter: make limiter functions work on x86_32
Signed-off-by: James Almer <jamrial@gmail.com>
2017-07-13 18:17:17 -03:00
James Almer
6f205a42d7 checkasm: add hybrid_analysis_ileave and hybrid_synthesis_deint tests to aacpsdsp
Signed-off-by: James Almer <jamrial@gmail.com>
2017-07-13 17:03:28 -03:00
James Almer
823cc7e25f checkasm: add a g722dsp test
Signed-off-by: James Almer <jamrial@gmail.com>
2017-07-13 17:00:19 -03:00
Rostislav Pehlivanov
035c755b4e opusenc: use float_dsp for transient mdcts
vector_fmul_reverse requires padding the window at the front

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-13 19:53:52 +01:00
Kieran O'Leary
264f6c6f95 movenc: Add 'keywords' metadata
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2017-07-13 13:34:01 +01:00
Ricardo Constantino
0bf857a13f configure: use pkg-config for libgme, if available
The pkg-config file is relatively new (2013), so some distros might
not have it yet. And the -lstdc++ being required for the static lib
is only present since the last release in December 2016.
2017-07-13 14:06:07 +02:00
Michael Niedermayer
a824685140 avcodec/ivi: Use av_image_check_size2()
Fixes OOM
Fixes: 1514/clusterfuzz-testcase-minimized-6437666243477504

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-12 20:36:13 +02:00
Michael Niedermayer
341f01290c avcodec/magicyuv: Check that vlc len is not too large
Fixes: runtime error: shift exponent -95 is negative
Fixes: 2568/clusterfuzz-testcase-minimized-4926115716005888

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-12 17:26:18 +02:00
Michael Niedermayer
c28f648b19 avcodec/mjpegdec: Clip DC also on the negative side.
Fixes: runtime error: signed integer overflow: -16711425 + -2130772346 cannot be represented in type 'int'
Fixes: 2533/clusterfuzz-testcase-minimized-5372857678823424

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-12 16:32:27 +02:00
Michael Niedermayer
80b9e40b6f avcodec/aacps (fixed point): Fix multiple signed integer overflows
Fixes: runtime error: signed integer overflow: 1421978265 - -1810326882 cannot be represented in type 'int'
Fixes: 2527/clusterfuzz-testcase-minimized-5260915396050944

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-12 04:20:21 +02:00
Wan-Teh Chang
15c41cb6ad pthread_frame: save the FF_DEBUG_THREADS option in PerThreadContext.
Add the debug_threads boolean field to PerThreadContext. For
PerThreadContext *p, p->debug_threads records whether the
FF_DEBUG_THREADS bit is set in p->avctx->debug, and p->debug_threads and
p->avctx->debug are kept in sync. The debug_threads field is defined as
an atomic_int to allow atomic read by another thread in
ff_thread_await_progress().

This fixes the tsan warning that
2e664b9c1e attempted to fix:

WARNING: ThreadSanitizer: data race (pid=452658)
  Write of size 4 at 0x7b640003f4fc by main thread (mutexes: write M248499):
    #0 update_context_from_user [..]/libavcodec/pthread_frame.c:335:19 (5ab42bb1a6f4b068d7863dabe9b2bacc+0xe73859)
[..]
  Previous read of size 4 at 0x7b640003f4fc by thread T130 (mutexes: write M248502, write M248500):
    #0 ff_thread_await_progress [..]/libavcodec/pthread_frame.c:591:26 (5ab42bb1a6f4b068d7863dabe9b2bacc+0xe749a1)

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-07-11 21:27:35 -04:00
Rostislav Pehlivanov
c34ece57c7 aacdec_template: fix non-power-of-two MDCT scale sign
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-12 02:15:19 +01:00
Rostislav Pehlivanov
594cd1f38a opus_celt: normalize using mdct scale
Removes a per-sample divide in the IIR filter deemphasis filter.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-11 21:36:48 +01:00
Rostislav Pehlivanov
aef5f9ab05 mdct15: remove redundant scale argument to imdct_half
The only use of that argument was for Opus downmixing which is very rare
and better done after the mdcts.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-11 21:36:48 +01:00
wm4
02d248d582 videotoolbox: fix crash when decoding interlaced video with new API 2017-07-11 18:27:27 +02:00
Muhammad Faiz
0780ad9c68 avcodec/rdft: remove sintable
It is redundant with costable. The first half of sintable is
identical with the second half of costable. The second half
of sintable is negative value of the first half of sintable.

The computation is changed to handle sign of sin values, in
C code and ARM assembly code.

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2017-07-11 13:22:02 +07:00
Rostislav Pehlivanov
e7d977b446 opus_rc: fix encoder desyncs on very low bitrates
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-10 23:49:44 +01:00
Rostislav Pehlivanov
8041b2420f opusenc: don't set avctx->cutoff
Its only use is to adjust the aac psychoacoustic/filter system which
isn't used here.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-10 23:49:44 +01:00
Rostislav Pehlivanov
03d8fbc09c opustab: comment ff_celt_tf_select
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-10 23:49:44 +01:00
Rostislav Pehlivanov
ba67c2349c opus_celt: move postfilter taps table to the shared opustab.c file
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-07-10 23:49:44 +01:00
Derek Buitenhuis
5ca063799c rtspdec: Fix return error
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2017-07-10 15:02:29 -04:00
wm4
c64da19bbc dxva: DXVA2_ModeHEVC_VLD_Main10 does not support Main
This mode apparently does not support decoding of HEVC Main (8 bit).
With D3D11 and Intel drivers on Windows 10 I get green corruption, while
using DXVA2_ModeHEVC_VLD_Main works.
2017-07-10 16:03:15 +02:00
Paul B Mahol
0281d5ece6 avcodec/magicyuv: add 12 bit formats
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-07-10 12:03:08 +02:00
Paul B Mahol
fa3fd7f5a0 avcodec/magicyuv: make RLE table reading match reference
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-07-10 12:03:08 +02:00
Wan-Teh Chang
2f84f40d45 avformat/avio: Remove no-op code in url_find_protocol().
In url_find_protocol(), proto_str is either "file" or a string
consisting of only the characters in URL_SCHEME_CHARS, which does not
include ','. Therefore the strchr(proto_str, ',') call always returns
NULL.

Note: The code was added in commit
6161c41817.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2017-07-10 06:56:51 +07:00
Marton Balint
b406f387c8 avcodec/noise_bsf: add support for dropping packets
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-07-09 19:41:58 +02:00