ffmpeg.git
12 months agoavformat/hlsenc.c: remove the useless variable fmp4_init_mode.
Charles Liu [Tue, 30 Oct 2018 03:09:14 +0000 (11:09 +0800)]
avformat/hlsenc.c: remove the useless variable fmp4_init_mode.

Signed-off-by: Charles Liu <liuchh83@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
12 months agoavformat/hlsenc.c: fix memory leak in fmp4 mode.
Charles Liu [Tue, 30 Oct 2018 03:08:29 +0000 (11:08 +0800)]
avformat/hlsenc.c: fix memory leak in fmp4 mode.

Signed-off-by: Charles Liu <liuchh83@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
12 months agoavformat/hlsenc: fix the duration of m4s segment is unusually smaller than expected.
Charles Liu [Tue, 30 Oct 2018 03:07:14 +0000 (11:07 +0800)]
avformat/hlsenc: fix the duration of m4s segment is unusually smaller than expected.

In fmp4 mode, the duration of the second m4s segment is
unusually smaller than the expected segment time.

Signed-off-by: Charles Liu <liuchh83@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
12 months agoavcodec/vp9: Check in decode_tiles() if there is data remaining
Michael Niedermayer [Sat, 4 Aug 2018 20:21:02 +0000 (22:21 +0200)]
avcodec/vp9: Check in decode_tiles() if there is data remaining

Fixes: Timeout
Fixes: 9330/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VP9_fuzzer-5707345857347584
Fixes: 9775/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VP9_fuzzer-5643845344690176

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/vp56: Add vpX_rac_is_end() to check for the end of input
Michael Niedermayer [Sat, 11 Aug 2018 20:28:31 +0000 (22:28 +0200)]
avcodec/vp56: Add vpX_rac_is_end() to check for the end of input

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agovaapi_encode_mpeg2: Fix width/height columns/rows confusion
Mark Thompson [Mon, 29 Oct 2018 19:41:24 +0000 (19:41 +0000)]
vaapi_encode_mpeg2: Fix width/height columns/rows confusion

Fixes #7522.

12 months agoavcodec/vp3: reindent unpack_superblocks()
Michael Niedermayer [Mon, 29 Oct 2018 15:28:20 +0000 (16:28 +0100)]
avcodec/vp3: reindent unpack_superblocks()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/vp3: Do not recalculate coded_fragment_list for keyframes
Michael Niedermayer [Sun, 28 Oct 2018 13:44:37 +0000 (14:44 +0100)]
avcodec/vp3: Do not recalculate coded_fragment_list for keyframes

This improves decoding speed of keyframes

Fixes: Timeout (102->27sec)
Fixes: 9642/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VP3_fuzzer-6676767875006464

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/vp3: Reuse local variable in unpack_superblocks()
Michael Niedermayer [Sun, 28 Oct 2018 11:49:40 +0000 (12:49 +0100)]
avcodec/vp3: Reuse local variable in unpack_superblocks()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/vp3: Do not initialize unused tables for keyframes in unpack_superblock()
Michael Niedermayer [Sun, 28 Oct 2018 11:46:52 +0000 (12:46 +0100)]
avcodec/vp3: Do not initialize unused tables for keyframes in unpack_superblock()

Fixes: Timeout (139sec -> 102sec)
Fixes: 9642/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VP3_fuzzer-6676767875006464

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 agodoc/filters: add small description to geq filter section
Paul B Mahol [Mon, 29 Oct 2018 15:44:23 +0000 (16:44 +0100)]
doc/filters: add small description to geq filter section

Previously there was no description at all.

12 months agoavfilter/af_afftdn: fix memory leaks reported by coverity
Paul B Mahol [Sun, 28 Oct 2018 21:30:06 +0000 (22:30 +0100)]
avfilter/af_afftdn: fix memory leaks reported by coverity

12 months agolibaomenc: Add support for tiles
Mark Thompson [Mon, 22 Oct 2018 22:40:07 +0000 (23:40 +0100)]
libaomenc: Add support for tiles

Adds an option to specify the number of tile rows and columns, then uses
a uniform tiling if possible and otherwise a fixed tiling with equal-sized
tiles to fill the frame.

