Fork of FFmpeg for xenia's usage. Branched from latest release. On changes use a git rebase strategy when applicable!
Go to file
Clément Bœsch 955b818cf9 ffmpeg: switch to codecpar
This commit is largely based on commit 15e84ed3 from Anton Khirnov
<anton@khirnov.net> which was previously skipped in bbf5ef9d.

There are still a bunch of things raising codecpar related warnings that
need fixing, such as:
- the use of codec->debug in the interactive debug mode
- read_ffserver_streams(): it's probably broken now but there is no test
- lowres stuff
- codec copy apparently required by bitstream filters

The matroska references are updated because they now properly forward
the field_order (previously unknown, now progressive).

Thanks to James Almer for fixing a bunch of FATE issues in this commit.

Signed-off-by: Clément Bœsch <clement@stupeflix.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-21 15:39:28 +02:00
compat avcodec/nvenc: include nvEncodeAPI v7 SDK header 2016-08-28 16:47:54 +02:00
doc doc/encoders: minor aac encoder formatting improvements 2016-09-19 19:17:34 +01:00
libavcodec avcodec/on2avc: add 0x500 stereo support and improve 0x500 mono support 2016-09-21 14:37:25 +02:00
libavdevice avdevice/dshow: satisfy alloc contract better 2016-08-20 12:06:50 +02:00
libavfilter avfilter/drawutils: allow drawing opaque text on transparent background 2016-09-21 11:54:00 +02:00
libavformat ffmpeg: switch to codecpar 2016-09-21 15:39:28 +02:00
libavresample doxygen: Standardize root-level modules 2016-08-02 22:15:25 -07:00
libavutil avutil/frame: Add a flag to discard frame after decode. 2016-09-19 19:51:13 +02:00
libpostproc doxygen: Standardize root-level modules 2016-08-02 22:15:25 -07:00
libswresample swresample: add int64 sample format 2016-08-18 15:30:05 +02:00
libswscale swscale: fix for sliced scaling artifacts 2016-09-16 11:25:28 -03:00
presets presets: remove moldering iPod presets 2014-06-17 16:15:04 -08:00
tests ffmpeg: switch to codecpar 2016-09-21 15:39:28 +02:00
tools tools/crypto_bench: add support for des 2016-08-26 15:46:32 -03: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: update with TrueHD and MLP encoders 2016-09-17 13:41:39 +01: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 ffmpeg: switch to codecpar 2016-09-21 15:39:28 +02:00
cmdutils.h cmdutils: remove the current working directory from the DLL search path on win32 2016-08-08 18:36:55 +02:00
common.mak Merge commit 'c5fd4b50610f62cbb3baa4f4108139363128dea1' 2016-06-27 19:39:46 +02:00
configure lavc: add hevc mediacodec decoder 2016-09-15 21:48:28 +02: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 ffmpeg: Add cuvid hwaccel support 2016-06-10 16:31:23 +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 ffmpeg: switch to codecpar 2016-09-21 15:39:28 +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 Merge commit '9f7590f4e497c12693247d7f935a20d7773a64dd' 2016-06-26 15:36:27 +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 ffmpeg: switch to codecpar 2016-09-21 15:39:28 +02:00
ffmpeg.h ffmpeg: switch to codecpar 2016-09-21 15:39:28 +02:00
ffplay.c cmdutils: remove the current working directory from the DLL search path on win32 2016-08-08 18:36:55 +02:00
ffprobe.c cmdutils: remove the current working directory from the DLL search path on win32 2016-08-08 18:36:55 +02: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 avcodec: remove libutvideo wrapper support 2016-06-23 13:04:11 +02:00
MAINTAINERS MAINTAINERS: add myself for mlp/truehd 2016-09-19 16:31:54 +02: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 to 3.0.git 2016-02-15 10:20:33 -08: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.