FFmpeg git repo
Go to file
Anton Khirnov 6755eb5b21 mss12: validate display dimensions
The code currently reads the coded dimensions from the extradata, but
expects the display dimensions to be set by the caller, and does not
check that they are compatible (i.e. that the displayed size is smaller
than the coded size).

Make sure that when the display dimensions are set, they are also valid.
Fixes possible invalid memory access.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2016-08-18 17:06:46 +02:00
compat
doc x86: Add SSSE3_SLOW CPU flag and related convenience macros 2016-07-20 18:43:28 +02:00
libavcodec mss12: validate display dimensions 2016-08-18 17:06:46 +02:00
libavdevice timefilter: test: Drop some disabled debug cruft 2016-08-17 12:16:42 +02:00
libavfilter lavfi: add a QSV deinterlacing filter 2016-07-22 19:08:13 +02:00
libavformat nsv: Drop disabled cruft 2016-08-17 12:16:42 +02:00
libavresample build: Change structure of the linker version script templates 2016-05-29 16:43:11 +02:00
libavutil mathematics: Kill non-compiling disabled cruft 2016-08-17 12:16:42 +02:00
libswscale swscale: Kill non-compiling disabled cruft 2016-08-17 12:16:42 +02:00
presets
tests checkasm: add vp9 MC tests. 2016-08-03 11:07:01 +02:00
tools
.gitattributes
.gitignore
.travis.yml
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog Remove the legacy X11 screen grabber 2016-07-29 19:03:10 +02:00
INSTALL
LICENSE Remove the legacy X11 screen grabber 2016-07-29 19:03:10 +02:00
Makefile build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
README
README.md
RELEASE Prepare for 12_alpha1 Release 2016-08-12 17:32:02 -04:00
arch.mak
avconv.c avconv: Make sure that inputless filtergraphs are configured 2016-08-12 11:41:58 +02:00
avconv.h avconv: stop using setpts for input framerate forced with -r 2016-07-22 19:08:12 +02:00
avconv_dxva2.c avconv_dxva2: add a profile check for hevc 2016-07-20 16:33:09 +02:00
avconv_filter.c avconv: Check the fifo allocation 2016-08-12 11:41:58 +02:00
avconv_opt.c avconv: init filtergraphs only after we have a frame on each input 2016-06-25 12:04:32 +02:00
avconv_qsv.c avconv_qsv: use the actual pixel format provided by lavc 2016-07-22 19:08:12 +02:00
avconv_vaapi.c
avconv_vda.c
avconv_vdpau.c
avplay.c Use AVFrame.pts instead of deprecated pkt_pts. 2016-06-21 19:54:42 +02:00
avprobe.c Revert "avprobe: Zero the allocated avio buffer memory" 2016-07-21 21:53:20 +02:00
cmdutils.c
cmdutils.h
cmdutils_common_opts.h
common.mak build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
configure lavc: align the linesize to 32 when AVX is enabled 2016-08-03 10:56:53 +02:00
library.mak build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
version.sh

README.md

Libav

Build Status

Libav 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.
  • libavresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • avconv is a command line toolbox to manipulate, convert and stream multimedia content.
  • avplay is a minimalistic multimedia player.
  • avprobe is a simple analisys 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

Conding examples are available in the doc/example directory.

License

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