FFmpeg git repo
Go to file
Anton Khirnov 9f61abc811 lavf: allow custom IO for all files
Some (de)muxers open additional files beyond the main IO context.
Currently, they call avio_open() directly, which prevents the caller
from using custom IO for such streams.

This commit adds callbacks to AVFormatContext that default to
avio_open2()/avio_close(), but can be overridden by the caller. All
muxers and demuxers using AVIO are switched to using those callbacks
instead of calling avio_open()/avio_close() directly.

(de)muxers that use the URLProtocol layer directly instead of AVIO
remain unconverted for now. This should be fixed in later commits.
2016-01-24 16:45:32 +01:00
compat
doc lavf: allow custom IO for all files 2016-01-24 16:45:32 +01:00
libavcodec qsvenc: fix a typo 2016-01-23 21:03:31 +01:00
libavdevice
libavfilter lavu: add AV_CEIL_RSHIFT and use it in various places 2016-01-11 15:32:56 -05:00
libavformat lavf: allow custom IO for all files 2016-01-24 16:45:32 +01:00
libavresample
libavutil x86inc: Add debug symbols indicating sizes of compiled functions 2016-01-23 20:46:28 +01:00
libswscale yuv2rgb: Document the color space coefficients 2016-01-20 11:18:31 -05:00
presets
tests x86inc: Add debug symbols indicating sizes of compiled functions 2016-01-23 20:46:28 +01:00
tools
.gitattributes
.gitignore
.travis.yml
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog swfdec: support compressed swf 2016-01-11 15:32:56 -05:00
INSTALL
LICENSE
Makefile
README
README.md
RELEASE
arch.mak
avconv.c avconv: Drop an impossible check 2016-01-04 16:58:32 +01:00
avconv.h
avconv_dxva2.c
avconv_filter.c
avconv_opt.c
avconv_qsv.c
avconv_vda.c
avconv_vdpau.c
avplay.c
avprobe.c
cmdutils.c
cmdutils.h
cmdutils_common_opts.h
common.mak
configure configure: Correctly add openssl cflags and libs 2016-01-23 14:34:06 +01:00
library.mak
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.