ffmpeg.git
8 hours agoavcodec/tiff: do not allow bpp 40 with undefined pixel formats master
Michael Niedermayer [Sat, 23 Mar 2019 17:28:10 +0000 (18:28 +0100)]
avcodec/tiff: do not allow bpp 40 with undefined pixel formats

Fixes: Out of array access, assertion failure
Fixes: 13851/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5754570929602560
Fixes: 13869/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5695998313103360
Fixes: 13873/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5077273645940736
Fixes: 13874/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5756396757319680
Fixes: 13877/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5741026750234624
Fixes: 13880/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5649148809838592

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
19 hours agolavd/v4l2: Fix the type of the probe function.
Carl Eugen Hoyos [Sat, 23 Mar 2019 22:42:09 +0000 (23:42 +0100)]
lavd/v4l2: Fix the type of the probe function.

35 hours agolavc/libdavs2: fix frame dumping error description
hwrenx [Sat, 23 Mar 2019 06:08:00 +0000 (14:08 +0800)]
lavc/libdavs2: fix frame dumping error description

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: hwrenx <hwrenx@126.com>
35 hours agolavc/libdavs2: add davs2_flush
hwrenx [Sat, 23 Mar 2019 06:07:16 +0000 (14:07 +0800)]
lavc/libdavs2: add davs2_flush

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: hwrenx <hwrenx@126.com>
35 hours agoavformat/avformat.h: update the comment from deprecated to new API
Steven Liu [Sat, 23 Mar 2019 06:04:39 +0000 (14:04 +0800)]
avformat/avformat.h: update the comment from deprecated to new API

Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
37 hours agolavf/flvdec: fix typo in log message
Jun Zhao [Sat, 23 Mar 2019 03:28:15 +0000 (11:28 +0800)]
lavf/flvdec: fix typo in log message

fix typo in log message, it's come from cd141e71bd3

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
38 hours agolavfi/sidedata: add missed frame side data type
Jun Zhao [Sat, 9 Mar 2019 03:56:39 +0000 (11:56 +0800)]
lavfi/sidedata: add missed frame side data type

add missed frame side data type

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
46 hours agoMerge commit '0676de935b1e81bc5b5698fef3e7d48ff2ea77ff'
James Almer [Fri, 22 Mar 2019 19:04:42 +0000 (16:04 -0300)]
Merge commit '0676de935b1e81bc5b5698fef3e7d48ff2ea77ff'

* commit '0676de935b1e81bc5b5698fef3e7d48ff2ea77ff':
  arm: Implement a NEON version of 422 h264_h_loop_filter_chroma

Merged-by: James Almer <jamrial@gmail.com>
2 days agolavd/v4l2-common: Add an entry for Z16.
Carl Eugen Hoyos [Thu, 21 Mar 2019 00:24:42 +0000 (01:24 +0100)]
lavd/v4l2-common: Add an entry for Z16.

2 days agolavfi/colorspace_common: add ifdef check to be more compatible.
Ruiling Song [Mon, 21 Jan 2019 07:44:04 +0000 (15:44 +0800)]
lavfi/colorspace_common: add ifdef check to be more compatible.

Some filters may not need to do linearize/delinearize, thus
will even not define them. Add ifdef check, so they could easily
re-use the .cl file.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2 days agolavfi/tonemap_opencl: reuse color matrix calculation from colorspace.c
Ruiling Song [Tue, 22 Jan 2019 07:01:56 +0000 (15:01 +0800)]
lavfi/tonemap_opencl: reuse color matrix calculation from colorspace.c

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2 days agolavfi/opencl: add ff_opencl_print_const_matrix_3x3()
Ruiling Song [Tue, 22 Jan 2019 06:47:54 +0000 (14:47 +0800)]
lavfi/opencl: add ff_opencl_print_const_matrix_3x3()

This is used to print a 3x3 matrix into a part of OpenCL
source code.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2 days agolavfi/colorspace: move some functions to common file
Ruiling Song [Tue, 22 Jan 2019 06:27:01 +0000 (14:27 +0800)]
lavfi/colorspace: move some functions to common file

These functions can be reused by other colorspace filters,
so move them to common file. No functional changes.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2 days agolavu/opencl: replace va_ext.h with standard name
Ruiling Song [Fri, 23 Nov 2018 05:39:12 +0000 (13:39 +0800)]
lavu/opencl: replace va_ext.h with standard name

