ffmpeg.git
12 months agolavfi/ebur128: Fix mixed declarations and code
Mark Thompson [Tue, 23 Oct 2018 21:21:52 +0000 (22:21 +0100)]
lavfi/ebur128: Fix mixed declarations and code

12 months agoavcodec/libx264: remove FF_CODEC_CAP_INIT_THREADSAFE flag
Marton Balint [Sat, 20 Oct 2018 10:12:42 +0000 (12:12 +0200)]
avcodec/libx264: remove FF_CODEC_CAP_INIT_THREADSAFE flag

Libx264 uses strtok which is not thread safe. Strtok is used in
x264_param_default_preset in param_apply_tune in x264/common/base.c.
Therefore the flag must be removed.

x264 fixed the issue, once the fix is pushed to stable, an #if can be added
to re-enable the flag based on X264_BUILD number.

Fixes ticket #7446.

Signed-off-by: Marton Balint <cus@passwd.hu>
12 months agoavutil/integer: Fix integer overflow in av_mul_i()
Michael Niedermayer [Tue, 23 Oct 2018 23:44:12 +0000 (01:44 +0200)]
avutil/integer: Fix integer overflow in av_mul_i()

Found-by: fate
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/msrle: Check that the input is large enough to contain a end of picture code
Michael Niedermayer [Sun, 21 Oct 2018 12:40:14 +0000 (14:40 +0200)]
avcodec/msrle: Check that the input is large enough to contain a end of picture code

Fixes: Timeout
Fixes: 10625/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MSRLE_fuzzer-5659651283091456

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoRevert "avcodec/decode: copy the output parameters from the last bsf in the chain...
James Almer [Wed, 12 Sep 2018 18:01:14 +0000 (15:01 -0300)]
Revert "avcodec/decode: copy the output parameters from the last bsf in the chain back to the AVCodecContext"

This reverts commit f631c328e680a3dd491936b92f69970c20cdcfc7.

The avcodec_parameters_to_context() call was freeing and reallocating
AVCodecContext->extradata, essentially taking ownership of it, which according
to the doxy is user owned. This is an API break and has produced crashes in
some library users like Firefox[1].

Revert until a better solution is found to internally propagate the filtered
extradata back into the decoder context, or a decision is made to change the
API.

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1486080

Signed-off-by: James Almer <jamrial@gmail.com>
12 months agoswscale/swscale_unscaled : rename packed_16bpc_bswap
Martin Vignali [Mon, 22 Oct 2018 21:07:20 +0000 (23:07 +0200)]
swscale/swscale_unscaled : rename packed_16bpc_bswap

is used for packed and planar format

12 months agoswscale/unscaled : add grayf32 le to be
Martin Vignali [Mon, 22 Oct 2018 21:05:29 +0000 (23:05 +0200)]
swscale/unscaled : add grayf32 le to be

12 months agoswscale/utils : simplify unscaled initial test for float pixfmt
Martin Vignali [Mon, 22 Oct 2018 20:55:14 +0000 (22:55 +0200)]
swscale/utils : simplify unscaled initial test for float pixfmt