Also adds -tile-columns and -tile-rows options to make tilings with
power-of-two numbers of tiles, matching the behaviour of the libvpx/VP9
encoder.

12 months agoavfilter/af_afftdn: add alias for sample_noise end
Paul B Mahol [Sun, 28 Oct 2018 14:00:34 +0000 (15:00 +0100)]
avfilter/af_afftdn: add alias for sample_noise end

Added the same one as one mentioned in documentation.

12 months agoavfilter/af_afftdn: switch to activate
Paul B Mahol [Sun, 28 Oct 2018 13:27:32 +0000 (14:27 +0100)]
avfilter/af_afftdn: switch to activate

12 months agolavc/libxavs2: Remove yuv420p10le from fromat list.
Jun Zhao [Sun, 28 Oct 2018 07:13:45 +0000 (15:13 +0800)]
lavc/libxavs2: Remove yuv420p10le from fromat list.

now libxavs2 can't support 10bits mode, so remove the
yuv420p10le from fromat list.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
12 months agolavc/libdavs2: Remove yuv420p10le from fromat list.
Jun Zhao [Sun, 28 Oct 2018 07:10:47 +0000 (15:10 +0800)]
lavc/libdavs2: Remove yuv420p10le from fromat list.

now libdavs2 can't support 10bits mode, so remove the
yuv420p10le from fromat list.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
12 months agolavc/libxavs2: enable OpenGop
hwren [Thu, 18 Oct 2018 15:02:10 +0000 (23:02 +0800)]
lavc/libxavs2: enable OpenGop

Signed-off-by: hwren <hwrenx@126.com>
12 months agolavc/libxavs2: fix intra period meaning conflict
hwren [Thu, 18 Oct 2018 15:02:09 +0000 (23:02 +0800)]
lavc/libxavs2: fix intra period meaning conflict

Signed-off-by: hwren <hwrenx@126.com>
12 months agolavc/libxavs2: unified naming style
hwren [Thu, 18 Oct 2018 15:02:08 +0000 (23:02 +0800)]
lavc/libxavs2: unified naming style

Signed-off-by: hwren <hwrenx@126.com>
12 months agoavfilter/vf_pixdesctest: Use 32bit read/write
Michael Niedermayer [Thu, 25 Oct 2018 21:15:54 +0000 (23:15 +0200)]
avfilter/vf_pixdesctest: Use 32bit read/write

This is needed for processing 32bit floats

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavutil/pixdesc: Add av_write_image_line2(), av_read_image_line2()
Michael Niedermayer [Thu, 25 Oct 2018 21:08:20 +0000 (23:08 +0200)]
avutil/pixdesc: Add av_write_image_line2(), av_read_image_line2()

This is needed because of 32bit float formats (which are difficult to
store in 16bits)

This also fixes undefined behavior found by fate

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
12 months agoavcodec/cbs_vp9: fix parsing sRGB samples
James Almer [Fri, 26 Oct 2018 19:32:56 +0000 (16:32 -0300)]
avcodec/cbs_vp9: fix parsing sRGB samples

Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
12 months agoavcodec/cbs_av1: fix parsing frame_size_with_refs
James Almer [Sat, 27 Oct 2018 00:32:36 +0000 (21:32 -0300)]
avcodec/cbs_av1: fix parsing frame_size_with_refs

found_ref is not a single value in the bitstream. Fixes parsing files with
frame size changes.

Based on code from cbs_vp9.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
12 months agovaapi_encode: Add flag to mark encoders supporting only constant-quality
Mark Thompson [Sun, 23 Sep 2018 21:53:00 +0000 (22:53 +0100)]
vaapi_encode: Add flag to mark encoders supporting only constant-quality

And set it for MJPEG.

12 months agovaapi_encode_h265: Enable multiple-slice support
Mark Thompson [Sun, 23 Sep 2018 21:52:59 +0000 (22:52 +0100)]
vaapi_encode_h265: Enable multiple-slice support

12 months agovaapi_encode_h264: Enable multiple-slice support
Mark Thompson [Sun, 23 Sep 2018 21:52:58 +0000 (22:52 +0100)]
vaapi_encode_h264: Enable multiple-slice support

