FFmpeg git repo
Go to file
Mark Thompson fd0fae6037 pthread_frame: Unreference hw_frames_ctx on per-thread codec contexts
When decoding with threads enabled, the get_format callback will be
called with one of the per-thread codec contexts rather than with the
outer context.  If a hwaccel is in use too, this will add a reference
to the hardware frames context on that codec context, which will then
propagate to all of the other per-thread contexts for decoding.  Once
the decoder finishes, however, the per-thread contexts are not freed
normally, so these references leak.
2016-11-10 20:36:11 +00:00
compat Add a compat dummy stdatomic.h used when threading is disabled 2016-10-02 18:57:56 +02:00
doc examples/decode_audio: Add missing header for av_free() 2016-11-10 10:33:19 +01:00
libavcodec pthread_frame: Unreference hw_frames_ctx on per-thread codec contexts 2016-11-10 20:36:11 +00:00
libavdevice Use avpriv_report_missing_feature() where appropriate 2016-11-08 17:54:34 +01:00
libavfilter lavfi: Hardware map filter 2016-11-03 23:49:05 +00:00
libavformat matroskaenc: write updated STREAMINFO metadata for FLAC streams if available 2016-11-10 09:15:24 +01:00
libavresample build: Change structure of the linker version script templates 2016-05-29 16:43:11 +02:00
libavutil arm: Clear the gp register alias at the end of functions 2016-11-10 14:01:04 +02:00
libswscale swscale: Add GRAY12 2016-11-07 22:42:00 +01:00
presets
tests fate: checkasm: Split monolithic test into individual components 2016-11-08 17:32:25 +01:00
tools aviocat: Support avio options 2016-10-25 15:43:56 +02:00
.gitattributes
.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
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog Changelog: mark the release 12 branch 2016-08-31 08:08:32 +02:00
INSTALL
LICENSE Remove the legacy X11 screen grabber 2016-07-29 19:03:10 +02:00
Makefile build: Hardcode avversion.h dependency 2016-10-27 11:54:06 +02:00
README
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 2016-10-14 13:52:51 -04:00
arch.mak ppc: vsx: Implement float_dsp 2015-05-31 12:07:11 +02:00
avconv.c avconv: Drop stray leftover debug output 2016-11-09 20:51:55 +01:00
avconv.h avconv: support parsing bitstream filter options 2016-11-02 10:08:28 +01:00
avconv_dxva2.c avconv_dxva2: add a profile check for hevc 2016-07-20 16:33:09 +02:00
avconv_filter.c avconv: make sure the filtergraph is freed on init failure 2016-10-02 11:41:45 +02:00
avconv_opt.c avconv: Correct function pointer assignments in options array 2016-11-08 16:48:41 +01: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_vaapi: Convert to use hw_frames_ctx only 2016-08-30 22:16:01 +01: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 avplay: Correct function pointer assignments in options array 2016-11-08 17:20:30 +01:00
avprobe.c avprobe: Add -show_stream_entry to get a single stream property 2016-11-01 11:27:52 -04: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
common.mak build: Simplify postprocessing of linker version script files 2016-05-29 16:49:16 +02:00
configure configure: Move license checks directly after command line parsing 2016-11-09 20:51:56 +01:00
library.mak build: Drop duplicate asm recipe 2016-10-17 16:25:35 +02:00
version.sh build: remove hardcoded name of version header 2016-09-15 21:59:15 +02:00

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.