Commit Graph

41005 Commits

Author SHA1 Message Date
Jun Zhao
b87063c06d lavc/libaomenc: Add a maximum constraint of 64 encoder threads.
fixed the error in Intel(R) Xeon(R) Gold 6152 CPU like:
[libaom-av1 @ 0x469f340] Failed to initialize encoder: Invalid parameter
[libaom-av1 @ 0x469f340]   Additional information: g_threads out of range [..MAX_NUM_THREADS]

Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-29 21:37:49 -03:00
James Almer
e695b0beba avcodec/libdav1d: add an option to toggle Film Grain
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-28 23:05:10 -03:00
James Almer
0fca2f60da avcodec/libdav1d: read profile from the sequence header referenced by the ouput picture
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-28 23:04:22 -03:00
James Almer
3cd275bcde avcodec/libdav1d: use constants defined in the public API to limit thread count
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-28 23:04:21 -03:00
James Almer
53ca505acc avcodec/libdav1d: remove init cleanup internal codec cap
It's no longer needed now that the AVFifoBuffer was removed.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-28 23:04:03 -03:00
Rostislav Pehlivanov
ffec9d32fe Revert "libopus: Add channel mapping 2 support in libopusdec"
This reverts commit c8c995bc1d.
2018-11-28 23:54:08 +00:00
Rostislav Pehlivanov
cf283f2dfb Revert "avcodec/libopusenc: Fix warning when encoding ambisonics with channel mapping 2"
This reverts commit 4cd6f08d20.
2018-11-28 23:53:51 +00:00
Felicia Lim
4cd6f08d20 avcodec/libopusenc: Fix warning when encoding ambisonics with channel mapping 2
Also adds checks on the number of channels.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-29 00:07:35 +01:00
Paul B Mahol
68f289dacd avcodec/opus: check if internal is available 2018-11-28 20:29:23 +01:00
Paul B Mahol
18aea7bdd9 avcodec/opus: set skip_samples
Also update fate test. Fixes #5258.
2018-11-28 10:26:07 +01:00
Michael Niedermayer
28c96c2ce2 avcodec/diracdec: Check component quant
Fixes: Timeout
Fixes: 10708/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DIRAC_fuzzer-5730140957442048

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-27 14:38:03 +01:00
Michael Niedermayer
a036c25969 avcodec/tiff: Fix integer overflows in left shift in init_image()
Fixes: left shift of 255 by 24 places cannot be represented in type 'int'
Fixes: 11377/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5694319101476864

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-27 02:56:36 +01:00
Carl Eugen Hoyos
5a7617136a lavc/jrevdct: Avoid an aliasing violation.
Fixes fate on different PowerPC systems with some compilers.

Analyzed-by: Lauri Kasanen
2018-11-27 01:16:28 +01:00
James Almer
2ddaaaf595 avcodec/libaomenc: increase the default bitrate
aom_codec_enc_config_default() sets it to 256kbps, so don't replace
it with 200kbps.

See https://bugs.chromium.org/p/aomedia/issues/detail?id=2219

Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-26 19:08:45 -03:00
Michael Niedermayer
90ac0e5f29 avcodec/tiff: Limit filtering to decoded data
Fixes: Timeout
Fixes: 11068/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5698456681709568

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-26 02:56:31 +01:00
James Almer
cc25529420 avcodec/libdav1d: update the API usage after upstream changes
The color fields were moved to another struct, and a way to propagate
timestamps and other input metadata was introduced, so the packet fifo
can be removed.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-25 21:42:10 -03:00
Paul B Mahol
7488d58436 avcodec/eac3dec: remove obsolete comment 2018-11-25 21:41:40 +01:00
Limin Wang
370b8bd847 libavcodec/libdavs2.c: Fix for the wrong line size is used
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2018-11-25 14:01:22 +08:00
Michael Niedermayer
2ae39d7956 avcodec/truemotion2: fix integer overflows in tm2_low_chroma()
Fixes: 11295/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEMOTION2_fuzzer-4888953459572736

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-24 22:12:10 +01:00
Paul B Mahol
0279cb4f69 avcodec: add truehd_core bitstream filter 2018-11-23 22:03:56 +01:00
Andreas Rheinhardt
e895b800fe cbs_h2645: Avoid memcpy when splitting fragment
Now memcpy is avoided for NAL units that don't contain 0x03 escape
characters.

