ffmpeg.git
2 years agodoc/filters: Fix vsbmc option name.
Carl Eugen Hoyos [Thu, 22 Dec 2016 10:48:18 +0000 (11:48 +0100)]
doc/filters: Fix vsbmc option name.

Reported-by: Антон Приходько
2 years agolavfi: take_samples: free frames after taking all samples.
Nicolas George [Thu, 22 Dec 2016 09:26:03 +0000 (10:26 +0100)]
lavfi: take_samples: free frames after taking all samples.

2 years agoavformat/wavdec: add support for decoding 24.0 and 16.8 floating point pcm formats
Paul B Mahol [Mon, 19 Sep 2016 21:08:32 +0000 (23:08 +0200)]
avformat/wavdec: add support for decoding 24.0 and 16.8 floating point pcm formats

Fixes #5602 and #5603.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavcodec: add pcm_f16le and pcm_f24le decoder
Paul B Mahol [Mon, 19 Sep 2016 20:26:39 +0000 (22:26 +0200)]
avcodec: add pcm_f16le and pcm_f24le decoder

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavcodec/wmaprodec: cleanup extradata dumping
Paul B Mahol [Thu, 22 Dec 2016 08:45:40 +0000 (09:45 +0100)]
avcodec/wmaprodec: cleanup extradata dumping

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavformat/mpegenc: Check for av_mallocz() failure
Michael Niedermayer [Wed, 21 Dec 2016 22:41:49 +0000 (23:41 +0100)]
avformat/mpegenc: Check for av_mallocz() failure

Fixes CID1257787

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavformat/img2dec: Remove dead code from psd_probe()
Michael Niedermayer [Wed, 21 Dec 2016 21:03:55 +0000 (22:03 +0100)]
avformat/img2dec: Remove dead code from psd_probe()

Fixes CID1397124

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavfilter/vf_psnr: add gray10 and gray12 support
Paul B Mahol [Wed, 21 Dec 2016 20:37:22 +0000 (21:37 +0100)]
avfilter/vf_psnr: add gray10 and gray12 support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavutil/random_seed: Use uint64 instead of uint8 for struct to avoid potential alignme...
Michael Niedermayer [Wed, 21 Dec 2016 02:11:44 +0000 (03:11 +0100)]
avutil/random_seed: Use uint64 instead of uint8 for struct to avoid potential alignment issues

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavutil: Added selftest for libavutil/audio_fifo.c
Thomas Turner [Wed, 21 Dec 2016 00:53:51 +0000 (16:53 -0800)]
avutil: Added selftest for libavutil/audio_fifo.c

Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoswscale: save ebx register when it is not available
Andreas Cadhalpun [Fri, 16 Dec 2016 01:29:56 +0000 (02:29 +0100)]
swscale: save ebx register when it is not available

Configure checks if the ebx register can be used for asm and it has to
be saved if and only if this is not the case.
Without this the build fails when configuring with --toolchain=hardened
--disable-pic on i386 using gcc 4.8:
error: PIC register clobbered by '%ebx' in 'asm'

In that case gcc 4.8 reserves the ebx register for the GOT needed for
PIE, so it can't be used in asm directly.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agoavutil: Improved test coverage for avstring.c
Thomas Turner [Tue, 20 Dec 2016 02:44:42 +0000 (18:44 -0800)]
avutil: Improved test coverage for avstring.c

Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/magicyuv: add 10 bit support
Paul B Mahol [Mon, 19 Dec 2016 22:21:49 +0000 (23:21 +0100)]
avcodec/magicyuv: add 10 bit support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agolavfi/framequeue: avoid empty structs.
Nicolas George [Mon, 19 Dec 2016 07:55:30 +0000 (08:55 +0100)]
lavfi/framequeue: avoid empty structs.

Fix compilation on MSVC.

2 years agoavformat/mov.: Make the process of uuid-xmp atom faster.
Chen Meng [Fri, 11 Nov 2016 03:42:26 +0000 (11:42 +0800)]
avformat/mov.: Make the process of uuid-xmp atom faster.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavfi/atempo: avoid false triggering an assertion failure
Pavel Koshevoy [Sun, 18 Dec 2016 00:14:48 +0000 (17:14 -0700)]
lavfi/atempo: avoid false triggering an assertion failure

