Peter Ross
e8aec714d3
avcodec/siren: replace magic numbers with macro value
...
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Peter Ross <pross@xvid.org >
2021-09-09 18:38:16 +10:00
Adam Chelminski
715f63232f
avcodec/libvpxenc: Apply codec options to alpha codec context
...
When encoding yuva420 (alpha) frames, the vpx encoder uses a second
vpx_codec_ctx to encode the alpha stream. However, codec options were
only being applied to the primary encoder. This patch updates
codecctl_int and codecctl_intp to also apply codec options to the alpha
codec context when encoding frames with alpha.
This is necessary to take advantage of libvpx speed optimizations
such as 'row-mt' and 'cpu-used' when encoding videos with alpha.
Without this patch, the speed optimizations are only applied to the
primary stream encoding, and the overall encoding is just as slow
as it would be without the options specified.
Signed-off-by: Adam Chelminski <chelminski.adam@gmail.com >
Signed-off-by: James Zern <jzern@google.com >
2021-09-08 18:48:00 -07:00
Andreas Rheinhardt
41751e4aef
avcodec/iirfilter: Make ff_iir_filter_flt() static
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
854f7bab5a
avcodec/snow_dwt: Make ff_snow_(horizont|vertic)al_compose97i static
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
faa62773cb
avcodec/jpeg2000: Make ff_tag_tree_size() static
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
fc9cb7d51a
avcodec/mqcenc: Make ff_mqc_flush() static
...
Only used as an auxiliary function for ff_mqc_flush_to() since
4624656797 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
25394eb72e
avcodec/qsv: Make ff_qsv_map_error() static
...
It is only an auxiliary function to ff_qsv_print_(error|warning)().
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
029bfc3501
avcodec/h263dec: Make ff_h263_hw_config_list static
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
fd43b868e1
avcodec/cbs: Make ff_cbs_alloc_unit_data() static
...
Forgotten in 7c92eaace2 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
97bc4695fb
avcodec/bsf: ff_list_bsf static
...
It is a special BSF that is only available via the av_bsf_list-API;
it is not part of the list generated from the declarations in
bitstream_filters.c and therefore needn't have external linkage.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Artem Galin
776d5a7472
libavcodec/qsv: enabling d3d11va support, added mfxhdlpair
...
Adding DX11 relevant device type checks and adjusting callbacks with
proper MediaSDK pair type support.
Extending structure for proper MediaSDK pair type support.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:42:52 -03:00
Michael Niedermayer
2d36d2fbd7
avcodec/h264_parser: Fix nalsize check
...
Fixes: Assertion failure
Fixes: 37463/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-4914693494931456
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2021-09-08 20:14:00 +02:00
Paul B Mahol
9e33572b3d
avcodec/mlpenc: simplify some complicated expressions more
2021-09-07 18:16:13 +02:00
Paul B Mahol
1cbd4b00b1
avcodec/mlpenc: simplify strange pointer initializations
2021-09-07 18:16:13 +02:00
Paul B Mahol
5d92b73c64
avcodec/mlpdec: fix integer sanitizer warning under clang
...
Fixes:
libavcodec/mlpdec.c:1108:37: runtime error: negation of 1 cannot be represented in type 'unsigned int'
2021-09-07 18:16:13 +02:00
Peter Ross
c655a734b1
avcodec/siren: MSN Siren decoder
...
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Peter Ross <pross@xvid.org >
2021-09-07 18:07:11 +10:00
Paul B Mahol
b9426f371a
avcodec/mlpenc: remove convoluted incomplete multiple substreams support code
...
It is very hard to follow data structures indirections in current code,
so just remove it for now.
2021-09-07 00:18:33 +02:00
Paul B Mahol
e811b0080e
avcodec/mlpenc: use variables local to for loops
2021-09-07 00:18:33 +02:00
Limin Wang
75001ae844
avcodec/nvenc: add constrainedFrame encoding support
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com >
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org >
2021-09-06 14:25:26 +02:00
Limin Wang
3756525a59
avcodec/nvenc: add single slice intra refresh support
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com >
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org >
2021-09-06 14:13:00 +02:00
Limin Wang
e6bd5171ac
avcodec/nvenc: add intra refresh support
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com >
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org >
2021-09-06 14:12:57 +02:00
Limin Wang
85489e0308
avcodec/nvenc: make number of slices per frame configurable
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com >
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org >
2021-09-06 13:33:53 +02:00
Michael Niedermayer
3c659f8618
avcodec/jpeg2000dec: Check that atom header is within bytsetream
...
Fixes: Infinite loop
Fixes: 36666/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5912760671141888
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 >
2021-09-05 22:22:27 +02:00
Michael Niedermayer
33feb527ff
avcodec/apedec: Fix 2 integer overflows in filter_3800()
...
Fixes: signed integer overflow: 1683879955 - -466265224 cannot be represented in type 'int'
Fixes: 37419/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_APE_fuzzer-6074294407921664
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 >
2021-09-05 22:22:27 +02:00
Michael Niedermayer
e58692837c
avcodec/xpmdec: Move allocations down after more error checks
...
Fixes: Timeout
Fixes: 37035/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_XPM_fuzzer-5142718576721920
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 >
2021-09-05 22:22:05 +02:00
Michael Niedermayer
26659fe53e
avcodec/argo: Move U, fix shift
...
Fixes: left shift of 255 by 24 places cannot be represented in type 'int'
Fixes: 37249/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ARGO_fuzzer-5754862984888320
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 >
2021-09-05 22:22:05 +02:00
Paul B Mahol
0c87b43c6c
avcodec/mlp: move sync defines to common header
2021-09-05 18:12:56 +02:00
Paul B Mahol
3ea0171ea3
avcodec/mlpenc: remove frame_size array from private context
...
It is supposed to be used with different bit depth and/or sample rates
per each substream, but such currently not implemented feature is not
important and current state causes problems when implementing variable
restart interval to fix decoding with sample rates not multiple of 40.
2021-09-05 16:08:19 +02:00
Paul B Mahol
5852bb6b4b
avcodec/mlpenc: stop using hardcoded value
2021-09-05 15:02:39 +02:00
Paul B Mahol
ac29cec312
avcodec/mlpenc: use av_shrink_packet()
2021-09-05 14:09:50 +02:00
Paul B Mahol
cfc491bf44
avcodec/mlpenc: remove no more needed goto
2021-09-05 14:09:50 +02:00
Paul B Mahol
4ca9877b91
avcodec/mlpenc: fix removal of packet timestamp/size from queue
2021-09-05 12:15:34 +02:00
Paul B Mahol
d8863013a8
avcodec/mlpenc: remove not needed buf_size checks
2021-09-05 11:44:50 +02:00
Paul B Mahol
85b9b96957
avcodec/mlpenc: fix indentation
2021-09-05 11:44:50 +02:00
Paul B Mahol
036d94da43
avcodec/mlpenc: stop returning packets with no data
2021-09-05 11:44:50 +02:00
Paul B Mahol
589cd58c85
avcodec/mlpenc: simplify compare_best_offset()
2021-09-05 00:28:40 +02:00
Paul B Mahol
5b28a5db03
avcodec/mlpenc: use ff_ctz()
2021-09-05 00:11:40 +02:00
Paul B Mahol
d18b445689
avcodec/mlpenc: remove unused item
2021-09-05 00:09:55 +02:00
Paul B Mahol
19b52a7cc4
avcodec/mlpenc: remove log messages when allocation fails at init
2021-09-04 14:46:40 +02:00
Paul B Mahol
30c213fa6c
avcodec/mlpenc: allocate filter buffers once at init
2021-09-04 14:46:40 +02:00
Paul B Mahol
57988fc496
avcodec/mlpenc: simplify allocations in mlp_encode_init()
2021-09-04 14:46:40 +02:00
Andreas Rheinhardt
bc75fb5423
avcodec/omx: Reindentation
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:04:22 +02:00
Andreas Rheinhardt
5c0e2f839a
avcodec/omx: Check initializing mutexes/conditions
...
The earlier code did not properly check these initializations:
It only recorded whether the part of init where these initializations
are has been reached, but it did not check whether the initializations
were successful, although destroying them would be undefined behaviour
if they had not been initialized successfully.
Furthermore cleanup() always locked a mutex regardless of whether there
was any attempt to initialize these mutexes at all.
Reviewed-by: Martin Storsjö <martin@martin.st >
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:04:04 +02:00
Andreas Rheinhardt
16fc8cef74
avcodec/frame_thread_encoder: Mark init and free functions as av_cold
...
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:33 +02:00
Andreas Rheinhardt
5f6fcb0395
avcodec/frame_thread_encoder: Return proper error codes
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:33 +02:00
Andreas Rheinhardt
f1847dbc1f
avcodec/frame_thread_encoder: Don't shadow variables
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:33 +02:00
Andreas Rheinhardt
2e574235b0
avcodec/frame_thread_encoder: Reindent after the previous commit
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:33 +02:00
Andreas Rheinhardt
754b8454b7
avcodec/frame_thread_encoder: Check initializing mutexes/conditions
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:33 +02:00
Andreas Rheinhardt
95b681eafd
avcodec/vp9: Remove vp9_free_entries()
...
Now that the mutexes and conditions are only initialized and destroyed
once, said function only had one purpose: free the entries array.
Given that vp9_alloc_entries() already does this if the array is already
allocated it is unnecessary to call vp9_free_entries() anywhere except
when closing. And then one can just inline the one free into
vp9_decode_free().
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:33 +02:00
Andreas Rheinhardt
b0ee627ef9
avcodec/vp9: Use av_freep() instead of av_free()
...
Otherwise the context would be in an inconsistent state
if vp9_alloc_entries() failed (and if this would be checked).
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-04 08:03:19 +02:00