ffmpeg.git
7 months 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>
7 months 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
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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().

7 months 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.

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

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

7 months 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.

7 months 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.

7 months 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.

7 months 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
7 months 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.

7 months 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

7 months 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.

7 months 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.

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

7 months 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

7 months 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

7 months 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>
7 months 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>
7 months 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.

7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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 months 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 months 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 months 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 months 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 months 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>
7 months 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

7 months 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>
7 months 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.

7 months 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.

7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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

7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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.

7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months 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>
7 months agoavcodec/libdav1d: move the pix_fmt enum array up in the file
James Almer [Tue, 12 Mar 2019 22:09:43 +0000 (19:09 -0300)]
avcodec/libdav1d: move the pix_fmt enum array up in the file

This is in preparation for the following commit.

Signed-off-by: James Almer <jamrial@gmail.com>
7 months agoavcodec/libdav1d: route dav1d internal logs through av_log()
James Almer [Fri, 1 Mar 2019 17:48:35 +0000 (14:48 -0300)]
avcodec/libdav1d: route dav1d internal logs through av_log()

Bump the minimum required version to the first one with the logger API callback.

Reviewed-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
7 months agoavcodec/mpeg4videodec: Check idx in mpeg4_decode_studio_block()
Michael Niedermayer [Sun, 10 Mar 2019 00:40:59 +0000 (01:40 +0100)]
avcodec/mpeg4videodec: Check idx in mpeg4_decode_studio_block()

Fixes: Out of array access
Fixes: 13500/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEG4_fuzzer-5769760178962432

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Kieran Kunhya <kierank@obe.tv>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 months agoavcodec/mpeg4videodec: Fix nonsense warning
Andreas Rheinhardt [Mon, 11 Mar 2019 10:32:05 +0000 (11:32 +0100)]
avcodec/mpeg4videodec: Fix nonsense warning

Since db772308941a2a338c7809f90d347219a6a93074 parsing of
mpeg4-extradata lead to a "Failed to parse extradata" warning, because
ff_mpeg4_decode_picture_header returns AVERROR_INVALIDDATA in case that
no VOP was found. This patch adds a parameter to signify whether a
header (where the absence of a VOP does not raise an error) or not is
parsed. The first mode is of course used for parsing headers.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 months agoMerge commit '5846b496f0a1dd5be4ef714622940674305ec00f'
James Almer [Mon, 11 Mar 2019 01:26:17 +0000 (22:26 -0300)]
Merge commit '5846b496f0a1dd5be4ef714622940674305ec00f'

* commit '5846b496f0a1dd5be4ef714622940674305ec00f':
  tests: Use a predefined function for lavf-rm test

Merged-by: James Almer <jamrial@gmail.com>
7 months agoMerge commit 'dad5fd59f3d6a8311365314cfcde0ebcd15c2b01'
James Almer [Mon, 11 Mar 2019 01:22:50 +0000 (22:22 -0300)]
Merge commit 'dad5fd59f3d6a8311365314cfcde0ebcd15c2b01'

* commit 'dad5fd59f3d6a8311365314cfcde0ebcd15c2b01':
  tests: Enable CRC test for yuv4mpeg

Merged-by: James Almer <jamrial@gmail.com>
7 months agoMerge commit '8629149816930a43bf5a66b11c6224446cabd044'
James Almer [Mon, 11 Mar 2019 01:17:25 +0000 (22:17 -0300)]
Merge commit '8629149816930a43bf5a66b11c6224446cabd044'

* commit '8629149816930a43bf5a66b11c6224446cabd044':
  tests: Drop duplicate variable declaration

This commit is a noop, as it breaks tests like fate-filter-pixfmts

Merged-by: James Almer <jamrial@gmail.com>
7 months agoMerge commit 'e22ffb3805f6994bd1fd7ab73e6297f36a53f915'
James Almer [Mon, 11 Mar 2019 00:15:38 +0000 (21:15 -0300)]
Merge commit 'e22ffb3805f6994bd1fd7ab73e6297f36a53f915'

* commit 'e22ffb3805f6994bd1fd7ab73e6297f36a53f915':
  tests: Unify output directory creation

Merged-by: James Almer <jamrial@gmail.com>
7 months agoMerge commit '7e5bde93a1e7641e1622814dafac0be3f413d79b'
James Almer [Sun, 10 Mar 2019 22:31:13 +0000 (19:31 -0300)]
Merge commit '7e5bde93a1e7641e1622814dafac0be3f413d79b'

* commit '7e5bde93a1e7641e1622814dafac0be3f413d79b':
  build: Rename OBJDIRS variable to OUTDIRS

Merged-by: James Almer <jamrial@gmail.com>
7 months agolavf/matroskaenc: Allow dvdsub remuxing from some containers.
Carl Eugen Hoyos [Sun, 10 Mar 2019 19:45:45 +0000 (20:45 +0100)]
lavf/matroskaenc: Allow dvdsub remuxing from some containers.