Improves performance of cbs_h2645_fragment_add_nals from 36940
decicycles to 6364 decicycles based on 8 runs with a 5.1 Mb/s H.264
sample (262144 runs each).

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-11-22 23:19:17 +00:00
Michael Niedermayer
77bf85515e avcodec/truemotion2: Check huffman code max bits
Fixes: Timeout
Fixes: 10984/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEMOTION2_fuzzer-6643310750859264

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-21 00:33:38 +01:00
Marton Balint
e3a9630982 avcodec/mpeg_er: fix clearing chroma blocks for 422 and 444
Fixes ticket #7494.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-11-19 22:11:43 +01:00
James Zern
e1f895838d libvpxenc,cosmetics: fix { placement
Signed-off-by: James Zern <jzern@google.com>
2018-11-19 11:38:34 -08:00
Ard Oerlemans
95107af314 avcodec/libvpxenc: add VP8 temporal scalability config options
This commit adds configuration options to libvpxenc.c that can be used to
enable VP8 temporal scalability. It also adds a way to programmatically set the
per-frame encoding flags which can be used to control usage and updates of
reference frames while encoding with temporal scalability enabled.

Signed-off-by: James Zern <jzern@google.com>
2018-11-19 11:33:43 -08:00
Mark Thompson
e3991a5a45 libaomenc: Drop unused noise-sensitivity option 2018-11-18 22:07:42 +00:00
Paul B Mahol
a064530da8 avcodec/scpr: add version 3 support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-11-18 22:59:29 +01:00
Mark Thompson
80ce23da65 vaapi_encode_h265: Reduce SAR to valid range
Matching previous commit for H.264.
2018-11-18 21:34:18 +00:00
Mark Thompson
a830056b32 vaapi_encode_h264: Reduce SAR to valid range
The SAR of the input could have a numerator or denominator greater than
2^16 which would then be truncated to a 16-bit integer when written to
the VUI parameters, giving a random result.  Instead, reduce the SAR to
the nearest representable fraction.

Fixes #7502.
2018-11-18 21:34:04 +00:00
Andreas Rheinhardt
40b74abfca h264_redundant_pps: Fix memleak in case of errors
Now the fragment is uninitialized and the input packet freed in case of
errors.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-11-18 21:18:36 +00:00
James Almer
96717a4271 avcodec/cbs_av1: don't abort when splitting Temporal Units containing OBUs with no obu_size field
The ISOBMFF and Matroska specs allow the last OBU in a Sample/Block to have
obu_has_size_field equal to 0.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-18 16:16:02 -03:00
hwren
31b79e0210 lavc/libdavs2: correct frame type setting
Signed-off-by: hwren <hwrenx@126.com>
2018-11-18 18:55:10 +00:00
hwren
b75afd25ba lavc/libdavs2: remove unused frame counter
Signed-off-by: hwren <hwrenx@126.com>
2018-11-18 18:55:10 +00:00
Mark Thompson
b674357020 vaapi_encode: Improve log message for unsupported profiles 2018-11-18 18:22:07 +00:00
Mark Thompson
7ba63695b7 mjpegdec: Fill raw huffman tables with default values too
These may be used by hwaccel decoders when the standard tables are not
otherwise available.  At the same time, clean up that code into an array
so it's a little less repetitive.
2018-11-18 17:40:24 +00:00
Mark Thompson
7a20656474 cbs_h265: Add a lot more SEI parsing support
Supports both prefix and suffix SEI, decoding all of the common SEI
types and some more obscure ones.  Most of this is tested by the
existing tests in fate.
2018-11-18 17:33:26 +00:00
Michael Niedermayer
1f99674ddd avcodec/pngdec: Check compression method
method 0 (inflate/deflate) is the only specified in the specification and the only supported

Fixes: Timeout
Fixes: 10976/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PNG_fuzzer-5729372588736512

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-16 10:13:42 +01:00
Chirag Lathia
d6b1248fc6 avcodec/libvpxenc: Add a maximum constraint of 16 encoder threads.
Signed-off-by: Chirag Lathia <clathia@google.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-15 21:25:53 -03:00
Philip Langdale
19d3d0c057 avutil/hwcontext_cuda: Define and use common CHECK_CU()
We have a pattern of wrapping CUDA calls to print errors and
normalise return values that is used in a couple of places. To
avoid duplication and increase consistency, let's put the wrapper
implementation in a shared place and use it everywhere.

Affects:

* avcodec/cuviddec
* avcodec/nvdec
* avcodec/nvenc
* avfilter/vf_scale_cuda
* avfilter/vf_scale_npp
* avfilter/vf_thumbnail_cuda
* avfilter/vf_transpose_npp
* avfilter/vf_yadif_cuda
2018-11-14 17:39:42 -08:00
James Almer
f0f2832a5c avcodec/cbs_av1: fix parsing signed integer values
Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-14 20:48:30 -03:00
James Almer
79831f4531 avcodec/cbs_av1: fix storage size for segmentation_params feature_value fields
The valid range is -255 to 255.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-14 20:48:29 -03:00
James Almer
752659327d avcodec/libdav1d: fix build after a recent API break
Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-14 10:05:25 -03:00
Paul B Mahol
759589b55e avcodec/huffyuvenc: add support for gbrp16 2018-11-14 09:29:18 +01:00
Michael Niedermayer
2f888771cd avcodec/shorten: Fix integer overflow with offset
Fixes: signed integer overflow: -1625810908 - 582229060 cannot be represented in type 'int'
Fixes: 10977/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SHORTEN_fuzzer-5732602018267136

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-13 22:28:27 +01:00
Michael Niedermayer
6b4c9854da avcodec/golomb: Speed up long ur_golomb codes
Fixes: Timeout
Fixes: 10972/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FLAC_fuzzer-5707569640243200

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-13 22:28:12 +01:00
Andreas Rheinhardt
3c9c9b1568 h264_metadata: Don't use inferred value of buffering frames
Using the value of buffering frames inferred from the old level is
not a sensible approach when one wants to guess the level.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-11-13 21:12:28 +00:00
Andreas Rheinhardt
959521b58d h264_levels, h264_metadata_bsf: Fix levels typo
profile_idc for level 1b should be 11, not 10.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-11-13 21:03:00 +00:00
Martin Vignali
13ee107afd avcodec/prores_metadata_bsf : fix colorspace check
Report by coverity
CID 1441165
2018-11-13 11:39:14 +01:00
Tobias Rapp
7992c2867e avcodec/libopenh264enc: fix class_name
Reverts some accidental change in commit e621b1ca64.

Reviewed-by: Jan Ekström <jeebjp@gmail.com>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-11-13 08:16:22 +01:00
Akemi
233cd89056 lavc/videotoolbox: Fix cropping with HEVC and H264 videos
videotoolbox returns an already cropped stream which led to double
cropping. this issue was introduced with the refactor of the cropping
mechanism in commit 07596e4 for h264 and 000fb61 for HEVC.

to fix this we set the cropping of the frame and the output frame to 0.

Tested-by: ponpon
Fixes ticket #7544.
2018-11-12 12:32:17 +01:00