FFmpeg git repo
Go to file
Martin Storsjö bef3b1f59f movenc: Allow setting start_dts/start_cts before writing actual packets
By writing a zero-sized packet, the caller can communicate the
start_dts/start_cts for the stream without actually writing
the first packet.

This allows doing random-access writing of fragments when the
start dts of the stream isn't zero, so that the edit list in the moov
is written based on timestamps from the nominal start time signaled
via the zero-sized packet, while the first proper packet written
corresponds to a later fragment.

To avoid potential unexpected behaviour, empty packets only set
start_dts if the frag_discont flag is set.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-11-11 22:53:31 +02:00
compat w32pthreads: Map MemoryBarrier to __sync_synchronize on mingw 2015-10-30 20:15:11 +02:00
doc setpts: add FRAME_RATE constant 2015-11-09 08:09:41 +01:00
libavcodec avcodec: fix doxy placement 2015-11-09 07:52:20 +01:00
libavdevice avpacket: Replace av_free_packet with av_packet_unref 2015-10-26 18:00:55 +01:00
libavfilter vsrc_color: implement frame rate 2015-11-09 08:15:26 +01:00
libavformat movenc: Allow setting start_dts/start_cts before writing actual packets 2015-11-11 22:53:31 +02:00
libavresample avresample: Document avresample_open() a little better 2015-11-05 17:25:46 +01:00
libavutil thread: Provide no-op variants for pthread_once 2015-10-14 14:35:34 +02:00
libswscale lavu: Drop the {minus,plus}1 suffix from AVComponentDescriptor fields 2015-09-07 12:37:47 +02:00
presets
tests movenc: Add a unit test for frag_discont with edit lists 2015-11-11 22:52:53 +02:00
tools avpacket: Replace av_free_packet with av_packet_unref 2015-10-26 18:00:55 +01:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore Checkasm: assembly testing and benchmarking tool 2015-07-12 16:39:07 +02:00
.travis.yml travis: fix dependencies 2015-09-12 12:29:27 +02:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog innoHeim/Rsupport Screen Capture Codec decoder 2015-10-23 14:56:43 +02:00
INSTALL
LICENSE license: Mention that vf_interlace is GPL, not LGPL 2014-08-28 19:47:43 +02:00
Makefile avconv: add support for Intel QSV-accelerated transcoding 2015-10-16 20:01:37 +02:00
README doc: Add more information in the README 2014-08-16 00:49:22 +02:00
README.md doc: Add travis badge 2015-09-14 00:19:08 +02:00
RELEASE Make the RELEASE file match with the most recent tag 2014-12-01 07:51:14 -05:00
arch.mak ppc: vsx: Implement float_dsp 2015-05-31 12:07:11 +02:00
avconv.c avconv: set packet duration for CFR video streams 2015-11-08 11:49:05 +01:00
avconv.h avconv: add support for Intel QSV-accelerated transcoding 2015-10-16 20:01:37 +02:00
avconv_dxva2.c avconv_dxva2: add hevc support 2015-01-27 09:06:05 +01:00
avconv_filter.c avconv: Do not try to configure filter outputs without streams 2015-10-07 18:45:50 +02:00
avconv_opt.c avconv: add support for Intel QSV-accelerated transcoding 2015-10-16 20:01:37 +02:00
avconv_qsv.c avconv: add support for Intel QSV-accelerated transcoding 2015-10-16 20:01:37 +02:00
avconv_vda.c avconv: vda: Unlock the pixel buffer once it is accessed 2015-07-09 00:10:13 +02:00
avconv_vdpau.c avconv_vdpau: allocate video surface of VDPAU-specified size 2014-12-25 20:47:49 +01:00
avplay.c avpacket: Replace av_free_packet with av_packet_unref 2015-10-26 18:00:55 +01:00
avprobe.c avprobe: Unref the packet once it is used 2015-10-26 18:00:54 +01:00
cmdutils.c cmdutils: Check for and report the correct codec capability 2015-10-25 22:47:13 +01:00
cmdutils.h avconv: use read_file() for reading the 2pass stats 2015-07-19 09:37:11 +02:00
cmdutils_common_opts.h
common.mak build: add Solaris symbol versioning 2015-10-11 15:42:36 +02:00
configure configure: Add a SONAME entry for the android target 2015-10-30 13:02:02 +01:00
library.mak build: Support executable only ldflags 2014-07-21 22:18:35 +02:00
version.sh

README.md

Libav

Build Status

Libav 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.
  • libavresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • avconv is a command line toolbox to manipulate, convert and stream multimedia content.
  • avplay is a minimalistic multimedia player.
  • avprobe is a simple analisys 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

Conding examples are available in the doc/example directory.

License

Libav codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.