Fixes ticket #7783.

7 months agoavcodec/imm4: Unreference previous frame on frame size change
Michael Niedermayer [Sat, 9 Mar 2019 21:22:55 +0000 (22:22 +0100)]
avcodec/imm4: Unreference previous frame on frame size change

Fixes: Out of array access
Fixes: 13552/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_IMM4_fuzzer-5767949648920576

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>
7 months agoavcodec/nvenc: add minimum driver version for SDK 8.2 and 9.0
Timo Rothenpieler [Sat, 9 Mar 2019 23:25:31 +0000 (00:25 +0100)]
avcodec/nvenc: add minimum driver version for SDK 8.2 and 9.0

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
7 months agoavcodec/proresenc_aw : fix interlace encoding for unsafe height
Martin Vignali [Thu, 7 Mar 2019 23:06:01 +0000 (00:06 +0100)]
avcodec/proresenc_aw : fix interlace encoding for unsafe height

fix the call of the unsafe version of slice encoding in interlace mode
fix padding line count in sub image with fill in interlace mode

7 months agovf_showinfo: Fix timecode display
Kieran Kunhya [Thu, 24 Jan 2019 18:55:00 +0000 (18:55 +0000)]
vf_showinfo: Fix timecode display

7 months agoavcodec/dxv: Correct integer overflow in get_opcodes()
Michael Niedermayer [Sat, 2 Mar 2019 23:47:47 +0000 (00:47 +0100)]
avcodec/dxv: Correct integer overflow in get_opcodes()

Fixes: 13099/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DXV_fuzzer-5665598896340992
Fixes: signed integer overflow: 2147483647 + 7 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>
7 months agoavformat/mpegts: Simplify score compare
Michael Niedermayer [Sat, 9 Mar 2019 14:30:46 +0000 (15:30 +0100)]
avformat/mpegts: Simplify score compare

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 months agoavformat/mpegts: reduce buffering during initialization
Andriy Gelman [Sat, 9 Mar 2019 03:20:07 +0000 (22:20 -0500)]
avformat/mpegts: reduce buffering during initialization

Reduces buffering latency with low bitrate streams, where
8192 bytes can mean several seconds.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 months agolavf/deinterlace_qsv: set specific field for repeat
Linjie Fu [Fri, 8 Mar 2019 15:34:01 +0000 (23:34 +0800)]
lavf/deinterlace_qsv: set specific field for repeat

Set specific field for repeat in PicStruct if the frame has repeat
flag.

Match the CheckInputPicStruct in MSDK.

Fix #7701.

Signed-off-by: Linjie Fu <linjie.fu@intel.com>
Signed-off-by: Zhong Li <zhong.li@intel.com>
7 months agoAdd the Canon XF-HEVC UL to the picture essence container UL list
Matthew McKenna [Tue, 5 Mar 2019 04:25:05 +0000 (23:25 -0500)]
Add the Canon XF-HEVC UL to the picture essence container UL list

7 months agolavfi/tonemap: make use of AVFILTER_DEFINE_CLASS
Jun Zhao [Tue, 5 Mar 2019 11:14:33 +0000 (19:14 +0800)]
lavfi/tonemap: make use of AVFILTER_DEFINE_CLASS

use AVFILTER_DEFINE_CLASS for defining the filter classes

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
7 months agolavfi/zscale: make use of AVFILTER_DEFINE_CLASS
Jun Zhao [Tue, 5 Mar 2019 11:10:06 +0000 (19:10 +0800)]
lavfi/zscale: make use of AVFILTER_DEFINE_CLASS

use AVFILTER_DEFINE_CLASS for defining the filter classes

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
7 months agoavcodec/g723_1dec: actually decode second channel
Paul B Mahol [Thu, 7 Mar 2019 00:58:43 +0000 (01:58 +0100)]
avcodec/g723_1dec: actually decode second channel

7 months agoavcodec/imm4: fix artifacts on some files with special coding mode
Paul B Mahol [Thu, 7 Mar 2019 00:38:26 +0000 (01:38 +0100)]
avcodec/imm4: fix artifacts on some files with special coding mode

7 months agoavcodec/scpr: Fix use of uninitialized variable
Michael Niedermayer [Wed, 27 Feb 2019 23:12:14 +0000 (00:12 +0100)]
avcodec/scpr: Fix use of uninitialized variable

Fixes: Undefined shift
Fixes: 12911/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SCPR_fuzzer-5677102915911680

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 months agoavcodec/imm4: add support for mid-stream size changes
Paul B Mahol [Fri, 1 Mar 2019 14:01:17 +0000 (15:01 +0100)]
avcodec/imm4: add support for mid-stream size changes