Go to file
Ganesh Ajjanagadde e86444b19d lavc/utvideodec: prevent possible signed overflow
Doing slice_end - slice_start is unsafe and can lead to undefined behavior
until slice_end has been properly sanitized.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanag@gmail.com>
2016-02-23 20:37:11 -05:00
compat compat/os2threads: split long lines 2016-02-14 19:17:36 +01:00
doc lavc/lavf: transmit stream_id information for mpegts KLV data packets 2016-02-23 18:44:12 +01:00
libavcodec lavc/utvideodec: prevent possible signed overflow 2016-02-23 20:37:11 -05:00
libavdevice configure&avdevice/jack: Fixed issue #43 JACK indev support on OSX 2016-02-22 00:46:49 +01:00
libavfilter avfilter/avf_showcqt: use lrint 2016-02-23 22:14:08 +07:00
libavformat lavc/lavf: transmit stream_id information for mpegts KLV data packets 2016-02-23 18:44:12 +01:00
libavresample Merge commit 'cc4c24208159200b7aff5b5c313903c7f23fa345' 2016-01-02 10:13:58 +01:00
libavutil avutil/pixdesc: Make get_color_type() aware of CIE XYZ formats 2016-02-22 03:49:43 +01:00
libpostproc postproc: fix unaligned access 2016-02-23 15:50:28 +01:00
libswresample x86: use the new helper macros where useful 2016-02-14 20:00:21 -03:00
libswscale swscale/utils: Fix chrSrcHSubSample for GBRAP16 2016-02-24 00:02:44 +01:00
presets
tests lavc/lavf: transmit stream_id information for mpegts KLV data packets 2016-02-23 18:44:12 +01:00
tools avcodec: Remove libstagefright 2016-01-06 16:43:06 +00:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore build: use a link instead of changing current directory when compiling 2016-01-25 20:43:34 +01:00
.travis.yml Merge commit 'eda183287489b2c705843aa373a19c4e46fb2fec' 2015-11-22 17:12:24 +00:00
arch.mak mips: rename mipsdspr1 to mipsdsp 2015-12-04 02:35:42 +01:00
Changelog avfilter: add firequalizer filter 2016-02-23 00:44:07 +07:00
cmdutils_common_opts.h opts: add list device sources/sinks options 2014-10-25 20:20:31 +02:00
cmdutils_opencl.c all: use FFDIFFSIGN to resolve possible undefined behavior in comparators 2015-11-03 16:28:30 -05:00
cmdutils.c cmdutils: realign for some additional filters with very long name 2016-02-06 12:48:51 +01:00
cmdutils.h fate/source: Do not use GNU extensions in sed 2016-02-13 07:59:00 -08:00
common.mak build: use a link instead of changing current directory when compiling 2016-01-25 20:43:34 +01:00
configure avfilter: add firequalizer filter 2016-02-23 00:44:07 +07:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
ffmpeg_dxva2.c ffmpeg_dxva2: add a profile check for hevc 2016-02-15 12:34:19 +01:00
ffmpeg_filter.c ffmpeg_filter: Factor get_compliance_unofficial_pix_fmts() out 2016-02-10 13:28:23 +01:00
ffmpeg_opt.c Merge commit 'bd49be885e9ad6bae599c54473ba2fa2957eb140' 2016-02-17 16:47:05 +00:00
ffmpeg_qsv.c Merge commit 'fb472e1a11a4e0caed2c3c91da01ea8e35d9e3f8' 2015-10-22 16:18:02 +02:00
ffmpeg_vdpau.c Merge commit 'bd49be885e9ad6bae599c54473ba2fa2957eb140' 2016-02-17 16:47:05 +00:00
ffmpeg_videotoolbox.c ffmpeg/videotoolbox: protect UTGetOSTypeFromString on both VDA and VT 2015-10-15 10:22:31 +02:00
ffmpeg.c ffmpeg: init input streams before opening encoders 2016-02-19 21:55:25 +01:00
ffmpeg.h Merge commit 'bd49be885e9ad6bae599c54473ba2fa2957eb140' 2016-02-17 16:47:05 +00:00
ffplay.c ffplay: update docs after previous changes in ffplay mouse behaviour 2016-01-20 21:23:03 +01:00
ffprobe.c ffprobe: Deprecate stream timecode field and add frame side data timecode field 2016-02-01 18:19:30 +00:00
ffserver_config.c ffserver: NoVideo and NoAudio flags weren't cleared between streams. 2016-02-21 22:29:15 +01:00
ffserver_config.h ffserver: Use singlejpeg muxer for jpeg 2015-06-08 03:36:22 +02:00
ffserver.c ffserver&ffm: Fixed issues preventing ffserver write_index and files_size from being set correctly which was breaking ffserver streaming. 2016-02-21 12:59:07 +01:00
INSTALL.md
library.mak build: use a link instead of changing current directory when compiling 2016-01-25 20:43:34 +01:00
LICENSE.md avcodec: Remove libaacplus 2016-01-29 17:14:37 -08:00
MAINTAINERS avfilter: add firequalizer filter 2016-02-23 00:44:07 +07:00
Makefile build: use intermediate lcov coverage file 2016-02-06 15:42:09 +01:00
README.md README: replace http with https 2015-10-06 13:27:29 +02:00
RELEASE RELEASE: Update to 3.0.git 2016-02-15 10:20:33 -08:00
version.sh version.sh: add note that ffversion.h is auto-generated 2015-10-25 10:14:44 -04: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.
  • ffserver is a multimedia streaming server for live broadcasts.
  • 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. Few developers follow pull requests so they will likely be ignored.