commit | 98c3fe99a7b62684a51fe66471417fa0abb19042 | [log] [tgz] |
---|---|---|
author | James Robinson <jamesr@google.com> | Wed Mar 15 12:51:25 2017 -0700 |
committer | James Robinson <jamesr@google.com> | Wed Mar 15 12:52:20 2017 -0700 |
tree | a15263d40c1d9a16a2e0b3a49c0446e951076437 | |
parent | b51f0cabaaddc275362d138edbb0b27961c525f9 [diff] |
third_party/ffmpeg: restart based on github upstream This CL is based on a recent ToT from the github mirror of ffmpeg. Previously, we had used Chromium's fork of github as our upstream, modifying their gn build stuff a bit to make it work for fuchsia. This wasn't really workable long-term, because the Chromium ffmpeg rolls are extremely complex and involve 'make'ing a bunch of configs we don't care about on multiple host machines. The new approach is to use the github mirror of ffmpeg as our upstream and to adapt Chromium's gn build stuff to work for us. The result is something we can roll pretty easily using one linux host. The following files are adapted from Chromium: BUILD.gn README.fuchsia ffmpeg_options.gni fuchsia/patches/README fuchsia/scripts/... These files are original ffmpeg source files that have been modified to eliminate compiler warnings. Chromium does this as well: libavcodec/utils.c libavformat/utils.c These files are generated by the 'roll' procedure: CREDITS.fuchsia ffmpeg_generated.gni fuchsia/config/... Change-Id: Idb4926ca2bf8e9f1a9c6450318e8ea20d5dff5ff
FFmpeg is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.
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.aviocat
, ismindex
and qt-faststart
.The offline documentation is available in the doc/ directory.
The online documentation is available in the main website and in the wiki.
Coding examples are available in the doc/examples directory.
FFmpeg codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.
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.