You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Derek Buitenhuis df8e24be5d Merge commit 'eda183287489b2c705843aa373a19c4e46fb2fec' 10 years ago
compat os2threads: Add pthread_once() 10 years ago
doc Merge commit '588b6215b4c74945994eb9636b0699028c069ed2' 10 years ago
libavcodec Merge commit '79d89cf2f4b62eeb653fd8139041c87e75f7ca65' 10 years ago
libavdevice avdevice/dshow_enummediatypes: check return of av_malloc 10 years ago
libavfilter avfilter/af_dynaudnorm: use M_PI 10 years ago
libavformat Merge commit '62b4a6f1b9aa83d56701af226adda98faa5ede09' 10 years ago
libavresample Merge commit 'e2854e731f843906d9a9a5b882bed872341999fd' 10 years ago
libavutil Merge commit '588b6215b4c74945994eb9636b0699028c069ed2' 10 years ago
libpostproc Merge commit 'e88103a7f92cf27a2868b50acc8a9912f6088249' 10 years ago
libswresample swresample/resample: remove redundant L for floating literal 10 years ago
libswscale swscale: rename sws_rgb2rgb_init to ff_sws_rgb2rgb_init 10 years ago
presets presets: remove moldering iPod presets 11 years ago
tests avcodec/atrac1: fix decoder: QMF delay compensation should be 39 samples 10 years ago
tools Replace remaining occurances of av_free_packet with av_packet_unref 10 years ago
.gitattributes Treat all '*.pnm' files as non-text file 11 years ago
.gitignore gitignore: ignore object file temporaries 10 years ago
.travis.yml Merge commit 'eda183287489b2c705843aa373a19c4e46fb2fec' 10 years ago
COPYING.GPLv2 Rename COPYING.GPL --> COPYING.GPLv2 and COPYING.LGPL --> COPYING.LGPLv2.1. 16 years ago
COPYING.GPLv3 Add configure option to upgrade (L)GPL to version 3. 16 years ago
COPYING.LGPLv2.1 cosmetics: Delete empty lines at end of file. 14 years ago
COPYING.LGPLv3 Add configure option to upgrade (L)GPL to version 3. 16 years ago
CREDITS CREDITS: redirect to Git log, remove current outdated content 13 years ago
Changelog avformat: add FSB demuxer 10 years ago
INSTALL.md INSTALL: add markdown syntax 11 years ago
LICENSE.md avfilter: add rubberband wrapper 10 years ago
MAINTAINERS lavfi: remove astreamsync. 10 years ago
Makefile Merge commit 'fb472e1a11a4e0caed2c3c91da01ea8e35d9e3f8' 10 years ago
README.md README: replace http with https 10 years ago
RELEASE RELEASE: update to 2.8.git 10 years ago
arch.mak use mmi instead of loongson3 as simd-optimization flag 10 years ago
cmdutils.c all: use FFDIFFSIGN to resolve possible undefined behavior in comparators 10 years ago
cmdutils.h cmdutils: remove sws_opts usage, simplify code 10 years ago
cmdutils_common_opts.h opts: add list device sources/sinks options 11 years ago
cmdutils_opencl.c all: use FFDIFFSIGN to resolve possible undefined behavior in comparators 10 years ago
common.mak Merge commit 'c1aac39eaccd32dc3b74ccfcce701d3d888fbc6b' 10 years ago
configure configure+libm.h: add hypot emulation 10 years ago
ffmpeg.c ffmpeg: fix -copy_prior_start 0 with -copyts and input -ss 10 years ago
ffmpeg.h ffmpeg: Fixing typos and adding comments to fps code 10 years ago
ffmpeg_dxva2.c ffmpeg_dxva2: call GetDesktopWindow() in place of GetShellWindow() 10 years ago
ffmpeg_filter.c ffmpeg_filter: remove redundant null ptr check 10 years ago
ffmpeg_opt.c all: remove some casts of function pointer to void * 10 years ago
ffmpeg_qsv.c Merge commit 'fb472e1a11a4e0caed2c3c91da01ea8e35d9e3f8' 10 years ago
ffmpeg_vdpau.c ffmpeg_vdpau: Ignore decoder's max supported level 10 years ago
ffmpeg_videotoolbox.c ffmpeg/videotoolbox: protect UTGetOSTypeFromString on both VDA and VT 10 years ago
ffplay.c Replace remaining occurances of av_free_packet with av_packet_unref 10 years ago
ffprobe.c ffprobe: add support for printing packet strings metadata as packet tags 10 years ago
ffserver.c ffserver: Use AVOption API to access ffm demuxer instead of direct access depending on ABI 10 years ago
ffserver_config.c ffserver_config: check for INT_MIN before doing FFABS 10 years ago
ffserver_config.h ffserver: Use singlejpeg muxer for jpeg 10 years ago
library.mak build: add LDLIBFLAGS 10 years ago
version.sh version.sh: add note that ffversion.h is auto-generated 10 years ago

README.md

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. Few developers follow pull requests so they will likely be ignored.