Go to file
wm4 2b3e9bbfb5 avformat/mp3: skip junk at the beginning of mp3 files
Apparently it can happen that a mp3 file has junk data between id3 tag
and actual mp3 data. Skip this to avoid outputting nonsense timestamps.
(Two packets had the same timestamps, because the mp3 parser failed to
compute a frame duration.)

In this case, the junk consisted of 1044 bytes of zero, which
incidentally is the same size as normal mp3 frames in this stream. I
suspect the mp3 was edited with some tool which wiped the Xing/LAME
headers. Data near the end of the file suggests it was encoded with
"LAME3.97", but the normal Xing/LAME headers are missing. So this could
be "normal". mpg123 also attempts to skip at least 64KB of junk data by
scanning for headers.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 15:50:04 +02:00
compat avisynth: drop support of AviSynth 2.5 2015-03-25 20:37:26 +01:00
doc doc/build_system: Document GEN, text taken from the webpage 2015-05-27 12:23:01 +02:00
libavcodec avcodec: loongson3 optimized h264dsp weighted mc with mmi 2015-05-27 13:01:54 +02:00
libavdevice avdevice/v4l2: Fix vertical alignment in list_formats() output 2015-05-16 14:35:36 +02:00
libavfilter avfilter/x86/vf_hqdn3d: Fix register types 2015-05-27 05:18:55 +02:00
libavformat avformat/mp3: skip junk at the beginning of mp3 files 2015-05-27 15:50:04 +02:00
libavresample Merge commit '0ac8ff618c5e6d878c547a8877e714ed728950ce' 2015-04-29 05:46:35 +02:00
libavutil x86/cpu: add AV_CPU_FLAG_AVXSLOW flag 2015-05-27 03:31:11 -03:00
libpostproc postproc/postprocess: Use size_t to hold strlen()s value 2015-05-10 16:28:37 +02:00
libswresample swr: fix alignment issue caused by 8ch sse functions 2015-05-13 22:44:06 +02:00
libswscale libswscale/x86/hscale_fast_bilinear_simd.c: There's no need to save BX if it's in the clobber list. 2015-05-13 11:59:30 +02:00
presets presets: remove moldering iPod presets 2014-06-17 16:15:04 -08:00
tests fate: Update exif tests after 09ec31ce3a 2015-05-27 11:56:19 +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 makefile: add Loongson-3 support 2015-04-27 14:10:28 +02:00
Changelog Merge commit 'd8039ef8d221ea273aa4f1e62e5df21bf618c772' 2015-05-25 22:24:34 +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
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
common.mak x86: Makefile: fix DBG parameter evaluation 2015-03-11 01:54:07 +01:00
configure configure: Check if ID3D11VideoDecoder exists, not just the header to enable d3d11va 2015-05-26 01:51:33 +02:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS CREDITS: redirect to Git log, remove current outdated content 2013-01-31 18:02:52 +01:00
ffmpeg_dxva2.c ffmpeg_dxva2: add hevc support 2015-01-27 12:37:34 +01: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 '1f9237f2ac46dfbed1bfa1f4f0f1314c2a1d62ec' 2014-12-27 13:26:38 +01:00
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
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_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
ffserver.c ffserver: remove stale debug stanza 2015-03-08 18:24:56 -03:00
INSTALL.md INSTALL: add markdown syntax 2014-05-28 22:38:38 +02:00
library.mak x86/doc/Makefile: DBG=1 to preprocess external asm 2015-02-17 13:08:04 +01: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.