Go to file
Martin Storsjö c4d6429f56 swscale: Fix aarch64 and i386 compilation failures
This unbreaks builds after c1a0e657638f7007dcc807a2d985c22631fcd6d3,
which broke with errors like

src/libswscale/aarch64/rgb2rgb.c:66:25: error: incompatible function pointer types assigning to 'void (*)(const uint8_t *, uint8_t *, uint8_t *, uint8_t *, int, int, int, int, int, const int32_t *)' (aka 'void (*)(const unsigned char *, unsigned char *, unsigned char *, unsigned char *, int, int, int, int, int, const int *)') from 'void (const uint8_t *, uint8_t *, uint8_t *, uint8_t *, int, int, int, int, int, int32_t *)' (aka 'void (const unsigned char *, unsigned char *, unsigned char *, unsigned char *, int, int, int, int, int, int *)') [-Wincompatible-function-pointer-types]
   66 |         ff_rgb24toyv12  = rgb24toyv12;
      |                         ^ ~~~~~~~~~~~

and

src/libswscale/aarch64/swscale_unscaled.c:213:29: error: incompatible function pointer types assigning to 'SwsFunc' (aka 'int (*)(struct SwsContext *, const unsigned char *const *, const int *, int, int, unsigned char *const *, const int *)') from 'int (SwsContext *, const uint8_t *const *, const int *, int, int, const uint8_t **, const int *)' (aka 'int (struct SwsContext *, const unsigned char *const *, const int *, int, int, const unsigned char **, const int *)') [-Wincompatible-function-pointer-types]
  213 |         c->convert_unscaled = nv24_to_yuv420p_neon_wrapper;
      |                             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2024-10-08 19:45:34 +02:00
compat compat: Fix the fallback definition of stdc_trailing_zeros 2024-09-25 21:37:11 +02:00
doc doc/ffmpeg.texi: add a diagram for the loopback decoder example 2024-10-07 13:46:52 +02:00
ffbuild configure: Add detection of assembler support for SVE/SVE2 2024-09-28 18:06:25 +02:00
fftools fftools/ffmpeg_filter: stop setting a no-op option 2024-10-07 13:52:55 +02:00
libavcodec avcodec/vulkan: Add support for generating GLSL strings from comp shaders 2024-10-07 13:46:44 +02:00
libavdevice avdevice/decklink_dec: fix leaks on error 2024-09-30 19:13:06 +02:00
libavfilter avfilter/src_movie: configure correct YUV attributes 2024-10-08 19:43:36 +02:00
libavformat avformat/mov: don't abort on invalid clap box data 2024-10-04 09:34:49 +02:00
libavutil vulkan: always enable GL_EXT_control_flow_attributes 2024-10-07 13:46:45 +02:00
libswresample
libswscale swscale: Fix aarch64 and i386 compilation failures 2024-10-08 19:45:34 +02:00
presets
tests tests/ref/fate: update some audio filter results 2024-10-04 17:13:56 +02:00
tools tools/target_swr_fuzzer: Limit the number of samples 2024-09-25 21:37:23 +02:00
.gitattributes
.gitignore
.mailmap
Changelog configure: drop yasm support 2024-10-07 13:45:01 +02:00
configure configure: add spirv_compiler to avcodec_suggest 2024-10-07 13:46:52 +02:00
CONTRIBUTING.md
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
INSTALL.md
LICENSE.md
Makefile
README.md
RELEASE

Librempeg README

Librempeg 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.

Examples

Coding examples are available in the doc/examples directory.

License

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

Contributing

Contributing can be done via Github pull requests.