No description
Find a file
Janne Grunau 17c99b6158 h2645_parse: handle embedded Annex B NAL units in size prefixed NAL units
Fixes a regression in ca2f19b9cc with some mov/mp4 files. The files have
several NAL units in the supposed single NAL unit after the size field.
Annex B start code prefixes are used to separate them. The first NAL unit
is correctly parsed but the buffer does not point to the next size field.
Instead semi random data (it seems to be the rbsp_stop_one_bit and the
start code prefix) is then parsed as length and will exceed the
remaining length of the buffer.

Patch based on the code in h264's decode_nal_units() and a similar
patch by Hendrik Leppkes in FFmpeg (a9bb4cf87d).

Bug-Id: ffmpeg/trac5529
Reported-By: Vittorio Giovara
2016-07-13 22:18:52 +02:00
compat jack: Support OSX 2016-03-31 18:03:21 +02:00
doc doc: escape left brace in texi2pod.pl regex 2016-07-10 13:34:57 +02:00
libavcodec h2645_parse: handle embedded Annex B NAL units in size prefixed NAL units 2016-07-13 22:18:52 +02:00
libavdevice avdevice: Ignore timefilter test program 2016-06-14 11:14:06 +02:00
libavfilter vf_scale_vaapi: Respect driver quirks around buffer destruction 2016-07-02 14:09:58 +01:00
libavformat movenc: Add an option for skipping writing the mfra/tfra/mfro trailer 2016-07-08 14:11:15 +03:00
libavresample build: Change structure of the linker version script templates 2016-05-29 16:43:11 +02:00
libavutil hwcontext_qsv: add support for p010 2016-07-03 09:13:29 +02:00
libswscale swscale: add P010 input support 2016-07-02 09:35:41 +02:00
presets presets: spelling error in libvpx 1080p50_60 2011-10-22 00:28:56 +02:00
tests checkasm/arm: align the clobber check data properly for ldrd 2016-07-10 13:35:41 +02:00
tools tools: Port to codec parameters API 2016-05-17 11:16:26 +02:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore build: Ignore generated mapfile and remove it on distclean 2016-05-27 11:27:24 +02:00
.travis.yml travis: Enable OSX integration 2015-11-17 16:51:00 +01:00
arch.mak ppc: vsx: Implement float_dsp 2015-05-31 12:07:11 +02:00
avconv.c avconv: use avcodec_parameters_copy() with streamcopy 2016-07-02 09:30:40 +02:00
avconv.h avconv: restructure sending EOF to filters 2016-06-28 08:30:20 +02:00
avconv_dxva2.c avconv_dxva2: use the hwcontext device creation API 2016-05-26 15:40:34 +02:00
avconv_filter.c avconv: restructure sending EOF to filters 2016-06-28 08:30:20 +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 device creation API 2016-06-25 12:11:07 +02:00
avconv_vaapi.c avconv_vaapi: use the hwcontext device creation API 2016-05-26 15:40:34 +02:00
avconv_vda.c avconv: vda: Unlock the pixel buffer once it is accessed 2015-07-09 00:10:13 +02:00
avconv_vdpau.c avconv_vdpau: use the hwcontext device creation API 2016-05-26 15:40:34 +02:00
avplay.c Use AVFrame.pts instead of deprecated pkt_pts. 2016-06-21 19:54:42 +02:00
avprobe.c avprobe: Print stereo3d information 2016-05-17 12:25:27 -04:00
Changelog Add an OpenH264 decoder wrapper 2016-06-28 14:17:43 +03:00
cmdutils.c avconv: switch to the new BSF API 2016-03-20 08:15:01 +01:00
cmdutils.h avconv: use read_file() for reading the 2pass stats 2015-07-19 09:37:11 +02:00
cmdutils_common_opts.h avplay: Accept cpuflags option 2013-10-22 10:49:31 +02:00
common.mak build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
configure build: Add a new component for H.264 parsing code 2016-06-29 12:31:03 +02: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 partially rename FFmpeg to Libav 2011-03-16 21:54:39 +01:00
INSTALL doc: clarify configure features 2011-04-07 02:54:12 +02:00
library.mak build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
LICENSE LICENSE: Fix silly typo 2016-06-14 11:14:06 +02:00
Makefile build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
README doc: Add more information in the README 2014-08-16 00:49:22 +02:00
README.md doc: Add travis badge 2015-09-14 00:19:08 +02:00
RELEASE Make the RELEASE file match with the most recent tag 2014-12-01 07:51:14 -05:00
version.sh Drop git- prefix from version labels 2011-06-19 19:41:23 +01:00

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.