Steps to reproduce:
./ffmpeg_g -f s16be -i /dev/null -af atempo=0.5 -y /tmp/atempo.wav

Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agodoc/examples/decoder_targeted: Limit max pixels for fuzzing
Michael Niedermayer [Sat, 17 Dec 2016 17:40:53 +0000 (18:40 +0100)]
doc/examples/decoder_targeted: Limit max pixels for fuzzing

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavfi: make filter_frame non-recursive.
Nicolas George [Sun, 3 Jan 2016 14:44:42 +0000 (15:44 +0100)]
lavfi: make filter_frame non-recursive.

A lot of changes happen at the same time:

- Add a framequeue fifo to AVFilterLink.

- split AVFilterLink.status into status_in and status_out: requires
  changes to the few filters and programs that use it directly
  (f_interleave, split, filtfmts).

- Add a field ready to AVFilterContext, marking when the filter is ready
  and its activation priority.

- Add flags to mark blocked links.

- Change ff_filter_frame() to enqueue the frame.

- Change all filtering functions to update the ready field and the
  blocked flags.

- Update ff_filter_graph_run_once() to use the ready field.

- buffersrc: always push the frame immediately.

2 years agolavfi: add FFFrameQueue API.
Nicolas George [Thu, 3 Dec 2015 19:05:14 +0000 (20:05 +0100)]
lavfi: add FFFrameQueue API.

2 years agoavcodec/get_bits: add av_assert2 to get_bits_long()
Paul B Mahol [Sun, 18 Dec 2016 09:06:29 +0000 (10:06 +0100)]
avcodec/get_bits: add av_assert2 to get_bits_long()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoopus: remove redundant ff_celt_window2 declaration
Rostislav Pehlivanov [Sun, 18 Dec 2016 07:10:48 +0000 (07:10 +0000)]
opus: remove redundant ff_celt_window2 declaration

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2 years agoavformat: Auto-detect mjpeg 2000 in mpeg-ts
Ståle Kristoffersen [Tue, 11 Oct 2016 13:36:40 +0000 (15:36 +0200)]
avformat: Auto-detect mjpeg 2000 in mpeg-ts

This makes it possible to decode motion jpeg 2000
encoded in a transport stream without a correct PMT/PAT.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavformat/tls: add tls url_get_file_handle
Jay Ridgeway [Sun, 16 Oct 2016 14:28:21 +0000 (10:28 -0400)]
avformat/tls: add tls url_get_file_handle

Support url_get_file_handle on TLS streams.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolavc: Fix ticket 6024, truncated mode decoding
Pavel Koshevoy [Thu, 15 Dec 2016 17:19:23 +0000 (10:19 -0700)]
lavc: Fix ticket 6024, truncated mode decoding

The assumption that avcodec_send_packet makes regarding decoders
consuming the entire packet is not true if the codec supports
truncated decoding mode and the truncated flag is turned on.

Steps to reproduce:
./ffmpeg_g -flags truncated \
-i "http://samples.ffmpeg.org/MPEG2/test-ebu-422.40000.pakets.ts" \
-c:v ffv1 -c:a copy -y /tmp/truncated.nut

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mips: version 1 of vc1dsp optimizations for loongson mmi
Zhou Xiaoyong [Mon, 10 Oct 2016 08:11:37 +0000 (16:11 +0800)]
avcodec/mips: version 1 of vc1dsp optimizations for loongson mmi

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavfilter/vf_ssim: add >8 bit depth suppport
Paul B Mahol [Thu, 15 Dec 2016 21:33:42 +0000 (22:33 +0100)]
avfilter/vf_ssim: add >8 bit depth suppport

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavformat/wavdec: Eliminate goto for clang -O0 DCE
Mark Harris [Fri, 16 Dec 2016 00:44:57 +0000 (16:44 -0800)]
avformat/wavdec: Eliminate goto for clang -O0 DCE

