No description
Find a file
Rémi Denis-Courmont c5f69719bc lavu/bswap: remove some inline assembler
C code or compiler built-ins are preferable over inline assembler for
byte-swaps as it allows for better optimisations (e.g. instruction
scheduling) which would otherwise be impossible.

As with f64c2e710f for x86 and Arm,
this removes the inline assembler on GCC (and Clang) since we now
require recent enough compiler versions. This indeed seems to work on
AArch64, SuperH and, if Zbb is enabled, RISC-V. (AVR32 was not tested
since it has no known working compilers at this time.)
2024-06-13 21:16:16 +03:00
compat avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
doc doc/developer: Provide information about git send-email and gmail 2024-06-13 00:39:57 +02:00
ffbuild riscv: add Zvbb vector bit manipulation extension 2024-05-11 11:38:49 +03:00
fftools fftools/ffmpeg_mux_init: Fix leak when using non-encoding option 2024-06-11 14:32:25 +02:00
libavcodec lavc/hevcdec: always call hevc_frame_end() after successfully decoding an AU 2024-06-13 11:44:05 +02:00
libavdevice avdevice/xcbgrab: Check sscanf() return 2024-06-12 00:39:11 +02:00
libavfilter avfilter/vf_rotate: Check ff_draw_init2() return value 2024-06-12 00:39:14 +02:00
libavformat avformat/mxfdec: use the newly added channel ids for more exact mapping 2024-06-12 19:37:01 +02:00
libavutil lavu/bswap: remove some inline assembler 2024-06-13 21:16:16 +03:00
libpostproc avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
libswresample avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
libswscale riscv: probe for Zbb extension at load time 2024-06-11 20:12:37 +03:00
presets
tests checkasm/lls: add missing random values to the test buffers 2024-06-13 14:21:18 -03:00
tools tools/decode_simple: Check avcodec_send_packet() for errors on flushing 2024-05-28 03:48:06 +02:00
.gitattributes lavf/assenc: normalize line endings to \n 2024-02-11 17:01:07 -08:00
.gitignore gitignore: add config_components.h 2022-03-17 18:35:41 -03:00
.mailmap .mailmap: Update my mailmap entry 2024-02-23 00:17:21 +01:00
Changelog changelog: add entry for xHE-AAC 2024-06-02 18:34:46 +02:00
configure configure: Disable DNN without backend 2024-06-11 19:36:54 +08:00
CONTRIBUTING.md
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS Use https for repository links 2023-03-01 21:59:10 +01:00
INSTALL.md INSTALL.md: Fix Markdown formatting 2019-01-31 10:29:16 -09:00
LICENSE.md avfilter/vf_geq: Relicense to LGPL 2019-12-28 11:20:48 +01:00
MAINTAINERS MAINTAINERS: add myself as *BSD maintainer 2024-05-13 03:40:16 +02:00
Makefile riscv: add Zvbb vector bit manipulation extension 2024-05-11 11:38:49 +03:00
README.md README: fix typo and description of libavfilter 2021-10-08 09:44:34 +05:30
RELEASE RELEASE: update after 7.0 branch 2024-04-02 13:02:39 -03: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 means to alter decoded audio and video through a directed graph of connected 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.
  • 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.

Contributing

Patches should be submitted to the ffmpeg-devel mailing list using git format-patch or git send-email. Github pull requests should be avoided because they are not part of our review process and will be ignored.