12 months agovaapi_encode_mpeg2: Use common slice sizing code
Mark Thompson [Sun, 23 Sep 2018 21:52:57 +0000 (22:52 +0100)]
vaapi_encode_mpeg2: Use common slice sizing code

12 months agovaapi_encode: Support configurable slices
Mark Thompson [Sun, 23 Sep 2018 21:52:56 +0000 (22:52 +0100)]
vaapi_encode: Support configurable slices

This adds common code to query driver support and set appropriate
address/size information for each slice.  It only supports rectangular
slices for now, since that is the most common use-case.

12 months agoavfilter/window_func: add bohman window
Paul B Mahol [Sat, 27 Oct 2018 11:13:31 +0000 (13:13 +0200)]
avfilter/window_func: add bohman window

12 months agotests/api-h264-slice-test: use the correct function to free the AVHashContext
James Almer [Sat, 27 Oct 2018 03:12:30 +0000 (00:12 -0300)]
tests/api-h264-slice-test: use the correct function to free the AVHashContext

Fixes memleaks.

Signed-off-by: James Almer <jamrial@gmail.com>
12 months agoavformat/rpl: Support files containing 8 bit PCM or VIDC audio
Cameron Cawley [Fri, 12 Oct 2018 23:06:40 +0000 (00:06 +0100)]
avformat/rpl: Support files containing 8 bit PCM or VIDC audio

Signed-off-by: Cameron Cawley <ccawley2011@gmail.com>
12 months agoavcodec: Implement Archimedes VIDC encoder/decoder
Cameron Cawley [Fri, 12 Oct 2018 23:06:39 +0000 (00:06 +0100)]
avcodec: Implement Archimedes VIDC encoder/decoder

Signed-off-by: Cameron Cawley <ccawley2011@gmail.com>
12 months agofate: add api-h264-slice test
Josh de Kock [Tue, 9 Oct 2018 12:07:15 +0000 (13:07 +0100)]
fate: add api-h264-slice test

This test ensures that you are able to send N number of slice NALUs in slice threaded mode to be decoded simultaneously

12 months agolavc/h264dec: don't error out when receiving multiple IDR slices
Josh de Kock [Wed, 26 Sep 2018 09:35:04 +0000 (10:35 +0100)]
lavc/h264dec: don't error out when receiving multiple IDR slices

This error isn't particularly helpful as checking for mixed IDR/non-IDR
NALUs would need to be done at a higher level to actually be accurate.
Removing the error allows an API user to send individual slice NALUs
(i.e. incomplete frames) so they can take advantage of slice
threading. The ticket which this error was added for (#4408) no
longer segfaults after removing this error (as the bug was likely
fixed more properly elsewhere).

12 months agoavfilter: add xstack filter
Paul B Mahol [Wed, 24 Oct 2018 09:00:58 +0000 (11:00 +0200)]
avfilter: add xstack filter

12 months agoavformat/dashenc: Support HTTP persistent for init segments as well
kjeyapal@akamai.com [Sun, 21 Oct 2018 01:20:51 +0000 (06:50 +0530)]
avformat/dashenc: Support HTTP persistent for init segments as well

12 months agoavcodec/vp9_parser: set profile in AVCodecContext
James Almer [Thu, 25 Oct 2018 23:45:45 +0000 (20:45 -0300)]
avcodec/vp9_parser: set profile in AVCodecContext

Signed-off-by: James Almer <jamrial@gmail.com>
12 months agoavfilter/vf_lut3d: do not error out if TITLE is after other lines
Paul B Mahol [Wed, 24 Oct 2018 09:36:23 +0000 (11:36 +0200)]
avfilter/vf_lut3d: do not error out if TITLE is after other lines

12 months agoavfilter/af_adelay: switch to activate
Paul B Mahol [Thu, 25 Oct 2018 20:57:27 +0000 (22:57 +0200)]
avfilter/af_adelay: switch to activate

Also use less memory in special case when all channels have common delay.

12 months agoconfigure: add missing optional SDL2 dependency to OpenGL outdev
James Almer [Thu, 25 Oct 2018 00:12:32 +0000 (21:12 -0300)]
configure: add missing optional SDL2 dependency to OpenGL outdev

Signed-off-by: James Almer <jamrial@gmail.com>
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