summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* ffmpeg: remove ffmpeg_videotoolboxrcombs2021-11-28
| | | | | | This was almost completely redundant. The only functionality that's no longer available after this removal is the videotoolbox_pixfmt arg, which has been obsolete for several years.
* avcodec/vqavideo: Remove dead codeAndreas Rheinhardt2021-11-28
| | | | | | Fixes Coverity issue #1493344. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/mobiclip: Rewrite code to make it clearerAndreas Rheinhardt2021-11-28
| | | | | | | | | | In order to know that the earlier code did not use uninitialized values one needs to know that the lowest four bits of each used value of pframe_block4x4_coefficients_tab do not vanish identically. E.g. Coverity did not get this and warned about it in ticket #1466632. Fix this by slightly rewriting the code. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_paletteuse: Add missing parenthesesAndreas Rheinhardt2021-11-27
| | | | | | | | Fixes a mistake in dea673d0d548c864ec85f9260d8900d944ef7a2a. GCC emitted a -Wint-in-bool-context warning because of that. Reviewed-by: Soft Works <softworkz@hotmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/img2dec: probe JFIF/Exif headerAlex Xu (Hello71)2021-11-27
| | | | | | | | | | | | | | | | | Due to reasons, mpv doesn't pass filename when probing. mpv also sets default probescore threshold to 26. Since the current jpeg_probe implementation returns 25 until EOI, it means that the whole image needs to be probed to succeed. Worse, the whole image is not passed at once; increasingly large buffers are tried before that. Adding it up together, if many demuxers are enabled, moderately large JPEG files (few MB) can take several seconds to open, despite taking less than 1 second to actually decode. Therefore, adjust the heuristic to be more optimistic if proper JFIF or Exif segments are found. While not strictly required, the vast majority of JPEG-ish files have one or the other or both. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mjpeg_parser: skip markers after EOI, not by sizeAlex Xu (Hello71)2021-11-27
| | | | | | | | | | | | | The check for m->size >= 0xF000 is intended to avoid skipping too much garbage data between JPEG frames in test_roman (thus missing next SOI), but it erroneously also skips valid markers between SOI and SOS. Instead of this, we should simply skip parsing markers other than SOI after EOI. That way, we will not accidentally skip over SOI due to some garbage between frames. There is still a small risk of encountering FFD8 in the garbage data, but the chance of this is fairly low. Fixes: https://trac.ffmpeg.org/ticket/8967 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mpegtsenc: Avoid allocation of AVPacketAndreas Rheinhardt2021-11-27
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/movenc: Avoid allocation of AVPacketAndreas Rheinhardt2021-11-27
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/dashenc: Don't use stack packetAndreas Rheinhardt2021-11-27
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/avformat: Add AVStream parameter to check_bitstream() sigAndreas Rheinhardt2021-11-27
| | | | | | | | | | For most check_bitstream() functions this just avoids having to dereference s->streams[pkt->stream_index] themselves; but for meta-muxers it will allow to forward the packet to stream with a different stream_index (belonging to a different AVFormatContext) without using a spare packet. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* hwcontext_vulkan: use correct return value for allocation failureLynne2021-11-27
|
* configure: fix test_pkg_config_cpp after 1e5acc1b5985c58eLynne2021-11-27
|
* avformat/rtp: add localaddr for network interface selectionLimin Wang2021-11-27
| | | | | Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avformat/avidec: Check read_odml_index() for failureMichael Niedermayer2021-11-26
| | | | | | | | Fixes: Timeout Fixes: 40950/clusterfuzz-testcase-minimized-ffmpeg_dem_AVI_fuzzer-6478873068437504 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/txd: Move input size checks before allocationMichael Niedermayer2021-11-26
| | | | | | | Fixes: Timeout Fixes: 40882/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TXD_fuzzer-4893364584054784 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/cafdec: Avoid unnecessary avio_tell() callsAndreas Rheinhardt2021-11-26
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* fftools/ffmpeg: Take type limitations of AVFifo API into accountAndreas Rheinhardt2021-11-26
| | | | | | | | | | | | The types used by the AVFifo API are inconsistent: av_fifo_(space|size)() returns an int; av_fifo_alloc() takes an unsigned, other parts use size_t. This commit therefore ensures that the size of the muxing_queue FIFO never exceeds INT_MAX. While just at it, also make sure not to call av_fifo_size() unnecessarily often. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* Revert "Disable warnings for casting pointers to integers, there is nothing ↵Andreas Rheinhardt2021-11-26
| | | | | | | | | | | | | wrong with that." This reverts commit 5258f64a14713499cf84840b3ab3a1ee7cdcaeb8. The premise of said commit (that conversions from pointer to int are ok) is wrong: C99/C11 6.3.2.3 5: "Any pointer type may be converted to an integer type. [...] If the result cannot be represented in the integer type, the behavior is undefined." (C90 6.3.4 contains a similar restriction.) So don't disable -Wpointer-to-int-cast. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/h263: Fix global-buffer-overflow with noout flag2 setAndreas Rheinhardt2021-11-26
| | | | | | | | | | | | h263_get_motion_length() forgot to take an absolute value; as a consequence, a negative index was used to access an array. This leads to potential crashes, but mostly it just accesses what is to the left of ff_mvtab (unless one uses ASAN), thereby defeating the purpose of the AV_CODEC_FLAG2_NO_OUTPUT because the sizes of the returned packets differ from the sizes the encoder would actually have produced. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/udp: remove local localaddr arrayLimin Wang2021-11-26
| | | | | Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avutil/hwcontext_vulkan: fully support customizable validation layersWu Jianhua2021-11-26
| | | | | | | | | | Validation layer is an indispensable part of developing on Vulkan. The following commands is on how to enable validation layers: ffmpeg -init_hw_device vulkan=0,debug=1,validation_layers=VK_LAYER_LUNARG_monitor+VK_LAYER_LUNARG_api_dump Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* configure: do not include -lvulkan to cflags in vulkan's pkg-config checkLynne2021-11-26
| | | | Also fixes the non-pkg-config check.
* avfilter/af_biquads: add svf transform typePaul B Mahol2021-11-26
|
* avformat/mpegts: fix stream index in verbose log messageMarton Balint2021-11-25
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: add missing version check for snddropdelayMarton Balint2021-11-25
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/http: prevent truncation of sanitized_pathJames Almer2021-11-25
| | | | | | | | | path1 and sanitized_path are both MAX_URL_SIZE bytes long, yet the latter is copied from the former with the addition of one extra character. Should fix a -Wformat-truncation warning. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/rtp: support RGB/BGR for rfc4175Limin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avformat: suppport YUV 4:2:2 10-bit for rfc4175Limin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avcodec: suppport for bitpacked encodeLimin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avcodec: rename bitpacked.c to bitpacked_dec.cLimin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avformat/rtpenc: adds partial support for the RFC 4175Limin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avformat/rtpdec_rfc4175: support for yuv420p formatLimin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avformat/rtpdec_rfc4175: use rawvideo for uyvy422Limin Wang2021-11-25
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* libvpxdec: Correct linking against variables.Matt Oliver2021-11-25
| | | | Instead link against the function that returns the correct variable. This fixes linking errors with dlls with msvc.
* avutil/hwcontext_vulkan: check if created before destroying the instanceWu Jianhua2021-11-24
| | | | Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* avutil/hwcontext_vulkan: check if created before destroying the deviceWu Jianhua2021-11-24
| | | | Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* ffmpeg: drop obsolete rotation API remnantsAnton Khirnov2021-11-23
| | | | No demuxers export the "rotate" metadata tag anymore.
* ffmpeg: drop -isync, which did nothing since 2012Anton Khirnov2021-11-23
|
* ffmpeg: drop -sameq/-samequant optionsAnton Khirnov2021-11-23
| | | | They did nothing but return an error since 2012.
* ffmpeg: drop the -tvstd optionAnton Khirnov2021-11-23
| | | | It is undocumented and has been deprecated since 2012.
* ffmpeg: drop the -vc optionAnton Khirnov2021-11-23
| | | | It is undocumented and has been deprecated since 2012.
* ffmpeg: drop the -deinterlace optionAnton Khirnov2021-11-23
| | | | It is undocumented and has been deprecated since 2013.
* ffmpeg: drop the -intra optionAnton Khirnov2021-11-23
| | | | It is undocumented and has been marked as deprecated since 2012.
* ffmpeg: do not copy chroma_sample_location from the input streamAnton Khirnov2021-11-23
| | | | It will be set from the supplied AVFrame later on.
* avcodec/libaomenc: remove the redundant initializationLimin Wang2021-11-23
| | | | | | | For dst->have_sse will be assigned by ctx->have_sse soon(code line 23). Reviewed-by: James Zern <jzern-at-google.com@ffmpeg.org> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avutil/hwcontext_cuda: return more useful error codes from init functionsTimo Rothenpieler2021-11-22
|
* avutil/hwcontext_cuda: add option to use primary device contextTimo Rothenpieler2021-11-22
|
* avformat/mov: make STTS duration unsigned intGyan Doshi2021-11-22
| | | | | | | | | | As per 8.6.1.2.2 of ISO/IEC 14496-12:2015(E), STTS sample offsets are to be always stored as uint32_t. So far, they have been signed ints which led to desync in files with very large offsets. The MOVStts struct was used to store CTTS offsets as well. These can be negative in version 1. So a new struct MOVCtts was created and all declarations for CTTS usage changed to MOVCtts.
* avcodec/h263: Inline constantAndreas Rheinhardt2021-11-21
| | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* av(codec|device): Don't cast pointers to intAndreas Rheinhardt2021-11-21
| | | | | | | | | | C99/C11 6.3.2.3 5: "Any pointer type may be converted to an integer type. [...] If the result cannot be represented in the integer type, the behavior is undefined." So stop casting pointers to int; use uintptr_t instead. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>