12 months agoavfilter/show_info : add print of color information (range, color_primaries, color_tr...
Martin Vignali [Sat, 20 Oct 2018 13:54:15 +0000 (15:54 +0200)]
avfilter/show_info : add print of color information (range, color_primaries, color_trc, colorspace)

12 months agodoc/APIchanges: add entry for AV_FRAME_DATA_S12M_TIMECODE
James Almer [Wed, 24 Oct 2018 17:57:25 +0000 (14:57 -0300)]
doc/APIchanges: add entry for AV_FRAME_DATA_S12M_TIMECODE

Signed-off-by: James Almer <jamrial@gmail.com>
12 months agoavcodec/nvdec: Push the context before destroying the decoder
Philip Langdale [Wed, 24 Oct 2018 17:39:13 +0000 (10:39 -0700)]
avcodec/nvdec: Push the context before destroying the decoder

This has no visible effects but I happened to run under the cuda
memcheck tool and it called it out as an error.

12 months agoavfilter/vf_waveform: abort early if there are no components to show
Paul B Mahol [Wed, 24 Oct 2018 16:30:38 +0000 (18:30 +0200)]
avfilter/vf_waveform: abort early if there are no components to show

12 months agoavfilter/vf_waveform: add gratcicule to rgb input
Paul B Mahol [Wed, 24 Oct 2018 16:25:24 +0000 (18:25 +0200)]
avfilter/vf_waveform: add gratcicule to rgb input

12 months agoavformat/mxfenc: simplify dnxhd handling and add more flavors
Baptiste Coudurier [Tue, 16 Oct 2018 20:19:45 +0000 (13:19 -0700)]
avformat/mxfenc: simplify dnxhd handling and add more flavors

12 months agoavfilter/vf_datascope: fix rgba mapping for oscilloscope filter output
Paul B Mahol [Wed, 24 Oct 2018 15:39:51 +0000 (17:39 +0200)]
avfilter/vf_datascope: fix rgba mapping for oscilloscope filter output

12 months agolavu: bump version, add Changelog entry
Josh de Kock [Wed, 24 Oct 2018 10:25:19 +0000 (11:25 +0100)]
lavu: bump version, add Changelog entry

12 months agoavformat/libsrt: add several options supported in srt 1.3.0
Matsuzawa Tomohiro [Tue, 23 Oct 2018 04:34:29 +0000 (04:34 +0000)]
avformat/libsrt: add several options supported in srt 1.3.0

Several SRT options are missing. Since pkg_config requires libsrt v1.3.0 and above, it should be able to support options added in libsrt v1.3.0 and below.
This commit adds 8 SRT options.
sndbuf, rcvbuf, lossmaxttl, minversion, streamid, smoother, messageapi and transtype
The keys of option are equivalent to stransmit.
https://github.com/Haivision/srt/blob/v1.3.0/apps/socketoptions.hpp#L196-L223

Signed-off-by: Marton Balint <cus@passwd.hu>
12 months agoavdevice/sdl2: add option to set window position
Dave Rice [Mon, 1 Oct 2018 21:17:24 +0000 (17:17 -0400)]
avdevice/sdl2: add option to set window position

Allows arrangement of multiple windows such as:
ffmpeg -re -f lavfi -i mandelbrot -f sdl -window_x 1 -window_y 1 mandelbrot -vf waveform,format=yuv420p -f sdl -window_x 641 -window_y 1 waveform -vf vectorscope,format=yuv420p -f sdl -window_x 1 -window_y 481 vectorscop

Some changes by Marton Balint:
- allow negative position (partially or fully out-of-screen positions seem to
  be sanitized automatically by SDL (or my WM?), so no special handling is
  needed)
- only show window after the position is set
- do not use resizable and borderless flags at the same time, that caused
  issues in ffplay
- add docs

Signed-off-by: Marton Balint <cus@passwd.hu>
12 months agofate: add h264 timecode test
Josh de Kock [Tue, 9 Oct 2018 09:25:18 +0000 (10:25 +0100)]
fate: add h264 timecode test

12 months agolavfi/vf_showinfo: support displaying S12M timecode sidedata
Josh de Kock [Fri, 12 Oct 2018 12:39:51 +0000 (13:39 +0100)]
lavfi/vf_showinfo: support displaying S12M timecode sidedata

12 months agoh264/pic_timing: support multiple timecodes
Josh de Kock [Fri, 12 Oct 2018 12:38:26 +0000 (13:38 +0100)]
h264/pic_timing: support multiple timecodes

12 months agolavc/h264: create AVFrame side data from H.264 timecodes
Devin Heitmueller [Fri, 29 Jun 2018 18:57:13 +0000 (14:57 -0400)]
lavc/h264: create AVFrame side data from H.264 timecodes

Create SMPTE ST 12-1 timecodes based on H.264 SEI picture timing
info.

For framerates > 30 FPS, the field flag is used in conjunction with
pairs of frames which contain the same frame timestamp in S12M.
Ensure the field is properly set per the spec.

12 months agolavc/qsvenc_jpeg: set a default quality
Zhong Li [Thu, 11 Oct 2018 09:26:13 +0000 (17:26 +0800)]
lavc/qsvenc_jpeg: set a default quality

Keep alignment with vaapi mjpeg encoder.

Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 months agolavc/qsvenc_jpeg: add async_depth support
Zhong Li [Thu, 11 Oct 2018 09:26:12 +0000 (17:26 +0800)]
lavc/qsvenc_jpeg: add async_depth support

Currently qsv (m)jpeg encoding is broken.
Regression introducing by the commit(id: c1bcd3): fix async support,
which requires the minimum async_depth to be 1, instead previous zero.
But the default async_depth of qsv (m)jpeg encoding is still initialized
(mostly) as zero.

This patch also abviously improves qsv (m)jpeg encoding performance
due to the default async_depth is changed to 4.

Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 months agoavfilter: add vibrance filter
Paul B Mahol [Fri, 19 Oct 2018 18:10:48 +0000 (20:10 +0200)]
avfilter: add vibrance filter

12 months agoavcodec/jpeg2000dec: Fix off by 1 error in JPEG2000_PGOD_CPRL handling
Michael Niedermayer [Sat, 20 Oct 2018 20:35:37 +0000 (22:35 +0200)]
avcodec/jpeg2000dec: Fix off by 1 error in JPEG2000_PGOD_CPRL handling

Fixes: assertion failure
Fixes: 10785/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5672160496975872

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/ilbcdec: Check startindex
Michael Niedermayer [Sat, 20 Oct 2018 22:35:12 +0000 (00:35 +0200)]
avcodec/ilbcdec: Check startindex

Fixes: Out of array read
Fixes: 10789/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5153255445757952

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agocbs_h2645: Allocate all internal buffers with padding
Mark Thompson [Tue, 16 Oct 2018 21:01:28 +0000 (22:01 +0100)]
cbs_h2645: Allocate all internal buffers with padding

Any of these buffers (for both H.264 and H.265) might reasonably be
parsed using the bitstream reader, so include padding on all of them.

12 months agocbs_h264: Fix SPS used for pic_timing timestamp
Mark Thompson [Tue, 16 Oct 2018 21:01:27 +0000 (22:01 +0100)]
cbs_h264: Fix SPS used for pic_timing timestamp

It should be the same as the one used for the rest of the pic_timing
structure.

12 months agocbs_h264: Actually decompose end-of-sequence NAL units
Mark Thompson [Tue, 16 Oct 2018 21:01:26 +0000 (22:01 +0100)]
cbs_h264: Actually decompose end-of-sequence NAL units

64c50c0e978cd556dc2da238dfe0bb367e7c1ab9 declared support for decomposing
them but omitted to implement it; this adds an implementation.

Also do the same for end-of-stream NAL units, since they are equivalent.

12 months agoavcodec/mpeg4videodec: Fix typo in sprite delta check
Michael Niedermayer [Wed, 17 Oct 2018 23:19:36 +0000 (01:19 +0200)]
avcodec/mpeg4videodec: Fix typo in sprite delta check

Fixes: Integer overflow
Fixes: 10890/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEG4_fuzzer-5636062181851136

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agolavf/vc1test: add rcv to vc1test demuxer extensions
Jun Zhao [Fri, 12 Oct 2018 13:31:09 +0000 (21:31 +0800)]
lavf/vc1test: add rcv to vc1test demuxer extensions

rcv is commonly used as extension for vc1 test stream files.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
12 months agolavf/vc1test: fix vc1test can't probe some RCV file.
Jun Zhao [Thu, 11 Oct 2018 10:22:09 +0000 (18:22 +0800)]
lavf/vc1test: fix vc1test can't probe some RCV file.

case 1:
use the hexdump -C SMM0005.rcv get:
                     size              skip (size - 4)
                      |                        |
                      V                        V
00000000  18 00 00 c5 05 00 00 00  4d f1 0a 11 00 e0 01 00
00000010  00 d0 02 00 00 0c 00 00  00 88 13 00 00 c0 65 52
                         ^
 |
     size + 16
case 2:
same the command for SMM0015.rcv get:
                    size
                      |
                      V
00000000  19 00 00 c5 04 00 00 00  41 f3 80 01 40 02 00 00
00000010  d0 02 00 00 0c 00 00 00  00 00 00 10 00 00 00 00
                      ^
      |
   size + 16

There are different the RCV file format for VC-1, vc1test
just handle the case 2 now, this fix will support the case 1.
(Both of test clips come from: SMPTE Recommended Practice -
VC-1 Decoder and Bitstream Conformance). And I think I got
a older VC-1 test clip in the case 1.

Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Reviewed-by: Jerome Borsboom <jerome.borsboom@carpalis.nl>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Signed-off-by: Yan, FengX <fengx.yan@intel.com>
12 months agoavfilter/setparams : fix colorspace option
Martin Vignali [Sun, 21 Oct 2018 20:48:43 +0000 (22:48 +0200)]
avfilter/setparams : fix colorspace option

12 months agoavfilter/setfield, setrange : set color property to auto
Martin Vignali [Sun, 21 Oct 2018 20:47:57 +0000 (22:47 +0200)]
avfilter/setfield, setrange : set color property to auto

12 months agoavfilter/setparams : update filter description
Martin Vignali [Sun, 21 Oct 2018 20:43:14 +0000 (22:43 +0200)]
avfilter/setparams : update filter description

12 months agoavfilter/*_cuda: don't include internal header
Timo Rothenpieler [Sun, 21 Oct 2018 20:32:32 +0000 (22:32 +0200)]
avfilter/*_cuda: don't include internal header

It's not used, and pulls in the ffnvcodec header, which does not neccesarily have to exist to build these filters, since they include the full cuda.h.

12 months agoavfilter/setparam : add options to set color primaries, trc, space
Martin Vignali [Sun, 21 Oct 2018 17:29:29 +0000 (19:29 +0200)]
avfilter/setparam : add options to set color primaries, trc, space

12 months agoavfilter/setparams : merge setfield and setrange filter to setparams filter
Martin Vignali [Sun, 21 Oct 2018 17:28:03 +0000 (19:28 +0200)]
avfilter/setparams : merge setfield and setrange filter to setparams filter

setfield and setrange filters are kept.

12 months agoavfilter: add chromahold filter
Paul B Mahol [Thu, 18 Oct 2018 10:08:47 +0000 (12:08 +0200)]
avfilter: add chromahold filter

12 months agoavformat/dashenc: URL close unconditionally after DELETE segments
kjeyapal@akamai.com [Thu, 18 Oct 2018 09:26:20 +0000 (14:56 +0530)]
avformat/dashenc: URL close unconditionally after DELETE segments

Fixes bug with HTTP DELETE when HTTP Persistent is ON.
Right now, HTTP Persistent connections is supported only for POSTs and PUTs.
HTTP DELETE will still open a new connection every time.

12 months agoavformat/dashenc: Support HTTP Persistent for master.m3u8 as well
kjeyapal@akamai.com [Thu, 18 Oct 2018 06:19:51 +0000 (11:49 +0530)]
avformat/dashenc: Support HTTP Persistent for m3u8 as well

12 months agoavfilter/af_afir: calculate group delay too
Paul B Mahol [Sat, 20 Oct 2018 20:38:52 +0000 (22:38 +0200)]
avfilter/af_afir: calculate group delay too

12 months agoavdevice/decklink: Fix compile breakage on OSX
Devin Heitmueller [Fri, 19 Oct 2018 19:35:48 +0000 (15:35 -0400)]
avdevice/decklink: Fix compile breakage on OSX

Make the function static, or else Clang complains with:

error: no previous prototype for function 'decklink_get_attr_string' [-Werror,-Wmissing-prototypes]

Signed-off-by: Devin Heitmueller <dheitmueller@ltnglobal.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
12 months agolavf/matroskadec: Simplify string length calculation.
Carl Eugen Hoyos [Mon, 3 Sep 2018 12:18:02 +0000 (14:18 +0200)]
lavf/matroskadec: Simplify string length calculation.

FFmpeg relies on sizeof(char) == 1.

12 months agolavc/sinewin: Do not declare AAC 120/960 tables as const.
Carl Eugen Hoyos [Sun, 14 Oct 2018 21:48:23 +0000 (23:48 +0200)]
lavc/sinewin: Do not declare AAC 120/960 tables as const.

ff_sine_window_init() is writing to these tables causing
a crash if compiled with gcc 8 and lto.

Analyzed by Martin Li┼íka in:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85132

Fixes ticket #7491.

12 months agolavf/dump: Fix a typo: comentary -> commentary.
Carl Eugen Hoyos [Wed, 17 Oct 2018 22:13:38 +0000 (00:13 +0200)]
lavf/dump: Fix a typo: comentary -> commentary.

Fixes ticket #7499.

12 months agoavfilter: add sinc source filter
Paul B Mahol [Tue, 19 Dec 2017 10:15:11 +0000 (11:15 +0100)]
avfilter: add sinc source filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 months agoswscale : add YA16 LE/BE output
Martin Vignali [Sun, 14 Oct 2018 16:08:16 +0000 (18:08 +0200)]
swscale : add YA16 LE/BE output

12 months agoswscale/x86/rgb2rgb.asm : add Ivo Van Poorten name to the top of the file
Martin Vignali [Sat, 13 Oct 2018 17:52:06 +0000 (19:52 +0200)]
swscale/x86/rgb2rgb.asm : add Ivo Van Poorten name to the top of the file

suggested by Carl Eugen Hoyos

12 months agoavcodec/proresenc_aw : use for frame flag in the header the same value than the offic...
Martin Vignali [Mon, 8 Oct 2018 13:51:41 +0000 (15:51 +0200)]
avcodec/proresenc_aw : use for frame flag in the header the same value than the official encoder

12 months agoavcodec/proresenc_aw : add support for prores 444
Martin Vignali [Mon, 8 Oct 2018 13:51:19 +0000 (15:51 +0200)]
avcodec/proresenc_aw : add support for prores 444

12 months agoavcodec/prores_enc : not calculate dct a each quantif search step
Martin Vignali [Mon, 8 Oct 2018 13:50:52 +0000 (15:50 +0200)]
avcodec/prores_enc : not calculate dct a each quantif search step

Improve encoding speed by 2% (using prores input)

12 months agoavcodec/proresenc_aw : use qp close to the official encoder
Martin Vignali [Mon, 8 Oct 2018 13:50:23 +0000 (15:50 +0200)]
avcodec/proresenc_aw : use qp close to the official encoder

12 months agoavcodec/proresenc_aw : use AVframe primaries, transfert, colorspace for frame header...
Martin Vignali [Mon, 8 Oct 2018 13:49:56 +0000 (15:49 +0200)]
avcodec/proresenc_aw : use AVframe primaries, transfert, colorspace for frame header instead of default (unknown, unknown, Rec601)

avoid color shift, on some decoding software

12 months agoavcodec/proresenc_aw : use scan table from prores_data file
Martin Vignali [Mon, 8 Oct 2018 13:49:40 +0000 (15:49 +0200)]
avcodec/proresenc_aw : use scan table from prores_data file

Doesn't seems to make speed loss

12 months agoavfilter/vf_lensfun: use av_malloc_array()
Paul B Mahol [Thu, 18 Oct 2018 09:36:20 +0000 (11:36 +0200)]
avfilter/vf_lensfun: use av_malloc_array()

12 months agoavfilter/vf_lensfun: use av_freep
Paul B Mahol [Thu, 18 Oct 2018 09:30:11 +0000 (11:30 +0200)]
avfilter/vf_lensfun: use av_freep

12 months agoavfilter/af_adelay: do not crash if allocation of chandelay failed
Paul B Mahol [Thu, 18 Oct 2018 08:21:09 +0000 (10:21 +0200)]
avfilter/af_adelay: do not crash if allocation of chandelay failed

12 months agoavformat/dashenc: Dont ignore the codec tag from codec parameters
Karthick Jeyapal [Wed, 10 Oct 2018 07:20:20 +0000 (12:50 +0530)]
avformat/dashenc: Dont ignore the codec tag from codec parameters

12 months agoavcodec/h264_cavlc: Check mb_skip_run
Michael Niedermayer [Thu, 4 Oct 2018 01:13:41 +0000 (03:13 +0200)]
avcodec/h264_cavlc: Check mb_skip_run

Fixes: 10300/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-6292205497483264
Fixes: signed integer overflow: -2147483648 - 1 cannot be represented in type 'int'

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/ilbcdec: Fix multiple integer overflows
Michael Niedermayer [Wed, 10 Oct 2018 23:04:34 +0000 (01:04 +0200)]
avcodec/ilbcdec: Fix multiple integer overflows

Fixes: 10651/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5202341540659200
Fixes: signed integer overflow: -1707705920 - 1703592888 cannot be represented in type 'int'

This tries to follow the webrtc code. For example using cliping and 64 bit as in WebRtcSpl_DotProductWithScale()
and not doing so in other places.
I could not find anything in rfc3951 and the reference code inside which would
explain what to do in these corner cases.

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/ilbcdec: Fix multiple invalid left shifts
Michael Niedermayer [Wed, 10 Oct 2018 22:15:30 +0000 (00:15 +0200)]
avcodec/ilbcdec: Fix multiple invalid left shifts

Fixes: 10651/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5202341540659200
Fixes: left shift of negative value -512

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/ilbcdec: Limit indexes in create_augmented_vector()
Michael Niedermayer [Wed, 10 Oct 2018 21:43:27 +0000 (23:43 +0200)]
avcodec/ilbcdec: Limit indexes in create_augmented_vector()

These limits are based on limiting done in WebRtcIlbcfix_CreateAugmentedVec()
Fixes: out of array accesses
Fixes: 10652/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5638941487661056
Fixes: 10655/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5699970020147200

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/ra144: Fix integer overflow in add_wav()
Michael Niedermayer [Wed, 10 Oct 2018 02:25:50 +0000 (04:25 +0200)]
avcodec/ra144: Fix integer overflow in add_wav()

Fixes: signed integer overflow: -2144033225 + -5208934 cannot be represented in type 'int'
Fixes: 10633/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RA_144_fuzzer-5679133791617024

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavformat/utils: Never store negative values in last_IP_duration
Michael Niedermayer [Fri, 12 Oct 2018 18:55:25 +0000 (20:55 +0200)]
avformat/utils: Never store negative values in last_IP_duration

Fixes: integer overflow compute_pkt_fields()
Fixes: compute_pkt_usan

Reported-by: Thomas Guilbert <tguilbert@chromium.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavformat/utils: Fix integer overflow in discontinuity check
Michael Niedermayer [Fri, 12 Oct 2018 01:00:32 +0000 (03:00 +0200)]
avformat/utils: Fix integer overflow in discontinuity check

Fixes: signed integer overflow: 7738135736989908991 - -7954308516317364223 cannot be represented in type 'long'
Fixes: find_stream_info_usan

Reported-by: Thomas Guilbert <tguilbert@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agolavc/mjpegdec: Support 2:3 subsampling.
Carl Eugen Hoyos [Wed, 17 Oct 2018 22:25:16 +0000 (00:25 +0200)]
lavc/mjpegdec: Support 2:3 subsampling.

Fixes ticket #7495.

12 months agolavf/mxfenc: Remove a write-only variable.
Carl Eugen Hoyos [Sat, 13 Oct 2018 11:10:29 +0000 (13:10 +0200)]
lavf/mxfenc: Remove a write-only variable.

Fixes the following warning:
libavformat/mxfenc.c:2125:22: warning: variable 'frame_size' set but not used

12 months agoavformat/xwma: fix WMAv2 with incorrect bit rate
bnnm [Wed, 3 Oct 2018 20:32:04 +0000 (22:32 +0200)]
avformat/xwma: fix WMAv2 with incorrect bit rate

Fixes trac issue #7215

Output for files created by xWMAEncode and various videogames is correct now.

1ch 32000hz files are still broken, would need fixes in WMA decoder.

Signed-off-by: bnnm <bananaman255@gmail.com>
12 months agodoc/bitstream_filters: Add av1_metadata
Mark Thompson [Thu, 4 Oct 2018 23:09:47 +0000 (00:09 +0100)]
doc/bitstream_filters: Add av1_metadata

12 months agotrace_headers: Fix memory leaks on syntax read failures
Mark Thompson [Thu, 4 Oct 2018 23:09:45 +0000 (00:09 +0100)]
trace_headers: Fix memory leaks on syntax read failures

12 months agoMAINTAINERS: remove myself as hls demuxer maintainer
Anssi Hannula [Sun, 14 Oct 2018 20:38:32 +0000 (23:38 +0300)]
MAINTAINERS: remove myself as hls demuxer maintainer

13 months agoavcodec/cbs: ensure user_data is padded for GBC parsing
Aman Gupta [Fri, 5 Oct 2018 18:36:51 +0000 (11:36 -0700)]
avcodec/cbs: ensure user_data is padded for GBC parsing

Fixes crash noticed in the cbs_userdata patchset.

====ERROR: AddressSanitizer: heap-buffer-overflow on address 0x609000026c89 at pc 0x00010725d37b bp 0x7ffeea04e750 sp 0x7ffeea04e748
READ of size 4 at 0x609000026c89 thread T0
    #0 0x10725d37a in ff_cbs_read_unsigned get_bits.h:274
    #1 0x1072d2767 in ff_cbs_read_a53_user_data cbs_misc_syntax_template.c:119
    #2 0x1078251a7 in h264_metadata_filter h264_metadata_bsf.c:595
    #3 0x105c1321d in output_packet ffmpeg.c:853

0x609000026c89 is located 1 bytes to the right of 8-byte region [0x609000026c80,0x609000026c88)
allocated by thread T0 here:
    #0 0x10aef08d7 in wrap_posix_memalign (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x578d7)
    #1 0x10aca95e6 in av_malloc mem.c:87
    #2 0x10ac545fe in av_buffer_allocz buffer.c:72
    #3 0x107263b27 in cbs_h264_read_nal_unit cbs_h264_syntax_template.c:722
    #4 0x10725b688 in cbs_read_fragment_content cbs.c:155

Signed-off-by: Aman Gupta <aman@tmm1.net>
13 months agoavcodec/cbs: fix crash in sei_pic_timestamp
Aman Gupta [Fri, 12 Oct 2018 03:42:58 +0000 (20:42 -0700)]
avcodec/cbs: fix crash in sei_pic_timestamp

Signed-off-by: Aman Gupta <aman@tmm1.net>
13 months agoavcodec/cbs_h264: silence errors about end_of_seq nalus
Aman Gupta [Mon, 8 Oct 2018 20:05:05 +0000 (13:05 -0700)]
avcodec/cbs_h264: silence errors about end_of_seq nalus

[ffmpeg] AVBSFContext: Decomposition unimplemented for unit 4 (type 10).

Signed-off-by: Aman Gupta <aman@tmm1.net>
13 months agodoc/filters: update silenceremove documentation
Paul B Mahol [Mon, 15 Oct 2018 16:10:16 +0000 (18:10 +0200)]
doc/filters: update silenceremove documentation

13 months agoavfilter/af_silenceremove: use enum for threshold detection modes
Paul B Mahol [Mon, 15 Oct 2018 15:52:56 +0000 (17:52 +0200)]
avfilter/af_silenceremove: use enum for threshold detection modes

13 months agoavfilter/af_silenceremove: add enum for detection modes
Paul B Mahol [Mon, 15 Oct 2018 15:44:56 +0000 (17:44 +0200)]
avfilter/af_silenceremove: add enum for detection modes

13 months agoavfilter/af_silenceremove: add options description
Paul B Mahol [Mon, 15 Oct 2018 14:26:16 +0000 (16:26 +0200)]
avfilter/af_silenceremove: add options description

13 months agoavfilter/af_silenceremove: prefer outlink instead of inlink
Paul B Mahol [Mon, 15 Oct 2018 14:09:24 +0000 (16:09 +0200)]
avfilter/af_silenceremove: prefer outlink instead of inlink

13 months agoavfilter/af_silenceremove: add mode options
Paul B Mahol [Mon, 15 Oct 2018 14:05:04 +0000 (16:05 +0200)]
avfilter/af_silenceremove: add mode options

To control how threshold is calculated in multichannel audio.

13 months agoavfilter/af_silenceremove: add options to keep min duration of silence
Paul B Mahol [Mon, 8 Oct 2018 18:43:14 +0000 (20:43 +0200)]
avfilter/af_silenceremove: add options to keep min duration of silence

13 months agoavcodec/av1_parse: Check obu_size
Michael Niedermayer [Sun, 14 Oct 2018 10:40:38 +0000 (12:40 +0200)]
avcodec/av1_parse: Check obu_size

Fixes: out of array read
Fixes: SIGSEGV_get_obu_bit_length_av1_parse

Found-by: keval shah <skeval65@gmail.com>
Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
13 months agoffmpeg: log corrupted packets and frames
Marton Balint [Tue, 9 Oct 2018 21:03:20 +0000 (23:03 +0200)]
ffmpeg: log corrupted packets and frames

Signed-off-by: Marton Balint <cus@passwd.hu>
13 months agoavcodec/cuviddec: properly take deinterlacing and display delay into account for...
Timo Rothenpieler [Sat, 13 Oct 2018 21:44:30 +0000 (23:44 +0200)]
avcodec/cuviddec: properly take deinterlacing and display delay into account for buffer_full check

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
13 months agoavcodec/imm4: improve decoding of some files
Paul B Mahol [Sun, 14 Oct 2018 10:57:03 +0000 (12:57 +0200)]
avcodec/imm4: improve decoding of some files

13 months agofate: Update checksums for recent mxf changes
Michael Niedermayer [Sun, 14 Oct 2018 11:03:19 +0000 (13:03 +0200)]
fate: Update checksums for recent mxf changes

References: bb89109a0a29d51cb207352834f6b92784c1700d84e8a87ca082f5a882e83fcb34a970f8b720cc25ea55a11ced5ef73bc7173ae2d3e268e26b3513503d38e45eb85c7a2420cb48a9cd45625c28644b2e

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
13 months agodoc/filters: do not mention removed option from afir filter
Paul B Mahol [Sat, 13 Oct 2018 19:44:06 +0000 (21:44 +0200)]
doc/filters: do not mention removed option from afir filter

13 months agoavformat: add SER demuxer
Paul B Mahol [Fri, 12 Oct 2018 09:33:29 +0000 (11:33 +0200)]
avformat: add SER demuxer

13 months agoswscale/x86/rgb2rgb : port shuffle 2103 mmxext to external asm and remove inline...
Martin Vignali [Thu, 11 Oct 2018 19:35:05 +0000 (21:35 +0200)]
swscale/x86/rgb2rgb : port shuffle 2103 mmxext to external asm and remove inline asm version

13 months agoswscale/x86/rgb2rgb : remove mmx version for shuffle2103
Martin Vignali [Thu, 11 Oct 2018 19:31:18 +0000 (21:31 +0200)]
swscale/x86/rgb2rgb : remove mmx version for shuffle2103

13 months agolavf/mxfenc: Remove two unused variables.
Carl Eugen Hoyos [Sat, 13 Oct 2018 11:08:32 +0000 (13:08 +0200)]
lavf/mxfenc: Remove two unused variables.

Fixes the following warnings:
libavformat/mxfenc.c:2036:9: warning: unused variable 'i'
libavformat/mxfenc.c:2125:9: warning: unused variable 'i'

13 months agolavf/mxfdec: demux s436m as eia608 subtitle track
Baptiste Coudurier [Tue, 14 Feb 2017 18:46:56 +0000 (10:46 -0800)]
lavf/mxfdec: demux s436m as eia608 subtitle track

13 months agolavf/mxfenc: support creating s436m data tracks
Baptiste Coudurier [Sat, 19 Nov 2016 19:09:24 +0000 (11:09 -0800)]
lavf/mxfenc: support creating s436m data tracks

13 months agoavformat/mxfenc: correctly set content package rate in system element
Baptiste Coudurier [Wed, 21 Mar 2018 20:13:51 +0000 (13:13 -0700)]
avformat/mxfenc: correctly set content package rate in system element

13 months agoavformat/mxfenc: update body partition with footer offset
Baptiste Coudurier [Wed, 21 Mar 2018 19:59:11 +0000 (12:59 -0700)]
avformat/mxfenc: update body partition with footer offset

13 months agoavformat/mxfenc: add mpeg-2 specific metadata, fix compatibility with sony content...
Baptiste Coudurier [Wed, 21 Mar 2018 16:35:22 +0000 (09:35 -0700)]
avformat/mxfenc: add mpeg-2 specific metadata, fix compatibility with sony content browser

13 months agoavformat/mxfenc: write index delta entry array needed by sony vegas pro 11
Baptiste Coudurier [Wed, 21 Mar 2018 19:53:56 +0000 (12:53 -0700)]
avformat/mxfenc: write index delta entry array needed by sony vegas pro 11

13 months agoavcodec/imm4: stop using FAAN idct
Paul B Mahol [Fri, 12 Oct 2018 16:53:26 +0000 (18:53 +0200)]
avcodec/imm4: stop using FAAN idct