Go to file
Andreas Cadhalpun 9d83b209d8 mov: immediately return from mov_fix_index without old index entries
If there are no index entries, e_old = st->index_entries is only one
byte large, since it was created by av_realloc called with size 0.

Thus accessing e_old[0].timestamp causes a heap buffer overflow.

Reviewed-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-11-01 18:45:34 +01:00
compat compat/cuda: convert to unix line endings 2016-09-23 11:43:00 +02:00
doc doc: fix spelling errors 2016-10-29 20:43:15 +02:00
libavcodec Fix build warnings due to misleading indentation 2016-11-01 17:44:10 +01:00
libavdevice Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
libavfilter lavfi/mergeplanes: Fix little endian yuv formats >8 bit and <16bit. 2016-11-01 12:28:36 +01:00
libavformat mov: immediately return from mov_fix_index without old index entries 2016-11-01 18:45:34 +01:00
libavresample Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
libavutil Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
libpostproc Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
libswresample Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
libswscale Bump minor versions after 3.2 branchpoint to seperate release 2016-10-26 20:52:42 +02:00
presets presets: remove moldering iPod presets 2014-06-17 16:15:04 -08:00
tests fate filter metadata : add test for aphasemeter - Test a mono file (in phase) -> 1. as result - Test a out of phase 1000 Hz -> -1. as result 2016-11-01 17:13:02 +01:00
tools tools: fix grammar error 2016-10-09 20:09:00 +02:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore Merge commit '6641819feedb086ebba3d2be89b8d33980f367e1' 2016-06-26 15:43:05 +02: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 Changelog: Add back next marker 2016-10-26 20:52:43 +02: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: fix typos 2016-10-09 20:09:00 +02:00
cmdutils.h cmdutils: fix typos 2016-10-09 20:09:00 +02:00
common.mak Merge commit 'c5fd4b50610f62cbb3baa4f4108139363128dea1' 2016-06-27 19:39:46 +02:00
configure configure: add '-uninstalled' to uninstalled .pc files 2016-10-30 20:50:11 -07:00
CONTRIBUTING.md Add CONTRIBUTING.md 2016-09-18 10:02:13 +01:00
COPYING.GPLv2 Rename COPYING.GPL --> COPYING.GPLv2 and COPYING.LGPL --> COPYING.LGPLv2.1. 2009-06-05 09:51:31 +00:00
COPYING.GPLv3 Add configure option to upgrade (L)GPL to version 3. 2009-06-05 11:04:03 +00:00
COPYING.LGPLv2.1 cosmetics: Delete empty lines at end of file. 2012-02-09 12:26:45 +01:00
COPYING.LGPLv3 Add configure option to upgrade (L)GPL to version 3. 2009-06-05 11:04:03 +00:00
CREDITS CREDITS: redirect to Git log, remove current outdated content 2013-01-31 18:02:52 +01:00
ffmpeg_cuvid.c doc: fix spelling errors 2016-10-21 23:58:47 +02:00
ffmpeg_dxva2.c Merge commit '18c506e9e6e8df8b1d496d093077b8240ea68c28' 2016-06-26 15:34:01 +02:00
ffmpeg_filter.c ffmpeg: switch to codecpar 2016-09-21 15:39:28 +02:00
ffmpeg_opt.c Merge commit '398f015f077c6a2406deffd9e37ff34b9c7bb3bc' 2016-10-08 11:38:47 +02:00
ffmpeg_qsv.c ffmpeg/qsv: fix QSV-accelerated transcode performance drop issue. 2016-08-16 17:09:33 +02:00
ffmpeg_vaapi.c ffmpeg_vaapi: fix choice of decoder_format 2016-09-29 01:23:52 +02:00
ffmpeg_vdpau.c Merge commit 'f72db3f2f3a8c83a4f5dede8fa03434b2bf676c6' 2016-06-26 15:29:39 +02:00
ffmpeg_videotoolbox.c ffmpeg/videotoolbox: protect UTGetOSTypeFromString on both VDA and VT 2015-10-15 10:22:31 +02:00
ffmpeg.c doc: fix spelling errors 2016-10-21 23:58:47 +02:00
ffmpeg.h Merge commit '398f015f077c6a2406deffd9e37ff34b9c7bb3bc' 2016-10-08 11:38:47 +02:00
ffplay.c Merge commit 'beb62dac629603eb074a44c44389c230b5caac7c' 2016-10-07 13:16:36 +02:00
ffprobe.c lavf: add AV_DISPOSITION_TIMED_THUMBNAILS 2016-10-24 05:47:05 -05: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 cmdutils: remove the current working directory from the DLL search path on win32 2016-08-08 18:36:55 +02:00
INSTALL.md INSTALL: add markdown syntax 2014-05-28 22:38:38 +02:00
library.mak Merge commit 'c5fd4b50610f62cbb3baa4f4108139363128dea1' 2016-06-27 19:39:46 +02:00
LICENSE.md lavc: remove libfaac wrapper 2016-10-01 19:58:04 +01:00
MAINTAINERS MAINTAINERS: add myself for audiotoolbox 2016-10-24 01:47:52 -05:00
Makefile Merge commit '6641819feedb086ebba3d2be89b8d33980f367e1' 2016-06-26 15:43:05 +02:00
README.md Add CONTRIBUTING.md 2016-09-18 10:02:13 +01:00
RELEASE RELEASE: Update for past 3.2 branch 2016-10-26 20:52:43 +02:00
version.sh version.sh: Fix spurious rebuilds. 2016-03-10 09:53:10 +01: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 and will be ignored.