1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00
Go to file
Andreas Rheinhardt 55eb24a92f avfilter/formats: Make check for buffer overflow redundant
and remove the redundant check.

This check for whether the allocated buffer is sufficient has been added
in commit 1cbf7fb434 (merging commit
5775a1832c). It is not sufficient to
detect invalid input lists (namely lists with duplicates); its only use
is to avoid buffer overflows. And this can be achieved by simpler means:
Make sure that one allocates space for so many elements as the outer loop
ranges over and break out of the inner loop if a match has been found.
For valid input without duplicates, no further match will be found anyway.

This change will temporarily make the allocated formats array larger
than before and larger than necessary; this will be fixed in a later
commit that avoids the allocation altogether.

If a check for duplicates in the lists is deemed necessary, it should be
done properly somewhere else.

Finally, the error message that is removed in this commit used
__FUNCTION__, which is a GCC extension (C99 added __func__ for this).
So this commit removes a warning when compiling in -pedantic mode.

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-20 01:33:06 +02:00
compat compat/cuda/ptx2c: remove shell loop; fix BSD sed compat 2020-06-01 22:10:41 -05:00
doc doc/encoders: Add all options for JPEG2000 encoder 2020-08-17 15:30:25 +05:30
ffbuild ffbuild: Refine MIPS handling 2020-07-23 16:30:02 +02:00
fftools fftools/ffmpeg: make specifying thread_queue_size turn on threaded input 2020-07-29 23:10:12 +02:00
libavcodec avcodec/v4l2_context: return EAGAIN to signal full buffers 2020-08-16 17:39:13 -04:00
libavdevice avdevice/xcbgrab: check return values of xcb query functions 2020-08-15 15:32:52 -04:00
libavfilter avfilter/formats: Make check for buffer overflow redundant 2020-08-20 01:33:06 +02:00
libavformat avformat/mpegts: only reset timestamps to NOPTS for DVB teletext 2020-08-18 22:29:22 +03:00
libavresample
libavutil avutil/channel_layout: add 22.2 layout 2020-08-04 00:17:56 +03:00
libpostproc Bump minor versions after branching 4.3 2020-06-08 22:49:04 +02:00
libswresample swresample/rematrix: handle 22.2 as a 9 channel layout 2020-08-18 22:47:35 +03:00
libswscale swscale: do not drop half of bits from 16bit bayer formats 2020-08-08 12:03:42 +02:00
presets
tests FATE: fix copy & paste for minterpolate test 2020-08-18 08:32:02 +08:00
tools tools/target_dec_fuzzer: Adjust threshold for DST 2020-08-18 14:56:04 +02:00
.gitattributes
.gitignore
.mailmap mailmap: add entry for myself 2020-07-13 11:24:04 +08:00
.travis.yml
Changelog avformat/av1dec: add low-overhead bitstream format 2020-08-14 00:02:13 -03:00
configure avcodec: move ff_alloc_a53_sei() to atsc_53 2020-08-15 13:01:25 -03:00
CONTRIBUTING.md
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
INSTALL.md
LICENSE.md
MAINTAINERS MAINTAINERS: add myself and gpg fingerprint 2020-07-17 21:57:18 +02:00
Makefile Makefile: Delete more created files when running "make distclean". 2020-03-11 11:43:01 +01:00
README.md
RELEASE RELEASE: We are after the 4.3 branch point, update for that 2020-06-10 00:20:24 +02:00

FFmpeg README

FFmpeg is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.

Libraries

  • libavcodec provides implementation of a wider range of codecs.
  • libavformat implements streaming protocols, container formats and basic I/O access.
  • libavutil includes hashers, decompressors and miscellaneous utility functions.
  • libavfilter provides a mean to alter decoded Audio and Video through chain of filters.
  • libavdevice provides an abstraction to access capture and playback devices.
  • libswresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • ffmpeg is a command line toolbox to manipulate, convert and stream multimedia content.
  • ffplay is a minimalistic multimedia player.
  • ffprobe is a simple analysis tool to inspect multimedia content.
  • Additional small tools such as aviocat, ismindex and qt-faststart.

Documentation

The offline documentation is available in the doc/ directory.

The online documentation is available in the main website and in the wiki.

Examples

Coding examples are available in the doc/examples directory.

License

FFmpeg codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.

Contributing

Patches should be submitted to the ffmpeg-devel mailing list using git format-patch or git send-email. Github pull requests should be avoided because they are not part of our review process and will be ignored.