Clang is not able to eliminate the reference to ff_spdif_probe() when
there is a goto target in the same block and optimization is disabled.

This fixes the following build failure on OS X:
  ./configure --disable-everything --disable-doc \
    --enable-decoder=pcm_s16le --enable-demuxer=wav \
    --enable-protocol=file --disable-optimizations --cc=clang
  make
  ...
  Undefined symbols for architecture x86_64:
    "_ff_spdif_probe", referenced from:
        _set_spdif in libavformat.a(wavdec.o)
  ld: symbol(s) not found for architecture x86_64

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavutil/imgutils: Clarify doxy for av_image_check_size2()
Michael Niedermayer [Sun, 11 Dec 2016 21:51:23 +0000 (22:51 +0100)]
avutil/imgutils: Clarify doxy for av_image_check_size2()

Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agofate/psd: add tests for uncompress and rle samples
Martin Vignali [Thu, 24 Nov 2016 20:30:51 +0000 (21:30 +0100)]
fate/psd: add tests for uncompress and rle samples

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/h263dec: Return the correct error code in explode mode
Michael Niedermayer [Thu, 15 Dec 2016 19:31:23 +0000 (20:31 +0100)]
avcodec/h263dec: Return the correct error code in explode mode

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/smvjpegdec: return the packet size instead of 0
Michael Niedermayer [Thu, 15 Dec 2016 19:09:48 +0000 (20:09 +0100)]
avcodec/smvjpegdec: return the packet size instead of 0

Most decoders return the amount of data used.
This is more consistent

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/tdsc: return the packet size instead of 0
Michael Niedermayer [Thu, 15 Dec 2016 19:09:48 +0000 (20:09 +0100)]
avcodec/tdsc: return the packet size instead of 0

Most decoders return the amount of data used.
This is more consistent

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/screenpresso: return the packet size instead of 0
Michael Niedermayer [Thu, 15 Dec 2016 19:09:48 +0000 (20:09 +0100)]
avcodec/screenpresso: return the packet size instead of 0

Most decoders return the amount of data used.
This is more consistent

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/rscc: return the packet size instead of 0
Michael Niedermayer [Thu, 15 Dec 2016 19:09:48 +0000 (20:09 +0100)]
avcodec/rscc: return the packet size instead of 0

Most decoders return the amount of data used.
This is more consistent

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavfilter/vsrc_testsrc: draw_bar: make sure width is not negative
Paul B Mahol [Thu, 15 Dec 2016 14:52:48 +0000 (15:52 +0100)]
avfilter/vsrc_testsrc: draw_bar: make sure width is not negative

Reported-by: Josh de Kock
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavformat/mp3dec: fix msan warning when verifying mpa header
Chris Cunningham [Tue, 22 Nov 2016 21:54:50 +0000 (13:54 -0800)]
avformat/mp3dec: fix msan warning when verifying mpa header

MPEG Audio frame header must be 4 bytes. If we fail to read
4 bytes bail early to avoid Use-of-uninitialized-value msan error.
Reference https://crbug.com/666874.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agotiff: fix overflows when calling av_reduce
Andreas Cadhalpun [Mon, 12 Dec 2016 23:43:21 +0000 (00:43 +0100)]
tiff: fix overflows when calling av_reduce

The arguments of av_reduce are signed, so the cast to uint64_t is misleading.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agomov: prevent overflow during bit rate calculation
Andreas Cadhalpun [Wed, 14 Dec 2016 00:53:23 +0000 (01:53 +0100)]
mov: prevent overflow during bit rate calculation

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agocafdec: prevent overflow during bit rate calculation
Andreas Cadhalpun [Wed, 14 Dec 2016 00:53:19 +0000 (01:53 +0100)]
cafdec: prevent overflow during bit rate calculation

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years ago4xm: prevent overflow during bit rate calculation
Andreas Cadhalpun [Wed, 14 Dec 2016 00:53:14 +0000 (01:53 +0100)]
4xm: prevent overflow during bit rate calculation

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agodoc/filters: fix channel names in sofalizer example
Paul B Mahol [Wed, 14 Dec 2016 21:48:53 +0000 (22:48 +0100)]
doc/filters: fix channel names in sofalizer example

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavfilter/af_sofalizer: warn if user gives unknown channel names
Paul B Mahol [Wed, 14 Dec 2016 21:47:38 +0000 (22:47 +0100)]
avfilter/af_sofalizer: warn if user gives unknown channel names

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agodoc/filters: drawtext: add example of printing texts on same baseline
Andrey Utkin [Wed, 14 Dec 2016 14:37:47 +0000 (14:37 +0000)]
doc/filters: drawtext: add example of printing texts on same baseline

