- Jan 07, 2022
-
-
Michael Niedermayer authored
Fixes: signed integer overflow: 1074134419 - -1075212485 cannot be represented in type 'int' Fixes: 43273/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_APE_fuzzer-4706880883130368 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Andreas Rheinhardt authored
In this case ff_isom_put_dvcc_dvvc() might not be available, leading to linking failures. Given that WebM currently doesn't support DOVI, this is fixed by #if'ing the offending code away if the Matroska muxer is not enabled. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Andreas Rheinhardt authored
Reviewed-by:
Zane van Iperen <zane@zanevaniperen.com> Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Andreas Rheinhardt authored
Reviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Andreas Rheinhardt authored
Reviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Wenbin Chen authored
Add doc for qsv decoder. Add more option's introduction to qsv encoder. Signed-off-by:
Wenbin Chen <wenbin.chen@intel.com> Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Fei Wang authored
Split packed data in case of its contains multiple show frame in some non-standard bitstream. This can benefit decoder which can decode continuously instead of interrupt with unexpected error. Signed-off-by:
Fei Wang <fei.w.wang@intel.com> Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Cameron Gutman authored
Signed-off-by:
Cameron Gutman <aicommander@gmail.com> Signed-off-by:
Aman Karmani <aman@tmm1.net>
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
- Jan 06, 2022
-
-
Andreas Rheinhardt authored
Most users only want to either read or write golomb codes, not both. By splitting these headers one avoids having unnecesssary (get|put)_hits.h inclusions. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Andreas Rheinhardt authored
Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Andreas Rheinhardt authored
Forgotten in 555f5c1f. Reviewed-by:
Zane van Iperen <zane@zanevaniperen.com> Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
- Jan 05, 2022
-
-
Andreas Rheinhardt authored
This fixes compilation errors in case nvenc is enabled (e.g. autodected) with both nvenc-based encoders disabled because nvenc uses ff_alloc_a53_sei(), yet only the nvenc-based encoders require atsc_a53. (This error does not manifest itself in case of static linking (nothing pulls in nvenc.o), but it exists with shared builds.) Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com> Signed-off-by:
Timo Rothenpieler <timo@rothenpieler.org>
-
Wu Jianhua authored
This commit adds a blend_vulkan filter and a normal blend mode, and reserves support for introducing the blend modes in the future. Use the commands below to test: (href: https://trac.ffmpeg.org/wiki/Blend ) I. make an image for test ffmpeg -f lavfi -i color=s=256x256,geq=r='H-1-Y':g='H-1-Y':b='H-1-Y' -frames 1 \ -y -pix_fmt yuv420p test.jpg II. blend in sw ffmpeg -i test.jpg -vf "split[a][b];[b]transpose[b];[a][b]blend=all_mode=normal,\ pseudocolor=preset=turbo" -y normal_sw.jpg III. blend in vulkan ffmpeg -init_hw_device vulkan -i test.jpg -vf "split[a][b];[b]transpose[b];\ [a]hwupload[a];[b]hwupload[b];[a][b]blend_vulkan=all_mode=normal,hwdownload,\ format=yuv420p,pseudocolor=preset=turbo" -y normal_vulkan.jpg Signed-off-by:
Wu Jianhua <jianhua.wu@intel.com>
-
Wu Jianhua authored
Signed-off-by:
Wu Jianhua <jianhua.wu@intel.com>
-
Andreas Rheinhardt authored
Forgotten in 3cc3f5de. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Wu Jianhua authored
This commit fixed hwupload in Vulkan: ffmpeg -init_hw_device vulkan -i test.jpg -vf hwupload,hwdownload,format=yuv420p -y out.jpg Signed-off-by:
Wu Jianhua <jianhua.wu@intel.com>
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
Zane van Iperen authored
Suggested-By:
Pierre-Anthony Lemieux <pal@palemieux.com> Signed-off-by:
Zane van Iperen <zane@zanevaniperen.com>
-
Pierre-Anthony Lemieux authored
Signed-off-by:
Pierre-Anthony Lemieux <pal@palemieux.com> Signed-off-by:
Zane van Iperen <zane@zanevaniperen.com>
-
Pierre-Anthony Lemieux authored
Signed-off-by:
Pierre-Anthony Lemieux <pal@palemieux.com> Signed-off-by:
Zane van Iperen <zane@zanevaniperen.com>
-
Pierre-Anthony Lemieux authored
Signed-off-by:
Pierre-Anthony Lemieux <pal@palemieux.com> Signed-off-by:
Zane van Iperen <zane@zanevaniperen.com>
-
Pierre-Anthony Lemieux authored
Signed-off-by:
Pierre-Anthony Lemieux <pal@palemieux.com> Signed-off-by:
Zane van Iperen <zane@zanevaniperen.com>
-
Andreas Rheinhardt authored
mpegaudiodec_template.c uses stuff from mpegaudiodata directly, yet this dependency was only indirectly fulfilled via mpegaudio-headers before 33e6d57f. Since this commit, the latter only needs (and therefore provides) mpegaudiotabs, leading to compilation failures. This commit adds this missing direct dependency directly. (Sorry for not having checked indirect dependencies.) Found-by:
Zane van Iperen <zane@zanevaniperen.com> Reviewed-by:
Zane van Iperen <zane@zanevaniperen.com> Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
Haihao Xiang authored
This reverts commit a4289497. There were objections on ML (see https://ffmpeg.org/pipermail/ffmpeg-devel/2021-December/290530.html ) Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Haihao Xiang authored
The string for AV_OPT_TYPE_STRING AVOption gets freed by av_opt_free() when closing the AVCodecContext Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Haihao Xiang authored
The SDK checks Data.V when using system memory for VP9 encoding. This fixed the error below: $ ffmpeg -qsv_device /dev/dri/renderD129 -f lavfi -i yuvtestsrc -c:v vp9_qsv -f null - [vp9_qsv @ 0x55b8387cbe90] Error during encoding: NULL pointer (-2) Video encoding failed Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Soft Works authored
The test /libavutil/tests/hwdevice checks that when deriving a device from a source device and then deriving back to the type of the source device, the result is matching the original source device, i.e. the derivation mechanism doesn't create a new device in this case. Previously, this test was usually passed, but only due to two different kind of flaws: 1. The test covers only a single level of derivation (and back) It derives device Y from device X and then Y back to the type of X and checks whether the result matches X. What it doesn't check for, are longer chains of derivation like: CUDA1 > OpenCL2 > CUDA3 and then back to OpenCL4 In that case, the second derivation returns the first device (CUDA3 == CUDA1), but when deriving OpenCL4, hwcontext.c was creating a new OpenCL4 context instead of returning OpenCL2, because there was no link from CUDA1 to OpenCL2 (only backwards from OpenCL2 to CUDA1) If the test would check for two levels of derivation, it would have failed. This patch fixes those (yet untested) cases by introducing forward references (derived_device) in addition to the existing back references (source_device). 2. hwcontext_qsv didn't properly set the source_device In case of QSV, hwcontext_qsv creates a source context internally (vaapi, dxva2 or d3d11va) without calling av_hwdevice_ctx_create_derived and without setting source_device. This way, the hwcontext test ran successful, but what practically happened, was that - for example - deriving vaapi from qsv didn't return the original underlying vaapi device and a new one was created instead: Exactly what the test is intended to detect and prevent. It just couldn't do so, because the original device was hidden (= not set as the source_device of the QSV device). This patch properly makes these setting and fixes all derivation scenarios. (at a later stage, /libavutil/tests/hwdevice should be extended to check longer derivation chains as well) Reviewed-by:
Lynne <dev@lynne.ee> Reviewed-by:
Anton Khirnov <anton@khirnov.net> Tested-by:
Wenbin Chen <wenbin.chen@intel.com> Signed-off-by:
softworkz <softworkz@hotmail.com> Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Niklas Haas authored
libplacebo supports automatic dolby vision application, but it requires us to switch to a new API. Also add some logic to strip the dolby vision metadata from the output frames in any case where we end up changing the colorimetry. The libplacebo dependency bump is justified because neither 184 nor 192 are part of any stable libplacebo release, so users have to build from git anyways for this filter to exist. Signed-off-by:
Niklas Haas <git@haasn.dev>
-
rcombs authored
These formats now work as expected.
-
rcombs authored
- No longer mixes u8 and u16 component accesses (this was UB) - De-duplicated 8->16 conversion - De-duplicated component -> plane+offset conversion - De-duplicated planar + packed RGB - No longer calls ff_fill_rgba_map - Removed redundant comp_mask data member - RGB0 and related formats no longer write an alpha value to the 0 byte - Non-planar YA formats now work correctly - High-bit-depth semi-planar YUV now works correctly
-
rcombs authored
-
rcombs authored
-
rcombs authored
These could be hazardous because of FFDrawColor's union
-
rcombs authored
Same outputs, but computed instead of statically known, so new formats will be supported more easily. Asserts in place to ensure we update this if we add anything incompatible with its logic.
-
rcombs authored
Disables x2bgr10/x2rgb10 (which did not behave correctly before).
-
rcombs authored
We already explicitly don't support big-endian in general
-
rcombs authored
-
rcombs authored
-