FFmpeg git repo
Go to file
Andreas Rheinhardt aa486b4b66 h264_mp4toannexb: Simplify extradata insertion
Up until now, h264_mp4toannexb stored the offset of the first SPS and
the first PPS in the (output) extradata in its context and used these
two numbers together with the size of the extradata and the pointer to
the extradata to determine what to insert when inserting extradata. This
led to some very long lines like "s->pps_offset != -1 ? s->pps_offset :
ctx->par_out->extradata_size - s->sps_offset". Therefore now pointers to
SPS and PPS are stored along with their respective sizes, so that e.g.
the above line can be changed to "s->sps_size".

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-03-06 00:58:31 +01:00
compat compat/os2threads: define INCL_DOSERRORS 2020-02-15 18:25:51 +01:00
doc doc/filters: add missed framesync part in filter docs 2020-03-05 14:09:10 +08:00
ffbuild build: add support for building CUDA files with clang 2019-08-04 19:08:08 +02:00
fftools ffmpeg: remove superfluous custom cuvid hwaccel 2020-03-03 18:11:28 -03:00
libavcodec h264_mp4toannexb: Simplify extradata insertion 2020-03-06 00:58:31 +01:00
libavdevice avdevice/decklink: add support for SDK version 11.5 2020-02-26 21:32:56 +01:00
libavfilter avfilter/f_sendcmd: implement expr flag 2020-03-03 20:38:56 +01:00
libavformat lavf/dashdec: add 3GPP TS26.247 probe in dash demuxer 2020-03-05 14:15:41 +08:00
libavresample
libavutil hwcontext_vaapi: Only accept a render node when deriving from DRM device 2020-02-24 00:09:51 +00:00
libpostproc Silence "string-plus-int" warning shown by clang. 2020-01-06 22:38:56 +01:00
libswresample Silence "string-plus-int" warning shown by clang. 2020-01-06 22:38:56 +01:00
libswscale libswscale/x86/yuv2rgb: Fix Segmentation Fault when load unaligned data 2020-02-26 11:10:46 +01:00
presets
tests avformat/mxfenc: use a zero based continuity counter 2020-03-02 22:01:47 +01:00
tools tools/target_dec_fuzzer: limit per frame samples for APE 2020-01-30 19:59:10 +01:00
.gitattributes
.gitignore tools/python: add script to convert TensorFlow model (.pb) to native model (.model) 2019-07-01 10:23:47 -03:00
.mailmap mailmap: Add another old mail address I used. 2020-02-27 13:02:06 +01:00
.travis.yml
CONTRIBUTING.md
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog avfilter: add Contrast Adaptive Sharpen video filter 2020-02-24 11:57:25 +01:00
INSTALL.md
LICENSE.md avfilter/vf_geq: Relicense to LGPL 2019-12-28 11:20:48 +01:00
MAINTAINERS MAINTAINERS: Add myself as libzmq maintainer 2020-02-15 18:25:51 +01:00
Makefile tools: add a fuzzer tool for bitstream filters 2019-12-05 20:49:15 -03:00
README.md
RELEASE RELEASE: Update value for post 4.2 branch 2019-07-21 18:37:32 +02:00
configure configure: Enable section_data_rel_ro for OpenBSD aarch64 / arm 2020-02-25 19:57:16 +01:00

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.
  • 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.