Height of canvas produced by drawtext varies depending on symbols in
text, so add example for printing separate texts aligned horizontally.

Wording suggested by Lou Logan <lou@lrcd.com>

Signed-off-by: Andrey Utkin <andrey.utkin@pb.com>
Signed-off-by: Lou Logan <lou@lrcd.com>
2 years agoAdd missing #includes for standalone spherical-information-related headers
Diego Biurrun [Thu, 8 Dec 2016 18:47:58 +0000 (19:47 +0100)]
Add missing #includes for standalone spherical-information-related headers

(cherry picked from commit f912fd767e55bbb5a1554bd99bacab007659609c)
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoBump for psd demuxer and decoder
Michael Niedermayer [Wed, 14 Dec 2016 10:36:26 +0000 (11:36 +0100)]
Bump for psd demuxer and decoder

Found-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolibavformat : add Photoshop PSD demuxer.
Martin Vignali [Thu, 24 Nov 2016 20:26:56 +0000 (21:26 +0100)]
libavformat : add Photoshop PSD demuxer.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agolibavcodec : add decoder for Photoshop PSD image files
Martin Vignali [Thu, 24 Nov 2016 20:26:42 +0000 (21:26 +0100)]
libavcodec : add decoder for Photoshop PSD image files

Decode the Image Data Section (which contains merged pictures).
Support RGB/A and Grayscale/A in 8bits and 16 bits per channel.
Support uncompress and rle decompression in Image Data Section.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavformat: fix overflows during bit rate calculation
Andreas Cadhalpun [Mon, 12 Dec 2016 23:38:25 +0000 (00:38 +0100)]
avformat: fix overflows during bit rate calculation

The bit_rate field has type int64_t since commit
7404f3bdb90e6a5dcb59bc0a091e2c5c038e557d.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agoswresample/resample: remove swri_resample function
Muhammad Faiz [Tue, 13 Dec 2016 17:51:18 +0000 (00:51 +0700)]
swresample/resample: remove swri_resample function

integrate it inside multiple_resample
allow some calculations to be performed outside loop

Suggested-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2 years agolibvpxenc: Don't spam level errors for VP8 encodes
Alex Converse [Mon, 12 Dec 2016 20:07:05 +0000 (12:07 -0800)]
libvpxenc: Don't spam level errors for VP8 encodes

Fixes "Failed to set VP9E_GET_LEVEL codec control: Codec does not
implement requested capability" log messages on VP8 encodes.

2 years agoswresample/resample: do not allow negative dst_size return value
Muhammad Faiz [Tue, 13 Dec 2016 07:11:48 +0000 (14:11 +0700)]
swresample/resample: do not allow negative dst_size return value

This should fix Ticket6012

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2 years agoavformat/utils: Print verbose error message if stream count exceeds max_streams
Michael Niedermayer [Sat, 10 Dec 2016 19:15:13 +0000 (20:15 +0100)]
avformat/utils: Print verbose error message if stream count exceeds max_streams

Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavformat/options_table: Set the default maximum number of streams to 1000
Michael Niedermayer [Sat, 10 Dec 2016 19:15:12 +0000 (20:15 +0100)]
avformat/options_table: Set the default maximum number of streams to 1000

Fixes CVE-2016-9561, Note the security relevance of this is disputed as
running out of memory can happen with valid files

