1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-08 13:22:53 +02:00
Go to file
Vivekanand 5af0ada442 avformat/allformats: Making av_register_all() thread-safe.
When multiple threads tries to call av_register_all(), the first thread sets
initialized to 1 and do the register process. At the same time, other thread might
also call av_register_all(), which returns immediately because initialized is set to 1
(even when it has not completed registering codecs). We can avoid this problem
if we set initialised to 1 while exiting from function.

Github: Closes #196
(cherry picked from commit b092ee701f)

Conflicts:

	libavformat/allformats.c
2016-08-15 18:54:34 +02:00
compat
doc doc/developer.texi: Add a code of conduct 2016-08-15 18:54:34 +02:00
libavcodec avcodec/mpegvideo: Deallocate last/next picture earlier 2016-08-15 18:54:34 +02:00
libavdevice avdevice/libdc1394: Make dc1394_frame_format and dc1394_frame_rate, static 2015-08-30 13:10:11 +02:00
libavfilter avfilter/vf_drawtext: Check return code of load_glyph() 2016-04-27 04:40:12 +02:00
libavformat avformat/allformats: Making av_register_all() thread-safe. 2016-08-15 18:54:34 +02:00
libavresample x86inc: Drop SECTION_TEXT macro 2015-08-11 11:12:01 +02:00
libavutil pgssubdec: fix subpicture output colorspace and range 2016-04-27 04:40:12 +02:00
libpostproc postproc: fix unaligned access 2016-02-23 18:01:08 +01:00
libswresample swresample/rematrix: Use clipping s16 rematrixing if overflows are possible 2016-08-15 18:54:34 +02:00
libswscale swscale/utils: Fix chrSrcHSubSample for GBRAP16 2016-02-24 00:04:51 +01:00
presets
tests avformat/utils: fix dts from pts code in compute_pkt_fields() during ascending delay 2016-04-27 04:40:11 +02:00
tools graph2dot: use avfilter_pad_get_name accessor function 2015-08-20 22:38:01 +02:00
.gitattributes
.gitignore doc/examples: rename avio_list_dir -> avio_dir_cmd 2015-08-16 02:16:47 +02:00
arch.mak
Changelog Changelog: update 2016-04-29 13:27:40 +02:00
cmdutils_common_opts.h
cmdutils_opencl.c
cmdutils.c cmdutils: Filter dst/srcw/h 2015-10-08 13:15:42 +02:00
cmdutils.h cmdutils: remove sws_opts usage, simplify code 2015-08-08 16:51:25 +02:00
common.mak
configure configure: bump copyright year to 2016 2016-01-15 16:26:06 +01:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
ffmpeg_dxva2.c
ffmpeg_filter.c lavfi: fix compilation with FF_API_OLD_FILTER_OPTS=0. 2015-08-18 22:22:49 -04:00
ffmpeg_opt.c ffmpeg: Improve help text for -target. 2015-09-02 14:32:06 +02:00
ffmpeg_vdpau.c ffmpeg_vdpau: Ignore decoder's max supported level 2015-08-16 15:02:33 -07:00
ffmpeg_videotoolbox.c avcodec: add new Videotoolbox hwaccel. 2015-08-03 10:12:10 +02:00
ffmpeg.c ffmpeg: Check that r_frame_rate is set before attempting to use it 2016-08-15 18:54:34 +02:00
ffmpeg.h ffmpeg: switch swscale option handling to AVDictionary similar to what the other subsystems use 2015-08-08 14:44:15 +02:00
ffplay.c Put remaining pieces of CODEC_FLAG_EMU_EDGE under FF_API_EMU_EDGE. 2015-08-28 14:40:59 -04:00
ffprobe.c
ffserver_config.c ffserver: use -b instead of -ab for setting audio bitrate. 2015-08-28 14:59:58 -04:00
ffserver_config.h
ffserver.c ffserver: cast PID to int64_t before printing 2015-08-21 15:47:54 +02:00
INSTALL.md
library.mak
LICENSE.md
MAINTAINERS MAINTAINERS: add myself as an OS/2 maintainer 2016-02-15 13:22:45 +01:00
Makefile avcodec: add new Videotoolbox hwaccel. 2015-08-03 10:12:10 +02:00
README.md
RELEASE update for 2.8.7 2016-04-27 05:43:39 +02:00
RELEASE_NOTES RELEASE_NOTES based on 2.7 2015-09-08 22:33:04 +02:00
version.sh

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.