Paul B Mahol
cd4e6e404b
avfilter/vf_extractplanes: fix regression
...
Report & solution provided by Andreas Rheinhardt.
2021-09-12 17:06:21 +02:00
Niklas Haas
a543d075cd
avcodec/h274: trim unnecessarily large array
...
We only ever read to idx+3, so 256 values are overkill.
Signed-off-by: James Almer <jamrial@gmail.com >
2021-09-12 11:07:40 -03:00
Niklas Haas
52c35d648c
avcodec/h274: don't read from uninitialized array members
...
This bug flew under the radar because, in practice, these values are
0-initialized for the first invocation. But for subsequent invocations
(with different h/v values), reading from the uninitialized parts of
`out` is undefined behavior.
Avoid this by simply adjusting the iteration range of the following
loops. Has the added benefit of being a minor speedup.
Signed-off-by: James Almer <jamrial@gmail.com >
2021-09-12 11:07:40 -03:00
Paul B Mahol
c4973e2148
avfilter/vf_xfade: check default switch case
2021-09-12 15:06:08 +02:00
Paul B Mahol
1db828db8b
avfilter/vf_xfade: add zoomin transition
2021-09-12 15:01:48 +02:00
Paul B Mahol
b35653d4c4
avfilter/vf_extractplanes: stop marking alphaextract filter as dynamic outputs
2021-09-12 13:50:01 +02:00
Paul B Mahol
882045f3dd
avfilter/af_afftfilt: reindent after last commit
2021-09-12 13:28:12 +02:00
Paul B Mahol
485a52e618
avfilter/af_afftfilt: add timeline support
2021-09-12 13:28:12 +02:00
Paul B Mahol
94d4cc24c3
avfilter/af_asoftclip: rewrite oversampling
...
Fixes most aliasing issues.
2021-09-12 12:55:50 +02:00
Paul B Mahol
3e127b595a
avfilter/vf_fieldmatch: initialize dst pointer to silence warning
2021-09-11 22:19:25 +02:00
Paul B Mahol
bf0f996c12
avfilter/f_segment: silence compiler warning
2021-09-11 22:19:25 +02:00
Paul B Mahol
0a8a0c96ae
avfilter/f_loop: initialize ret to silence compiler warning
2021-09-11 22:19:25 +02:00
Paul B Mahol
d460a5f8ba
avfilter/af_arnndn: initialize ret to silence compiler warning
2021-09-11 22:19:25 +02:00
Paul B Mahol
533ddd61e5
avfilter/af_afftdn: move i initialization to silence warning
2021-09-11 22:19:25 +02:00
Paul B Mahol
b53f9c5e68
avfilter/af_apsyclip: fix mixed declarations and code
2021-09-11 21:47:49 +02:00
Paul B Mahol
eeab62ad2d
avfilter: add audio psychoacoustic clipper
2021-09-11 16:19:40 +02:00
Paul B Mahol
966fc3c070
avfilter/af_astats: add entropy stat
2021-09-11 10:54:20 +02:00
Paul B Mahol
463c71b3b3
avfilter/vf_convolution: add scharr operator
2021-09-10 18:43:51 +02:00
Paul B Mahol
0b4d009587
fate: fix silenceremove test
2021-09-09 23:45:52 +02:00
Paul B Mahol
abd24eaf68
avfilter/af_silenceremove: fix regression in output frame pts
2021-09-09 20:22:02 +02:00
Xu Guangxin
3bbe0c210b
avcodec/qsv_enc: do not reuse enc_ctrl from previous frames
...
fixes #8857
If we do not clear the enc_ctrl, we will reuse previous frames' data like FrameType.
Reviewed-by: Xiang, Haihao <haihao.xiang@intel.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2021-09-09 12:53:25 -03:00
Andreas Rheinhardt
bb9141cc13
avcodec/mlpenc: Fix mixed declarations and code warning
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-09 12:07:06 +02:00
Peter Ross
20f9cfb3e3
avcodec/siren: decode_vector: remove unused parameter
...
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Peter Ross <pross@xvid.org >
2021-09-09 18:38:16 +10:00
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
3008a93b4d
avformat/rtpdec: Make ff_rtp_handler_iterate() static
...
Possible since 6197453761 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
cd3d7b0f8f
avformat/rawdec: Make ff_raw_data_read_header() static
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02:00
Andreas Rheinhardt
49916dafb9
avformat/mov_chan: Make ff_mov_get_channel_layout() static
...
Possible since 3bab7cd128 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2021-09-08 22:59:14 +02: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
Paul B Mahol
7b523a06d0
avformat/dhav: use frame number if timestamp difference is zero
2021-09-08 22:54:55 +02:00
Artem Galin
19a17388d8
libavfilter/vf_deinterlace_qsv: enabling d3d11va support, added mfxhdlpair
...
Adding DX11 relevant device type checks and adjusting callback with
proper MediaSDK pair type support.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:48:32 -03:00
Artem Galin
c1cebaa4c4
libavfilter/vf_scale_qsv: add MFX_MEMTYPE_FROM_VPPOUT flag to frame_type
...
In case of DX11 device type, Media SDK is sensitive to these flags.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:48:32 -03:00
Artem Galin
46c6946eee
libavfilter/vf_scale_qsv: enabling d3d11va support, added mfxhdlpair
...
Adding DX11 relevant device type checks and adjusting callback with
proper MediaSDK pair type support.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:48:32 -03:00
Artem Galin
36166cc304
libavfilter/qsvvpp: add MFX_MEMTYPE_FROM_VPPOUT flag to output frames
...
In case of DX11 device type, Media SDK is sensitive to these flags.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:48:32 -03:00
Artem Galin
a611c35001
libavfilter/qsvvpp: enabling d3d11va support, added mfxhdlpair
...
Adding DX11 relevant device type checks and adjusting callback with
proper MediaSDK pair type support.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:48:32 -03:00
Artem Galin
4f78711f9c
libavutil/hwcontext_d3d11va: adding more texture information to the D3D11 hwcontext API
...
Microsoft VideoProcessor requires texture with D3DUSAGE_RENDERTARGET flag as output.
There is no way to allocate array of textures with D3D11_BIND_RENDER_TARGET flag
and .ArraySize > 2 by ID3D11Device_CreateTexture2D due to the Microsoft limitation.
Adding AVD3D11FrameDescriptors array to store array of single textures
instead of texture with multiple slices resolves this.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:48:02 -03:00
Artem Galin
f1cd1dc6ce
libavutil/hwcontext_qsv: add usage child_device_type argument to explicitly select d3d11va/DX11 device type
...
UPD: Rebase of last patch set over current master and use DX9 as default device type.
Makes selection of dxva2/DX9 device type by default as before with explicit d3d11va/DX11 usage to cover more HW configurations.
Added warning message to expect changing default device type in the future.
Fixes TGL / AV1 decode as requires DX11 with explicit DX11 type
selection.
Add headless/multi adapter support and fixes:
https://trac.ffmpeg.org/ticket/7511
https://trac.ffmpeg.org/ticket/6827
http://ffmpeg.org/pipermail/ffmpeg-trac/2017-November/041901.html
https://trac.ffmpeg.org/ticket/7933
https://github.com/InitialForce/FFmpeg/commit/338fbcd5bba1de0e1b3e3bad8985eee2fdfbeca1
https://github.com/jellyfin/jellyfin/issues/2626#issuecomment-602153952
Any other fixes are welcome including OpenCL interop patch since I don't have proper setup to validate this use case
Decoding, encoding, transcoding have been validated.
child_device_type option is responsible for d3d11va/dxva2 device selection
Usage examples:
DirectX 11:
-init_hw_device qsv:hw,child_device_type=d3d11va
-init_hw_device qsv:hw,child_device_type=d3d11va,child_device=0
OR
-init_hw_device d3d11va=dx -init_hw_device qsv@dx
DirectX 9 is still supported but requires explicit selection:
-init_hw_device qsv:hw,child_device_type=dxva2
OR
-init_hw_device dxva2=dx -init_hw_device qsv@dx
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:42:53 -03:00
Artem Galin
a08a5299ac
libavutil/hwcontext_qsv: supporting d3d11va device type
...
This enables usage of non-powered/headless GPU, better HDR support.
Pool of resources is allocated as one texture with array of slices.
Signed-off-by: Artem Galin <artem.galin@intel.com >
2021-09-08 17:42:53 -03: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
Paul B Mahol
3df55c7bd6
avfilter/af_speechnorm: add timeline support
2021-09-08 22:13:26 +02:00
Paul B Mahol
5db1e07a62
avfilter/af_speechnorm: check return value of av_frame_make_writable()
2021-09-08 21:44:54 +02:00
Paul B Mahol
ccd95cb248
avfilter/af_speechnorm: use floats in place of doubles where it is already float used
2021-09-08 21:44:54 +02: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