Suggested-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavfilter/avfilter: fix filtering frames with unknown channel layouts for filters...
Marton Balint [Mon, 12 Dec 2016 21:42:27 +0000 (22:42 +0100)]
avfilter/avfilter: fix filtering frames with unknown channel layouts for filters needing writable frames

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoavcodec/mips: version 1 of wmv2dsp optimizations for loongson mmi
Zhou Xiaoyong [Mon, 10 Oct 2016 08:10:59 +0000 (16:10 +0800)]
avcodec/mips: version 1 of wmv2dsp optimizations for loongson mmi

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mips: version 1 of vp8dsp optimizations for loongson mmi
Zhou Xiaoyong [Mon, 10 Oct 2016 08:10:22 +0000 (16:10 +0800)]
avcodec/mips: version 1 of vp8dsp optimizations for loongson mmi

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoconfigure: add -fPIE instead of -pie to C flags for ThreadSanitizer
Wan-Teh Chang [Fri, 2 Dec 2016 22:04:53 +0000 (14:04 -0800)]
configure: add -fPIE instead of -pie to C flags for ThreadSanitizer

-pie was added to C flags for ThreadSanitizer in commit
19f251a2882a8d0779b432e63bf282e4d9c443bb. Under clang 3.8.0, the -pie
flag causes a compiler warning and a linker error when running configure
--toolchain=clang-tsan. Here is an excerpt from config.log:

