No description
Find a file
Vignesh Venkatasubramanian 7be0f48a32 lavf/matroskaenc: Write Block Keyframe correctly
Per matroska Block Structure [1], for keyframes 0th bit of the flag
should not be set (unlike SimpleBlocks). For Blocks, keyframes is
inferred by the absence of ReferenceBlock element (as done by
matroskadec). This CL writes the flag correctly and inserts the
ReferenceBlock element for non-keyframes. The timestamp inserted is
that of the immediately preceding frame (which is true for VP8 and VP9
- the only 2 codecs using the matroska block element as of now). It
also considers all non-video frames (audio, subtitles, metadata) to
be keyframes.

[1] http://www.matroska.org/technical/specs/index.html#block_structure

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 02:48:04 +02:00
compat compat/os2threads: Check av_malloc() return code 2015-06-02 15:16:45 +02:00
doc swresample: Add swr_get_out_samples() 2015-06-04 05:37:32 +02:00
libavcodec avcodec/utils: Assert that audio decoders do not report using more data than was input 2015-06-04 23:10:56 +02:00
libavdevice avdevice/v4l2: Fix vertical alignment in list_formats() output 2015-05-16 14:35:36 +02:00
libavfilter lavfi/tinterlace: Double aspect ratio for modes merge and pad. 2015-06-04 17:03:29 +02:00
libavformat lavf/matroskaenc: Write Block Keyframe correctly 2015-06-05 02:48:04 +02:00
libavresample Merge commit 'd68c05380c' 2015-06-01 00:22:47 +02:00
libavutil avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for HEVC idct functions 2015-06-04 18:39:53 +02:00
libpostproc postproc: Avoid floats in maxClipped computation 2015-05-31 01:40:12 +02:00
libswresample swresample/resample: fix typos 2015-06-04 13:04:09 +02:00
libswscale ppc: Restrict some Altivec implementations to Big Endian 2015-05-31 12:07:11 +02:00
presets presets: remove moldering iPod presets 2014-06-17 16:15:04 -08:00
tests lavf/riffenc: Set correct block align for mp2. 2015-06-04 17:03:34 +02:00
tools tools/graph2dot: use larger data types than int for array/string sizes 2015-05-12 04:01:25 +02:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore doc/examples: add directory listing example 2015-03-28 03:13:44 +01:00
arch.mak Merge commit 'eecd29b3fd' 2015-05-31 23:42:36 +02:00
Changelog Merge commit 'b08caa87c3' 2015-06-01 03:13:55 +02:00
cmdutils.c cmdutils: Fix sign error in display matrix auto-rotation code 2015-05-18 02:07:34 +02:00
cmdutils.h ffplay&cmdutils:Factor get_rotation() code out 2015-05-03 23:49:16 +02:00
cmdutils_common_opts.h opts: add list device sources/sinks options 2014-10-25 20:20:31 +02:00
cmdutils_opencl.c OpenCL: Avoid potential buffer overflow in cmdutils_opencl.c 2015-04-28 12:18:23 +02:00
common.mak x86: Makefile: fix DBG parameter evaluation 2015-03-11 01:54:07 +01:00
configure Merge commit 'e97446e600' 2015-06-03 18:52:05 +02:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
ffmpeg.c ffmpeg: do not print misleading recommanditions on 1pass vpx encoding 2015-05-26 23:42:44 +02:00
ffmpeg.h ffmpeg: Do not copy the display matrix if rotation meta-data is manually added 2015-05-18 00:52:36 +02:00
ffmpeg_dxva2.c ffmpeg_dxva2: call GetDesktopWindow() in place of GetShellWindow() 2015-06-03 16:25:08 +02:00
ffmpeg_filter.c ffmpeg_filter: use get_rotation() 2015-05-04 00:14:36 +02:00
ffmpeg_opt.c ffmpeg_opt: Set the video VBV parameters only for the video stream from -target 2015-05-25 12:13:53 +02:00
ffmpeg_vda.c vda: Cast to not discard constant qualifier and silence compiler warning 2015-04-09 01:23:33 +02:00
ffmpeg_vdpau.c Merge commit '1f9237f2ac' 2014-12-27 13:26:38 +01:00
ffplay.c ffplay&cmdutils:Factor get_rotation() code out 2015-05-03 23:49:16 +02:00
ffprobe.c ffprobe: print stream_index with frame data 2015-05-27 11:19:19 +02:00
ffserver.c ffserver: check return code of avio_alloc_context() 2015-06-02 14:45:08 +02:00
ffserver_config.c ffserver_config: reflow add_codec() 2014-12-09 01:03:01 -03:00
ffserver_config.h ffserver: dont leak child arguments 2014-11-26 23:32:33 +01:00
INSTALL.md INSTALL: add markdown syntax 2014-05-28 22:38:38 +02:00
library.mak build: add configure option pkgconfigdir 2015-05-29 20:36:10 +02:00
LICENSE.md LICENSE.md: add *_rect filters 2015-05-03 01:43:30 +02:00
MAINTAINERS MAINTAINERS: Add Lou Logan as server admin as he is root too 2015-04-06 20:24:05 +02:00
Makefile makefile: add Loongson-3 support 2015-04-27 14:10:28 +02:00
README.md README: add ffserver 2015-02-12 11:59:22 +01:00
RELEASE RELEASE: update to 2.6.git 2015-03-08 18:59:57 -03:00
version.sh version.sh: Print versions based on the last git tag for release branches 2014-07-28 15:44:59 +02: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.