1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-28 20:53:54 +02:00
Go to file
Clément Bœsch 321de03492 avfilter/palettegen: use AV_QSORT()
This makes the sorting of the colors along an axis (r, g or b)
predictible, and thus testable under FATE. The performance is not really
an issue here since the function is called only once at the end and will
need to sort very small number of entries, so an alternative would be to
make the sorting functions (see DECLARE_CMP_FUNC()) fallback on another
axis in case of equality. This approach was actually simpler.

I don't know if there is any advantage in using a multidimensional sort,
but it will affect the final palette one way or another.
2015-02-26 14:20:02 +01:00
compat compat/avisynth/windowsPorts/windows2linux: Add () to protect macro arguments 2015-02-18 01:49:35 +01:00
doc avfilter/palettegen: export color quantization ratio 2015-02-26 14:20:02 +01:00
libavcodec avcodec/hevc_ps: Check that log2_ctb_size is not smaller than the bounds of all profiles 2015-02-25 22:30:25 +01:00
libavdevice Merge commit '85b3b1c4ba7af9c2658442b0aafd27d613e1854b' 2015-02-25 01:44:49 +01:00
libavfilter avfilter/palettegen: use AV_QSORT() 2015-02-26 14:20:02 +01:00
libavformat avformat/adxdec: check avctx->channels for invalid values 2015-02-26 12:25:29 +01:00
libavresample Merge commit '12655c48049f9a52e5504bde90fe738862b0ff08' 2015-02-22 00:06:23 +01:00
libavutil libavutil: add x86 optimized av_popcount 2015-02-25 19:58:00 -03:00
libpostproc postproc/postprocess: Check for av_malloc() failure 2015-02-22 03:19:05 +01:00
libswresample swresample: add av_cold to init functions 2015-02-21 00:33:09 +01:00
libswscale swscale/utils: add asserts to check filterpos 2015-02-24 01:00:24 +01:00
presets presets: remove moldering iPod presets 2014-06-17 16:15:04 -08:00
tests Merge commit 'ce52869c22738ad584995d48103ce3aa2301736b' 2015-02-23 21:59:34 +01:00
tools tools/graph2dot: Check for av_malloc() failure 2015-02-22 22:51:13 +01:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore Merge commit '11e05533170485b593974cf90916425a0188e7bd' 2015-02-02 21:16:15 +01:00
arch.mak Merge commit '8675bcb0addb1c7fb0b04682d1f3f95d5b8dae14' 2014-04-07 02:15:18 +02:00
Changelog Merge commit '04a1be8e28e81f3967eace7705343c450616cc95' 2015-02-24 21:55:46 +01:00
cmdutils_common_opts.h opts: add list device sources/sinks options 2014-10-25 20:20:31 +02:00
cmdutils_opencl.c cmdutils_opencl: Use av_malloc_array() 2014-07-01 03:49:36 +02:00
cmdutils.c cmdutils: fix success path 2015-02-11 17:28:11 +01:00
cmdutils.h opts: add list device sources/sinks options 2014-10-25 20:20:31 +02:00
common.mak Makefile: improve DBG option for asm 2015-02-21 03:23:55 +01:00
configure Merge commit '521979e6b1e7a89751aebc285a40d6508f8af48f' 2015-02-23 11:26:49 +01:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1 cosmetics: Delete empty lines at end of file. 2012-02-09 12:26:45 +01:00
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: fix accurate seeking with -copyts 2014-11-24 17:31:26 +01:00
ffmpeg_opt.c ffmpeg_opt: Add missing MATCH_PER_TYPE_OPT() for data codecs 2015-02-18 22:13:35 +01:00
ffmpeg_vda.c Merge commit '1839fafa951308237c4672ffd9a94f927b26eac7' 2014-05-12 02:44:28 +02:00
ffmpeg_vdpau.c Merge commit '1f9237f2ac46dfbed1bfa1f4f0f1314c2a1d62ec' 2014-12-27 13:26:38 +01:00
ffmpeg.c ffmpeg: Print negative times like "-00:05:01.22" instead of "00:-5:-1.-22" 2015-02-11 11:22:27 +01:00
ffmpeg.h ffmpeg: Make CFR frame drop threshold user adjustable 2015-02-04 02:40:41 +01:00
ffplay.c Merge commit '733f4b05f0e120ddd0393b23f2b6d9106cf922e4' 2015-02-17 21:16:34 +01:00
ffprobe.c Merge commit 'bf704132a51f5d838365158331d4e535e1df4c8e' 2015-02-14 21:27:44 +01: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: fix wrong indentation 2015-02-15 15:15:41 -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: Formatting updates 2015-02-12 01:53:56 +01:00
MAINTAINERS MAINTAINERS: Add Oleksij as maintainer for DSS* 2015-02-20 16:17:46 +01:00
Makefile Makefile: add dependencies which require ffversion.h 2014-12-20 04:17:03 +01:00
README.md README: add ffserver 2015-02-12 11:59:22 +01:00
RELEASE RELEASE: Bump 2014-12-04 11:44:35 +01:00
RELEASE_NOTES avformat/mov: Disable XMP metadata by default 2014-12-11 21:47:37 +01: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.