clang ... -fsanitize=thread -pie -std=c11 -fomit-frame-pointer -pthread -c -o /tmp/ffconf.hL61stP9.o /tmp/ffconf.YO6ZaSFG.c
clang: warning: argument unused during compilation: '-pie'
clang -fsanitize=thread -pie -Wl,--as-needed -Wl,-z,noexecstack -o /tmp/ffconf.W5c2e41l /tmp/ffconf.hL61stP9.o -lbz2 -pthread
/usr/bin/ld: /tmp/ffconf.hL61stP9.o: relocation R_X86_64_PC32 against undefined symbol `atan2f@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)

To be conservative, I changed -pie to -fPIE. But the documentation seems
to imply just -fsanitize=thread is enough:

http://clang.llvm.org/docs/ThreadSanitizer.html
https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavutil: fix data race in av_get_cpu_flags()
Wan-Teh Chang [Wed, 7 Dec 2016 02:16:13 +0000 (18:16 -0800)]
avutil: fix data race in av_get_cpu_flags()

Make the one-time initialization in av_get_cpu_flags() thread-safe. The
static variable |cpu_flags| in libavutil/cpu.c is read and written using
normal load and store operations. These are considered as data races.
The fix is to use atomic load and store operations.

The fix can be verified by running the libavutil/tests/cpu_init.c test
program under ThreadSanitizer:
    ./configure --toolchain=clang-tsan
    make libavutil/tests/cpu_init
    libavutil/tests/cpu_init

There should be no warnings from ThreadSanitizer.

Co-author: Dmitry Vyukov of Google, who suggested the data race fix.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavutil/tests/imgutils: Remove unused variable
Michael Niedermayer [Mon, 12 Dec 2016 22:45:54 +0000 (23:45 +0100)]
avutil/tests/imgutils: Remove unused variable

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoopt: reject denominator zero as out of range
Andreas Cadhalpun [Mon, 12 Dec 2016 00:12:15 +0000 (01:12 +0100)]
opt: reject denominator zero as out of range

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agofate: Add h264 test for frame num gaps
Derek Buitenhuis [Fri, 9 Dec 2016 15:21:11 +0000 (15:21 +0000)]
fate: Add h264 test for frame num gaps

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2 years agoavcodec/cuvid: fix compilation with msvc11
Timo Rothenpieler [Mon, 12 Dec 2016 10:44:36 +0000 (11:44 +0100)]
avcodec/cuvid: fix compilation with msvc11

2 years agolavf/mov: Accept multiple fourcc for AVID 1:1.
Carl Eugen Hoyos [Mon, 12 Dec 2016 11:26:21 +0000 (12:26 +0100)]
lavf/mov: Accept multiple fourcc for AVID 1:1.

Fixes ticket #5982.

2 years agolavf/isom: Support EVRC in pvAuthor files.
Carl Eugen Hoyos [Mon, 12 Dec 2016 10:37:06 +0000 (11:37 +0100)]
lavf/isom: Support EVRC in pvAuthor files.

Fixes ticket #6014.

2 years agoavformat/matroskadec: remove the strict unofficial check for Colour elements
James Almer [Mon, 5 Dec 2016 02:27:54 +0000 (23:27 -0300)]
avformat/matroskadec: remove the strict unofficial check for Colour elements

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavformat/matroskadec: allocate Colour related fields only if the file contains the...
James Almer [Mon, 5 Dec 2016 02:22:39 +0000 (23:22 -0300)]
avformat/matroskadec: allocate Colour related fields only if the file contains the relevant master

The demuxer doesn't fill the defaults if the master isn't present.
This results in codecpar->color_space being set with a value of
zero (RGB) on such files.

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoffplay: fix sws_scale possible out of bounds array access
Marton Balint [Sat, 10 Dec 2016 11:46:54 +0000 (12:46 +0100)]
ffplay: fix sws_scale possible out of bounds array access

As I used simple RGBA formats for subtitles and for the video texture if
avfilter is disabled I kind of assumed that sws_scale won't access data
pointers and strides above index 0, but apparently that is not the case.

Fixes Coverity CID 1396737139673813967391396740.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoavutil/tests: run the cpu_init.c test conditionally on HAVE_THREADS
Wan-Teh Chang [Tue, 6 Dec 2016 19:00:02 +0000 (11:00 -0800)]
avutil/tests: run the cpu_init.c test conditionally on HAVE_THREADS

Suggested by Diego Biurrun and James Almer.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavutil/cpu_init: remove unnecessary arguments to the main() function
Wan-Teh Chang [Tue, 6 Dec 2016 19:00:01 +0000 (11:00 -0800)]
avutil/cpu_init: remove unnecessary arguments to the main() function

Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavcodec: Add max_pixels options
Michael Niedermayer [Sat, 10 Dec 2016 20:40:44 +0000 (21:40 +0100)]
avcodec: Add max_pixels options

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavutil: Add av_image_check_size2()
Michael Niedermayer [Sat, 10 Dec 2016 20:05:14 +0000 (21:05 +0100)]
avutil: Add av_image_check_size2()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agofate: add av_image_check_size() test
Michael Niedermayer [Sat, 10 Dec 2016 20:39:56 +0000 (21:39 +0100)]
fate: add av_image_check_size() test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoconfigure: fail if autodetect-libraries are requested but not found
Andreas Cadhalpun [Wed, 30 Nov 2016 22:50:17 +0000 (23:50 +0100)]
configure: fail if autodetect-libraries are requested but not found

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agoconfigure: enable autodetected libraries after option parsing
Andreas Cadhalpun [Wed, 30 Nov 2016 22:49:35 +0000 (23:49 +0100)]
configure: enable autodetected libraries after option parsing

And only enable them, if they haven't been disabled.

This is needed for the following patch.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agoconfigure: enable sdl if sdl2 is enabled
Andreas Cadhalpun [Wed, 30 Nov 2016 22:47:54 +0000 (23:47 +0100)]
configure: enable sdl if sdl2 is enabled

sdl is supposed to be an alias, so it should have the same value.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agolibavcodec/tests: Add avpacket test to .gitignore
Derek Buitenhuis [Fri, 9 Dec 2016 15:22:52 +0000 (15:22 +0000)]
libavcodec/tests: Add avpacket test to .gitignore

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2 years agoconfigure: Require bit_depth field for VAAPI VP9 decode hwaccel
Mark Thompson [Thu, 8 Dec 2016 19:29:14 +0000 (19:29 +0000)]
configure: Require bit_depth field for VAAPI VP9 decode hwaccel

libva versions from 1.6.0 to 1.6.2 do not include it, and therefore
cannot work with VP9 profile >= 2.

Fixes ticket #6003.

2 years agoopus_parser: make ParseContext the first element in OpusParseContext
Andreas Cadhalpun [Thu, 8 Dec 2016 23:01:35 +0000 (00:01 +0100)]
opus_parser: make ParseContext the first element in OpusParseContext

ff_parse_close expects priv_data to be the ParseContext directly and
thus doesn't work if it isn't at the beginning of OpusParseContext.

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agoopus_parser: fix leaking channel_maps on error
Andreas Cadhalpun [Thu, 8 Dec 2016 23:00:18 +0000 (00:00 +0100)]
opus_parser: fix leaking channel_maps on error

Make ff_opus_parse_extradata free allocated memory on error instead of
expecting callers to free it in that case.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2 years agoavfilter/af_ashowinfo: properly show input channel layout for unknown channel layouts
Marton Balint [Sat, 3 Dec 2016 19:06:14 +0000 (20:06 +0100)]
avfilter/af_ashowinfo: properly show input channel layout for unknown channel layouts

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoavfilter/af_channelmap: add support for unknown input channel layouts
Marton Balint [Sat, 3 Dec 2016 19:02:47 +0000 (20:02 +0100)]
avfilter/af_channelmap: add support for unknown input channel layouts

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoavfilter/af_atempo: add support for unknown channel layouts
Marton Balint [Sat, 3 Dec 2016 19:02:24 +0000 (20:02 +0100)]
avfilter/af_atempo: add support for unknown channel layouts

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoavfilter/formats: allow unknown channel layouts by default
Marton Balint [Mon, 21 Nov 2016 23:40:50 +0000 (00:40 +0100)]
avfilter/formats: allow unknown channel layouts by default

Since the default in the libav fork is to only allow known layouts, making
unknown layouts allowed by default here can be a security risk for filters
directly merged from libav. However, usually it is simple to detect such cases,
use of av_get_channel_layout_nb_channels is a good indicator, so I suggest we
change this regardless.

See http://ffmpeg.org/pipermail/ffmpeg-devel/2016-November/203204.html.

This patch indirectly adds unknown channel layout support for filters where
query_formats is not specified:

abench
afifo
ainterleave
anullsink
apad
aperms
arealtime
aselect
asendcmd
asetnsamples
asetpts
asettb
ashowinfo
azmq

It introduces a query_formats callback for the asyncts filter, which only
supports known channel layouts since it is using libavresample.

And it removes .query_formats callback from filters where it was only there to
support unknown layouts, as this is now the default:

aloop
ametadata
anull
asidedata
asplit
atrim

Acked-by: Nicolas George <george@nsup.org>
Signed-off-by: Marton Balint <cus@passwd.hu>
2 years agoavcodec/mpeg12dec: Add FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM
Michael Niedermayer [Thu, 8 Dec 2016 21:53:50 +0000 (22:53 +0100)]
avcodec/mpeg12dec: Add FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM

This decreases the amount of computations and memory needed for analysing mpeg1/2 streams

the properties update is moved from code that is skiped if skip_frame is set
to code that is not skiped so the change doesnt loose that
from being executed

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoswresample/resample_template: Add filter values in parallel
Michael Niedermayer [Sat, 10 Dec 2016 01:03:43 +0000 (02:03 +0100)]
swresample/resample_template: Add filter values in parallel

This is faster 2871 -> 2189  cycles for int16 matrixbench -> 23456hz
Fixes a integer overflow in a artificial corner case
Fixes part of 668007-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoswresample/resample_template: Reorder operations to avoid one addition
Michael Niedermayer [Sat, 10 Dec 2016 00:54:13 +0000 (01:54 +0100)]
swresample/resample_template: Reorder operations to avoid one addition

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoswresample/swresample: Check count before memcpy()
Michael Niedermayer [Sat, 10 Dec 2016 00:52:56 +0000 (01:52 +0100)]
swresample/swresample: Check count before memcpy()

Fixes undefined operation
Fixes part of 668007-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/mpeg4videodec: Fix undefined shifts in mpeg4_decode_sprite_trajectory()
Michael Niedermayer [Fri, 9 Dec 2016 16:01:14 +0000 (17:01 +0100)]
avcodec/mpeg4videodec: Fix undefined shifts in mpeg4_decode_sprite_trajectory()

Fixes: part of 670190.ogg

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavformat/oggdec: Skip streams in duration correction that did not had their duration...
Michael Niedermayer [Fri, 9 Dec 2016 16:01:14 +0000 (17:01 +0100)]
avformat/oggdec: Skip streams in duration correction that did not had their duration set.

Fixes: part of 670190.ogg
Fixes integer overflow

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoh264_slice: Wait for refs to be available before we use them in error concealment
Derek Buitenhuis [Wed, 7 Dec 2016 17:57:41 +0000 (17:57 +0000)]
h264_slice: Wait for refs to be available before we use them in error concealment

This could happen when there was a frame number gap and frame threading was used.

This fixes #5458.

Debugging-by: Ronald S. Bultje <rsbultje@gmail.com>
Debugging-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2 years agofate: add a monoscopic spherical matroska test
James Almer [Thu, 8 Dec 2016 18:05:20 +0000 (15:05 -0300)]
fate: add a monoscopic spherical matroska test

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agofate: improve fate-mov dependencies
James Almer [Thu, 8 Dec 2016 18:04:30 +0000 (15:04 -0300)]
fate: improve fate-mov dependencies

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2 years agoavcodec/ffv1enc: Allocate smaller packet if the worst case size cannot be allocated
Michael Niedermayer [Thu, 8 Dec 2016 22:51:45 +0000 (23:51 +0100)]
avcodec/ffv1enc: Allocate smaller packet if the worst case size cannot be allocated

We are checking during encoding if there is enough space as version 4 needs that
check.

Fixes Ticket6005

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoavcodec/ffv1enc: Fix size of first slice
Michael Niedermayer [Thu, 8 Dec 2016 23:19:19 +0000 (00:19 +0100)]
avcodec/ffv1enc: Fix size of first slice

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoaacdec: Rename elem_type_prev to che_prev_type.
Alex Converse [Thu, 8 Dec 2016 19:49:43 +0000 (11:49 -0800)]
aacdec: Rename elem_type_prev to che_prev_type.

It describes the type of the previous che element (SCE, CPE, CCE, or
LFE) and does not reflect non-che elements.

2 years agoaacdec: Allow SBR after DRC.
Alex Converse [Wed, 7 Dec 2016 00:47:46 +0000 (16:47 -0800)]
aacdec: Allow SBR after DRC.

Fixes https://www2.iis.fraunhofer.de/AAC/7.1auditionOutLeader_v2_rtb.mp4

Reported-by: rcombs on IRC
2 years agodoc/muxers: remove "-strict experimental" from tee muxer examples
Lou Logan [Thu, 8 Dec 2016 21:06:05 +0000 (12:06 -0900)]
doc/muxers: remove "-strict experimental" from tee muxer examples

Examples use the native FFmpeg AAC encoder but it is no longer
considered experimental and therefore not required.

Signed-off-by: Lou Logan <lou@lrcd.com>
2 years agoavfilter/vf_deband: fix silly mistakes
Paul B Mahol [Thu, 8 Dec 2016 20:21:15 +0000 (21:21 +0100)]
avfilter/vf_deband: fix silly mistakes

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2 years agoavformat: Add max_streams option
Michael Niedermayer [Fri, 18 Nov 2016 16:00:30 +0000 (17:00 +0100)]
avformat: Add max_streams option

This allows user apps to stop OOM due to excessive number of streams

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2 years agoaarch64: h264idct: Use the offset parameter to movrel
Martin Storsjö [Wed, 9 Nov 2016 09:54:25 +0000 (11:54 +0200)]
aarch64: h264idct: Use the offset parameter to movrel

Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 6a62795d4051f435a9a2c59395d96913693922f8)
Cherry pick Suggested-by: Martin Storsjö

This should fix the build failure on macosx

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>