Khronos OpenCL header (https://github.com/KhronosGroup/OpenCL-Headers)
uses cl_va_api_media_sharing_intel.h. And Intel's official OpenCL driver
for Intel GPU (https://github.com/intel/compute-runtime) was compiled
against Khronos OpenCL header. So it's better to align with Khronos.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2 days agoarm: Implement a NEON version of 422 h264_h_loop_filter_chroma
Martin Storsjö [Tue, 12 Mar 2019 09:49:18 +0000 (11:49 +0200)]
arm: Implement a NEON version of 422 h264_h_loop_filter_chroma

Previously, the 420 version was used even for 422.

This fixes occasional checkasm failures.

Signed-off-by: Martin Storsjö <martin@martin.st>
2 days agoMAINTAINERS: remove myself as mailing list maintainer
Lou Logan [Thu, 21 Mar 2019 19:34:13 +0000 (11:34 -0800)]
MAINTAINERS: remove myself as mailing list maintainer

Refer to Michael, compn, or Baptiste.

Signed-off-by: Lou Logan <lou@lrcd.com>
2 days agodoc/mailing-list-faq: ffmpeg-devel is now subscription only
Lou Logan [Thu, 21 Mar 2019 19:26:11 +0000 (11:26 -0800)]
doc/mailing-list-faq: ffmpeg-devel is now subscription only

Nobody is going to check the queue anymore, so users must now subscribe to
send messages to ffmpeg-devel. This will prevent orphaned/ignored messages
from rotting in the abandoned queue. This matches the behavior of ffmpeg-user
and libav-user.

Also, this addresses some other nits.

Signed-off-by: Lou Logan <lou@lrcd.com>
3 days agolavf: Constify the probe function argument.
Carl Eugen Hoyos [Thu, 21 Mar 2019 00:18:37 +0000 (01:18 +0100)]
lavf: Constify the probe function argument.

Reviewed-by: Lauri Kasanen
Reviewed-by: Tomas Härdin
3 days agoMaintainers : remove myself
Martin Vignali [Thu, 21 Mar 2019 00:36:48 +0000 (01:36 +0100)]
Maintainers : remove myself

Too much hostility in this project
Not enough respect for users and contributors

I'm not interested to contribute anymore

3 days agoavfilter/af_astats: add support for optimized min/max/peak calculation
Marton Balint [Fri, 1 Mar 2019 23:10:21 +0000 (00:10 +0100)]
avfilter/af_astats: add support for optimized min/max/peak calculation

Signed-off-by: Marton Balint <cus@passwd.hu>
3 days agoavfilter/af_astats: rework sample loops
Marton Balint [Fri, 1 Mar 2019 22:48:04 +0000 (23:48 +0100)]
avfilter/af_astats: rework sample loops

The channel loop is now the outer loop for both planar and interleaved. This is
needed by the next patch, and the speed difference is negligable if any.

Signed-off-by: Marton Balint <cus@passwd.hu>
3 days agoavfilter/af_astats: factorize sample loops
Marton Balint [Fri, 1 Mar 2019 22:09:54 +0000 (23:09 +0100)]
avfilter/af_astats: factorize sample loops

Signed-off-by: Marton Balint <cus@passwd.hu>
3 days agoavfilter/af_astats: fix identation
Marton Balint [Fri, 1 Mar 2019 20:51:34 +0000 (21:51 +0100)]
avfilter/af_astats: fix identation

Signed-off-by: Marton Balint <cus@passwd.hu>
3 days agoavfilter/af_astats: add support for selecting measured statistics
Marton Balint [Fri, 1 Mar 2019 00:32:00 +0000 (01:32 +0100)]
avfilter/af_astats: add support for selecting measured statistics

set_metadata with many entries is not very efficient, and with small audio
frames the performance loss is noticable. Also with this very simple
calculations (like peak) can be even further optimized.

Unfoturnately there are some small differences in metadata and av_log info
output, so factorizing calculations and output might not worth the hassle.

Signed-off-by: Marton Balint <cus@passwd.hu>
3 days agolavf/latmenc: Error out for unsupported codecs.
Carl Eugen Hoyos [Wed, 1 Nov 2017 01:15:10 +0000 (02:15 +0100)]
lavf/latmenc: Error out for unsupported codecs.

3 days agoavcodec/hevcdec: decode at most one slice reporting being the first in the picture
James Almer [Mon, 18 Mar 2019 20:25:58 +0000 (17:25 -0300)]
avcodec/hevcdec: decode at most one slice reporting being the first in the picture

Fixes deadlocks when decoding packets containing more than one of the aforementioned
slices when using frame threads.

Tested-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
3 days agolavf/allformats: Remove an accidentally committed line.
Carl Eugen Hoyos [Wed, 20 Mar 2019 22:36:45 +0000 (23:36 +0100)]
lavf/allformats: Remove an accidentally committed line.

Regression since 3aa6208d.
Reported-by: Lou Logan
3 days agodoc/ffmpeg: muxdelay and muxpreload are output options
Aman Gupta [Wed, 20 Mar 2019 21:54:13 +0000 (14:54 -0700)]
doc/ffmpeg: muxdelay and muxpreload are output options

Signed-off-by: Aman Gupta <aman@tmm1.net>
3 days agoavcodec/arbc: Check nb_segments before allocating and copying frame
Michael Niedermayer [Wed, 13 Mar 2019 20:48:25 +0000 (21:48 +0100)]
avcodec/arbc: Check nb_segments before allocating and copying frame

Fixes: Timeout (30sec -> 2sec)
Fixes: 13578/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ARBC_fuzzer-5685625527730176

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 days agoavcodec/scpr: Perform frame copy later
Michael Niedermayer [Thu, 14 Mar 2019 20:23:03 +0000 (21:23 +0100)]
avcodec/scpr: Perform frame copy later

Optimization found while looking at 13442/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SCPR_fuzzer-5758293933293568

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 days agotools/target_dec_fate.list: add issues 4000 to 6000
Michael Niedermayer [Fri, 15 Mar 2019 00:30:13 +0000 (01:30 +0100)]
tools/target_dec_fate.list: add issues 4000 to 6000

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 days agolavf: Constify AVProbeData* in av_probe_input_format().
Carl Eugen Hoyos [Wed, 20 Mar 2019 18:04:49 +0000 (19:04 +0100)]
lavf: Constify AVProbeData* in av_probe_input_format().

3 days agolavf/avformat: Add a warning that ff_const59 is not part of the public api.
Carl Eugen Hoyos [Wed, 20 Mar 2019 17:56:47 +0000 (18:56 +0100)]
lavf/avformat: Add a warning that ff_const59 is not part of the public api.

3 days agolavf: Constify AVInputFormat pointer.
Carl Eugen Hoyos [Wed, 20 Mar 2019 17:52:38 +0000 (18:52 +0100)]
lavf: Constify AVInputFormat pointer.

4 days agolavf: Constify AVOutputFormat pointer.
Carl Eugen Hoyos [Wed, 20 Mar 2019 17:38:48 +0000 (18:38 +0100)]
lavf: Constify AVOutputFormat pointer.

4 days agolavc/arbc: Use AV_WB24() where applicable.
Carl Eugen Hoyos [Sun, 27 Jan 2019 14:10:04 +0000 (15:10 +0100)]
lavc/arbc: Use AV_WB24() where applicable.

4 days agolavc/tiff: Allow decoding of cmyka (five components).
Carl Eugen Hoyos [Wed, 20 Mar 2019 16:50:25 +0000 (17:50 +0100)]
lavc/tiff: Allow decoding of cmyka (five components).

Fixes ticket #7675.

4 days agolavf/http: Print metadata updates with -loglevel verbose.
Carl Eugen Hoyos [Sat, 9 Feb 2019 23:59:30 +0000 (00:59 +0100)]
lavf/http: Print metadata updates with -loglevel verbose.

Simplifies metadata debugging.

4 days agolavf/spdifenc: Do not overwrite buffer when muxing TrueHD.
Carl Eugen Hoyos [Thu, 14 Feb 2019 19:16:18 +0000 (20:16 +0100)]
lavf/spdifenc: Do not overwrite buffer when muxing TrueHD.

Fixes ticket #7733.

Tested-by: Moritz Barsnick
4 days agolavc/truehd_core: Initialize the last bytes of the output buffer.
Carl Eugen Hoyos [Thu, 14 Feb 2019 21:43:10 +0000 (22:43 +0100)]
lavc/truehd_core: Initialize the last bytes of the output buffer.

Avoids undeterministic output.

4 days agolavf/sdp: Change pointer to configuration from char* to uint8_t*.
Carl Eugen Hoyos [Thu, 14 Mar 2019 23:52:50 +0000 (00:52 +0100)]
lavf/sdp: Change pointer to configuration from char* to uint8_t*.

This is also what av_base64_encode() expects.
Fixes the following warnings with clang:
libavformat/sdp.c:394:40: warning: implicit conversion from 'int' to 'char' changes value from 254 to -2
libavformat/sdp.c:395:40: warning: implicit conversion from 'int' to 'char' changes value from 205 to -51
libavformat/sdp.c:396:40: warning: implicit conversion from 'int' to 'char' changes value from 186 to -70

4 days agolavc/qtrle: Avoid an unaligned 64-bit write.
Carl Eugen Hoyos [Fri, 15 Mar 2019 00:14:58 +0000 (01:14 +0100)]
lavc/qtrle: Avoid an unaligned 64-bit write.

pixel_ptr can be increased by 4.
Fixes a crash on sparc64.

4 days agolavc/tiff: Support decoding 16bit cmyk.
Carl Eugen Hoyos [Sat, 9 Mar 2019 10:05:36 +0000 (11:05 +0100)]
lavc/tiff: Support decoding 16bit cmyk.

4 days agolavd: Remove libndi_newtek
Carl Eugen Hoyos [Sat, 9 Mar 2019 18:48:56 +0000 (18:48 +0000)]
lavd: Remove libndi_newtek

4 days agoswscale/ppc: Add av_unused to template vars only used in one includer
Lauri Kasanen [Mon, 18 Mar 2019 11:24:42 +0000 (13:24 +0200)]
swscale/ppc: Add av_unused to template vars only used in one includer

4 days agoswscale/ppc: Clean up some mixed decl warnings
Lauri Kasanen [Mon, 18 Mar 2019 11:19:22 +0000 (13:19 +0200)]
swscale/ppc: Clean up some mixed decl warnings

4 days agoavformat/smoothstreamingenc:add bitrate calculate
Jun Li [Wed, 20 Mar 2019 05:49:02 +0000 (13:49 +0800)]
avformat/smoothstreamingenc:add bitrate calculate

Calculate bitrate based on fragment size, only applied when
bitrate is not set, for example rtsp source.

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: Jun Li <junli1026@gmail.com>
4 days agoavcodec/vt_hevc: fix crash if vps_list[0] or sps_list[0] are null
Rodger Combs [Thu, 10 Jan 2019 02:26:41 +0000 (21:26 -0500)]
avcodec/vt_hevc: fix crash if vps_list[0] or sps_list[0] are null

Instead of assuming id 0 is used, use the same logic as used for PPS,
where all available entries in the list are emitted.

Signed-off-by: Aman Gupta <aman@tmm1.net>
4 days agodoc/ffmpeg: remove entry for -loop_output
Gyan Doshi [Tue, 19 Mar 2019 20:46:17 +0000 (02:16 +0530)]
doc/ffmpeg: remove entry for -loop_output

Option doesn't exist .. hasn't for a few years now.

4 days agoh2645_parse: Fix loglevel for NAL header parsing
Derek Buitenhuis [Mon, 18 Mar 2019 19:18:11 +0000 (19:18 +0000)]
h2645_parse: Fix loglevel for NAL header parsing

We don't treat this as an error.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 days agoavcodec/libdav1d: use a reference to the allocated buffer instead of wrapping the...
James Almer [Mon, 18 Mar 2019 13:38:31 +0000 (10:38 -0300)]
avcodec/libdav1d: use a reference to the allocated buffer instead of wrapping the Dav1dPicture

Removes an av_malloc() per frame.

Reviewed-by: BBB
Reviewed-by: nevcairiel
Signed-off-by: James Almer <jamrial@gmail.com>
5 days agoavcodec/libdav1d: reset pool size on allocation failure
James Almer [Sat, 16 Mar 2019 02:55:45 +0000 (23:55 -0300)]
avcodec/libdav1d: reset pool size on allocation failure

Signed-off-by: James Almer <jamrial@gmail.com>
5 days agotests/fate-run: fix regression in encoding options
James Almer [Tue, 19 Mar 2019 04:04:49 +0000 (01:04 -0300)]
tests/fate-run: fix regression in encoding options

Set threads back to 1. Fixes fate when run in multi threaded mode.

Regression since d0c43e32427ec1efac364be0987a6aafa695527f.

Signed-off-by: James Almer <jamrial@gmail.com>
5 days agolibavformat/movenc: mov: added subtitle codec tags to codec tag list
Paweł Wegner [Mon, 25 Feb 2019 10:50:43 +0000 (11:50 +0100)]
libavformat/movenc: mov: added subtitle codec tags to codec tag list

This fixes avformat_query_codec incorrectly returning 0 for
mov container and mov_text subtitles.

Signed-off-by: Paweł Wegner <pawel.wegner95@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
6 days agolavu/qsv: allow surface size larger than requirement
Zhong Li [Fri, 8 Mar 2019 06:41:22 +0000 (14:41 +0800)]
lavu/qsv: allow surface size larger than requirement

Just like commit 6829a079444e10818a847e153121fb458cc5c0a8,
surface size larger than requirement should not be treated as error.

Signed-off-by: Zhong Li <zhong.li@intel.com>
7 days agoavcodec/pnm: Optimize reading loop in pnm_get()
Michael Niedermayer [Sun, 10 Mar 2019 21:39:53 +0000 (22:39 +0100)]
avcodec/pnm: Optimize reading loop in pnm_get()

Fixes: Timeout 13149 (5sec -> 3sec), 13166 (11sec -> 7sec), 13430 (5sec -> 3sec)
Fixes: 13149/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PGM_fuzzer-5760833622114304
Fixes: 13166/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PGMYUV_fuzzer-5763216322330624
Fixes: 13430/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PPM_fuzzer-5758658334425088

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 days agoavcodec/dfa: Check the chunk header is not truncated
Michael Niedermayer [Sun, 10 Mar 2019 22:45:19 +0000 (23:45 +0100)]
avcodec/dfa: Check the chunk header is not truncated

Fixes: Timeout (11sec -> 3sec)
Fixes: 13218/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DFA_fuzzer-5661074316066816

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 days agoavcodec/clearvideo: Check remaining data in P frames
Michael Niedermayer [Fri, 8 Mar 2019 00:42:06 +0000 (01:42 +0100)]
avcodec/clearvideo: Check remaining data in P frames

Fixes: Timeout (19sec -> 419msec)
Fixes: 13411/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CLEARVIDEO_fuzzer-5733153811988480

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 days agoavcodec/diracdec: Count truncated parts as errors in decode_component()
Michael Niedermayer [Fri, 8 Mar 2019 14:43:08 +0000 (15:43 +0100)]
avcodec/diracdec: Count truncated parts as errors in decode_component()

Fixes: Timeout (29sec -> 4sec)
Fixes: 13150/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DIRAC_fuzzer-5690185671507968

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 days agoavcodec/ffv1dec_template: Optimize golomb run mode
Michael Niedermayer [Fri, 8 Mar 2019 12:05:13 +0000 (13:05 +0100)]
avcodec/ffv1dec_template: Optimize golomb run mode

Fixes: Timeout (34sec -> 12sec)
Fixes: 13398/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FFV1_fuzzer-5664106709778432

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
8 days agodoc/ffmpeg: add entry for itsscale
Gyan Doshi [Sat, 16 Mar 2019 11:43:15 +0000 (17:13 +0530)]
doc/ffmpeg: add entry for itsscale

8 days agompeg12enc: Use Closed Captions if available
Mathieu Duponchelle [Fri, 8 Feb 2019 22:10:12 +0000 (23:10 +0100)]
mpeg12enc: Use Closed Captions if available

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
9 days agotests/fate/ffmpeg: Check for apng codec for fate-copy-apng.
Carl Eugen Hoyos [Thu, 14 Mar 2019 23:27:33 +0000 (00:27 +0100)]
tests/fate/ffmpeg: Check for apng codec for fate-copy-apng.

The file has to be created first, fixes fate without zlib.

9 days agolavc/qtrle: Do not use aligned writes for 24bit frames.
Carl Eugen Hoyos [Thu, 14 Mar 2019 23:02:48 +0000 (00:02 +0100)]
lavc/qtrle: Do not use aligned writes for 24bit frames.

pixel_ptr is 3 and leads to aligned access on odd memory addresses.
Fixes crashes on systems that do not allow unaligned access like sparc32.

9 days agofate/lavf-image: fix passed arguments for some high bit depth tests
James Almer [Thu, 14 Mar 2019 20:07:15 +0000 (17:07 -0300)]
fate/lavf-image: fix passed arguments for some high bit depth tests

Should fix fate failures on big endian targets.

Signed-off-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'f8abf7d4dfa0504f7f65e4f1fd9d22e01cb371cc'
James Almer [Thu, 14 Mar 2019 19:31:41 +0000 (16:31 -0300)]
Merge commit 'f8abf7d4dfa0504f7f65e4f1fd9d22e01cb371cc'

* commit 'f8abf7d4dfa0504f7f65e4f1fd9d22e01cb371cc':
  checkasm/h264: test 4:2:2 chroma loop filter functions

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '186bd30aa3b6c2b29b4dbf18278700b572068b1e'
James Almer [Thu, 14 Mar 2019 19:29:41 +0000 (16:29 -0300)]
Merge commit '186bd30aa3b6c2b29b4dbf18278700b572068b1e'

* commit '186bd30aa3b6c2b29b4dbf18278700b572068b1e':
  h264/arm64: implement missing 4:2:2 chroma loop filter neon functions

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '7e42d5f0ab2aeac811fd01e122627c9198b13f01'
James Almer [Thu, 14 Mar 2019 19:22:29 +0000 (16:22 -0300)]
Merge commit '7e42d5f0ab2aeac811fd01e122627c9198b13f01'

* commit '7e42d5f0ab2aeac811fd01e122627c9198b13f01':
  aarch64: vp8: Optimize vp8_idct_add_neon for aarch64

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '49f9c4272c4029b57ff300d908ba03c6332fc9c4'
James Almer [Thu, 14 Mar 2019 19:21:46 +0000 (16:21 -0300)]
Merge commit '49f9c4272c4029b57ff300d908ba03c6332fc9c4'

* commit '49f9c4272c4029b57ff300d908ba03c6332fc9c4':
  aarch64: vp8: Skip saturating in shrn in ff_vp8_idct_add_neon

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '37394ef01b040605f8e1c98e73aa12b1c0bcba07'
James Almer [Thu, 14 Mar 2019 19:20:05 +0000 (16:20 -0300)]
Merge commit '37394ef01b040605f8e1c98e73aa12b1c0bcba07'

* commit '37394ef01b040605f8e1c98e73aa12b1c0bcba07':
  aarch64: vp8: Optimize put_epel16_h6v6 with vp8_epel8_v6_y2

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'cef914e08310166112ac09567e66452a7679bfc8'
James Almer [Thu, 14 Mar 2019 19:19:41 +0000 (16:19 -0300)]
Merge commit 'cef914e08310166112ac09567e66452a7679bfc8'

* commit 'cef914e08310166112ac09567e66452a7679bfc8':
  arm: vp8: Optimize put_epel16_h6v6 with vp8_epel8_v6_y2

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'e39a9212ab37a55b346801c77487d8a47b6f9fe2'
James Almer [Thu, 14 Mar 2019 19:18:42 +0000 (16:18 -0300)]
Merge commit 'e39a9212ab37a55b346801c77487d8a47b6f9fe2'

* commit 'e39a9212ab37a55b346801c77487d8a47b6f9fe2':
  aarch64: vp8: Port bilin functions from arm version

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '58d154922707bfeb873cb3a7476e0f94b17463dd'
James Almer [Thu, 14 Mar 2019 19:17:33 +0000 (16:17 -0300)]
Merge commit '58d154922707bfeb873cb3a7476e0f94b17463dd'

* commit '58d154922707bfeb873cb3a7476e0f94b17463dd':
  aarch64: vp8: Port epel4 functions from arm version

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'cc7ba00c35faf0478f1f56215e926f70ccb31282'
James Almer [Thu, 14 Mar 2019 19:16:43 +0000 (16:16 -0300)]
Merge commit 'cc7ba00c35faf0478f1f56215e926f70ccb31282'

* commit 'cc7ba00c35faf0478f1f56215e926f70ccb31282':
  aarch64: vp8: Port missing epel8 functions from arm version

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '52c9b0a6c0d02cff6caebcf6989e565e05b55200'
James Almer [Thu, 14 Mar 2019 19:14:40 +0000 (16:14 -0300)]
Merge commit '52c9b0a6c0d02cff6caebcf6989e565e05b55200'

* commit '52c9b0a6c0d02cff6caebcf6989e565e05b55200':
  aarch64: vp8: Port vp8_luma_dc_wht and vp8_idct_dc_add4uv from arm version

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'c513fcd7d235aa4cef45a6c3125bd4dcc03bf276'
James Almer [Thu, 14 Mar 2019 19:13:32 +0000 (16:13 -0300)]
Merge commit 'c513fcd7d235aa4cef45a6c3125bd4dcc03bf276'

* commit 'c513fcd7d235aa4cef45a6c3125bd4dcc03bf276':
  aarch64: vp8: Fix a typo in a comment

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'f1011ea28a4048ddec97794ca3e9901474fe055f'
James Almer [Thu, 14 Mar 2019 19:09:11 +0000 (16:09 -0300)]
Merge commit 'f1011ea28a4048ddec97794ca3e9901474fe055f'

* commit 'f1011ea28a4048ddec97794ca3e9901474fe055f':
  aarch64: vp8: Reorder the function pointer inits to match the arm original

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'b4b27dce95a6d40bfcd78043d3abec7d80dae143'
James Almer [Thu, 14 Mar 2019 19:07:59 +0000 (16:07 -0300)]
Merge commit 'b4b27dce95a6d40bfcd78043d3abec7d80dae143'

* commit 'b4b27dce95a6d40bfcd78043d3abec7d80dae143':
  aarch64: vp8: Move the vp8dsp makefile entries to the right places
  aarch64: vp8: Remove superfluous includes

This commit is a noop, see
fecf75a5c4f691d1e786992cf1dfa82e76ac1b97
c8bc9d1380dd686a4ee97d3415c976707904e945

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '85bfaa4949f4afcde19061def3e8a18988964858'
James Almer [Thu, 14 Mar 2019 19:06:43 +0000 (16:06 -0300)]
Merge commit '85bfaa4949f4afcde19061def3e8a18988964858'

* commit '85bfaa4949f4afcde19061def3e8a18988964858':
  aarch64: vp8: Use the proper aarch64 form for conditional branches

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '2eeac79936e83c4495cbe5905064ab797e9b45ff'
James Almer [Thu, 14 Mar 2019 19:06:19 +0000 (16:06 -0300)]
Merge commit '2eeac79936e83c4495cbe5905064ab797e9b45ff'

* commit '2eeac79936e83c4495cbe5905064ab797e9b45ff':
  aarch64: vp8: Fix assembling with armasm64
  aarch64: vp8: Fix assembling with clang

This commit is a noop, see
c950beb68dee016e0e0a1b729d40abf700d32d1a
7ddfa5e9083baec3f9608ec5257fc94a5ae9a3ef

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '0801853e640624537db386727b36fa97aa6258e7'
James Almer [Thu, 14 Mar 2019 19:01:39 +0000 (16:01 -0300)]
Merge commit '0801853e640624537db386727b36fa97aa6258e7'

* commit '0801853e640624537db386727b36fa97aa6258e7':
  libavcodec: vp8 neon optimizations for aarch64

See 833fed5253617924c41132e0ab261c1d8c076360

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit '899ee03088d55152a48830df0899887f055da1de'
James Almer [Thu, 14 Mar 2019 18:53:16 +0000 (15:53 -0300)]
Merge commit '899ee03088d55152a48830df0899887f055da1de'

* commit '899ee03088d55152a48830df0899887f055da1de':
  Unbreak travis on macos

Merged-by: James Almer <jamrial@gmail.com>
9 days agoMerge commit 'f8df5e2f31a5ba7b30a0e1caaaf5a03c753b3f9b'
James Almer [Thu, 14 Mar 2019 17:47:57 +0000 (14:47 -0300)]
Merge commit 'f8df5e2f31a5ba7b30a0e1caaaf5a03c753b3f9b'

* commit 'f8df5e2f31a5ba7b30a0e1caaaf5a03c753b3f9b':
  tests: Add a convenience function for video-only lavf tests

Merged-by: James Almer <jamrial@gmail.com>
10 days agotests: Convert lavf container tests with samples to non-legacy test scripts
James Almer [Thu, 14 Mar 2019 17:37:44 +0000 (14:37 -0300)]
tests: Convert lavf container tests with samples to non-legacy test scripts

10 days agoMerge commit '618d02c1fa9e74d490cace64a7d15762656b521c'
James Almer [Thu, 14 Mar 2019 17:36:24 +0000 (14:36 -0300)]
Merge commit '618d02c1fa9e74d490cace64a7d15762656b521c'

* commit '618d02c1fa9e74d490cace64a7d15762656b521c':
  tests: Convert lavf container tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
10 days agoMerge commit '896fe15dbb7b78de495c4a7dd75e7faec66778da'
James Almer [Thu, 14 Mar 2019 17:31:48 +0000 (14:31 -0300)]
Merge commit '896fe15dbb7b78de495c4a7dd75e7faec66778da'

* commit '896fe15dbb7b78de495c4a7dd75e7faec66778da':
  tests: Convert lavf pixfmt conversion tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
10 days agoMerge commit 'a957e9379d11f2982d615f92c30580a57ea8bb40'
James Almer [Thu, 14 Mar 2019 17:24:19 +0000 (14:24 -0300)]
Merge commit 'a957e9379d11f2982d615f92c30580a57ea8bb40'

* commit 'a957e9379d11f2982d615f92c30580a57ea8bb40':
  tests: Convert lavf image tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
10 days agoMerge commit 'eb8a8115994434b548523cf0bca6a4a74784e79c'
James Almer [Thu, 14 Mar 2019 17:19:03 +0000 (14:19 -0300)]
Merge commit 'eb8a8115994434b548523cf0bca6a4a74784e79c'

* commit 'eb8a8115994434b548523cf0bca6a4a74784e79c':
  tests: Convert audio-only lavf tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
10 days agoMerge commit 'a70eac7a9b193e8434b5bed90bd72aa4cb688363'
James Almer [Thu, 14 Mar 2019 17:04:55 +0000 (14:04 -0300)]
Merge commit 'a70eac7a9b193e8434b5bed90bd72aa4cb688363'

* commit 'a70eac7a9b193e8434b5bed90bd72aa4cb688363':
  tests: Convert image2pipe tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
10 days agoavcodec/dvbsubdec: Check object position
Michael Niedermayer [Tue, 5 Mar 2019 19:14:05 +0000 (20:14 +0100)]
avcodec/dvbsubdec: Check object position

Reference: ETSI EN 300 743 V1.2.1  7.2.2 Region composition segment

Fixes: Timeout
Fixes: 13325/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DVBSUB_fuzzer-5143979392237568

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
10 days agoavcodec/cdgraphics: Use ff_set_dimensions()
Michael Niedermayer [Tue, 5 Mar 2019 11:51:22 +0000 (12:51 +0100)]
avcodec/cdgraphics: Use ff_set_dimensions()

Fixes: Timeout (17 sec -> 65 milli sec)
Fixes: 13264/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CDGRAPHICS_fuzzer-5711167941509120

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
10 days agoavformat/gdv: Check fps
Michael Niedermayer [Mon, 4 Mar 2019 23:48:18 +0000 (00:48 +0100)]
avformat/gdv: Check fps

Fixes: Division by 0
Fixes: ffmpeg_zero_division.bin

Found-by: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
10 days agolibavcodec/zmbvenc: Add support for RGB formats
Matthew Fearnley [Thu, 7 Mar 2019 14:42:09 +0000 (14:42 +0000)]
libavcodec/zmbvenc: Add support for RGB formats

This consists mostly of the following changes:
- add newly supported pixel formats (RGB555LE, RGB565LE, BGR0)
- select the ZMBV format (c->fmt) and bytes per pixel (c->bypp) based on
  avctx->pix_fmt
- multiply widths/x-values by c->bypp, in places where bytes, not pixels, are
  expected
- disable palette-writing code for non-palette pix_fmts
- make a note about histogram[]'s datatype (it could need increasing if
  ZMBV_BLOCK is increased)
- adjust the c->score_tab length to take up to (and including) 4 times the
  number of pixels in a block
- initialise c->score_tab up to c->bypp * the number of pixels

Note: the ZmbvFormat enum allows for additional bit depths:
- 1,2,4-bit (palette)
- 24-bit (RGB)

At time of writing the specifics of these (e.g. channel order, bit alignment)
are not currently defined, and DOSBox only implements support for 8/15/16/32
bpp.
One might expect the 24-bit format - if implemented - to be BGR24, to have the
same channel order as BGR0.
However, the decoder in zmbv.c has been guessed to use RGB24, so I have chosen
to not contradict this, and omitted specific support for this format.

11 days agoavformat/rtpdec.h remove unused variable
Jun Li [Tue, 12 Mar 2019 21:26:22 +0000 (14:26 -0700)]
avformat/rtpdec.h remove unused variable

Looks like the variable 'cur_timestamp' is not used anywhere.
So remove this variable.

Signed-off-by: Jun Li <junli1026@gmail.com>
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
11 days agofate/mxf: add mxf user comments tests
Mark Reid [Mon, 11 Mar 2019 20:22:38 +0000 (13:22 -0700)]
fate/mxf: add mxf user comments tests

Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
11 days agoavformat/mxfenc: allow user comments for opatom muxer
Mark Reid [Mon, 11 Mar 2019 20:22:37 +0000 (13:22 -0700)]
avformat/mxfenc: allow user comments for opatom muxer

Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
11 days agoavcodec/libdav1d: unref the frame on failure
James Almer [Tue, 12 Mar 2019 22:45:10 +0000 (19:45 -0300)]
avcodec/libdav1d: unref the frame on failure

Signed-off-by: James Almer <jamrial@gmail.com>
11 days agolibdav1d: Add support for reading hdr10 metadata
Vittorio Giovara [Tue, 12 Mar 2019 22:36:30 +0000 (19:36 -0300)]
libdav1d: Add support for reading hdr10 metadata

Signed-off-by: James Almer <jamrial@gmail.com>
11 days agoavcodec/libdav1d: consistently use AVERROR return values
James Almer [Tue, 12 Mar 2019 22:18:14 +0000 (19:18 -0300)]
avcodec/libdav1d: consistently use AVERROR return values

Signed-off-by: James Almer <jamrial@gmail.com>
11 days agoavcodec/libdav1d: use a custom picture allocator
James Almer [Tue, 12 Mar 2019 22:11:19 +0000 (19:11 -0300)]
avcodec/libdav1d: use a custom picture allocator

Replaces the libdav1d internal allocator. It uses an AVBufferPool to reduce the
amount of allocated buffers.
About 5% speed up when decoding 720p or higher streams.

Reviewed-by: "Vittorio Giovara <vittorio.giovara@gmail.com>"
Signed-off-by: James Almer <jamrial@gmail.com>