1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
6 KEYWORDS= multimedia audio net
8 SDESC[standard]= Play, record, convert, and stream audio and video
9 HOMEPAGE= https://www.ffmpeg.org/
13 SITES[main]= http://ffmpeg.org/releases/
14 DISTFILE[1]= ffmpeg-6.0.tar.xz:main
16 SPKGS[standard]= complete
24 OPTIONS_AVAILABLE= none
25 OPTIONS_STANDARD= none
27 BUILD_DEPENDS= libdrm:dev:standard
29 gettext:solinks:standard
37 libgcrypt:dev:standard
38 libvorbis:dev:standard
41 BUILDRUN_DEPENDS= gmp:shared:standard
42 libass:primary:standard
43 frei0r:primary:standard
44 fribidi:single:standard
45 libgcrypt:primary:standard
46 gnutls:primary:standard
47 rtmpdump:library:standard
48 libtheora:single:standard
49 libva:primary:standard
50 libvdpau:single:standard
51 libvorbis:primary:standard
52 libvpx:primary:standard
53 libdrm:primary:standard
58 EXRUN[tools]= ffmpeg:primary:standard
60 USES= cpe gmake iconv zlib perl:build fontconfig pkgconfig
61 gettext:build shebangfix
62 GNOME_COMPONENTS= libxml2 librsvg
67 LICENSE= LGPL3+:primary GPLv3+:primary
68 LICENSE_TERMS= primary:{{WRKSRC}}/LICENSE.md
69 LICENSE_FILE= LGPL3+:{{WRKSRC}}/COPYING.LGPLv3
70 GPLv3+:{{WRKSRC}}/COPYING.GPLv3
73 FPC_EQUIVALENT= multimedia/ffmpeg
74 SHEBANG_ADD_SH= ffbuild/libversion.sh
75 SHEBANG_FILES= doc/texi2pod.pl
78 CONFIGURE_ARGS= --cc="{{CC}}"
80 --mandir="{{MANPREFIX}}/man"
81 --datadir="{{PREFIX}}/share/ffmpeg"
82 --pkgconfigdir="{{PREFIX}}/lib/pkgconfig"
91 --disable-libopencore-amrnb
92 --disable-libopencore-amrwb
114 --disable-libopenh264
115 --disable-libopenjpeg
119 --disable-librubberband
120 --disable-libsmbclient
126 --disable-libtesseract
128 --disable-libvo-amrwbenc
138 --disable-outdev=v4l2
148 --enable-optimizations
149 --enable-runtime-cpudetect
165 INSTALL_TARGET= install-progs install-doc install-data install-libs
166 install-headers install-examples
167 PLIST_SUB= AVCODEC_SO=60.3.100
179 SWRESAMPLE_SO=4.10.100
185 @${MKDIR} ${STAGEDIR}${STD_DOCDIR}
186 .for DF in CREDITS LICENSE.md MAINTAINERS README.md RELEASE_NOTES
187 ${INSTALL_DATA} ${WRKSRC}/${DF} ${STAGEDIR}${STD_DOCDIR}
189 ${INSTALL_DATA} ${WRKSRC}/doc/APIchanges ${STAGEDIR}${STD_DOCDIR}
190 ${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${STAGEDIR}${STD_DOCDIR}
193 ${REINPLACE_CMD} -e '/^enabled libxvid/ s/$$/ -lrt/' \
194 -e '/append SHFLAGS.*version_script/d' \
197 [FILE:843:descriptions/desc.primary]
198 FFmpeg is the leading multimedia framework, able to decode, encode,
199 transcode, mux, demux, stream, filter and play pretty much anything that
200 humans and machines have created. It supports the most obscure ancient
201 formats up to the cutting edge. No matter if they were designed by some
202 standards committee, the community or a corporation. It is also highly
203 portable: FFmpeg compiles, runs, and passes our testing infrastructure
204 FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc.
205 under a wide variety of build environments, machine architectures, and
208 It contains libavcodec, libavutil, libavformat, libavfilter, libavdevice,
209 libswscale and libswresample which can be used by applications. As well
210 as ffmpeg, ffserver, ffplay and ffprobe which can be used by end users
211 for transcoding, streaming and playing.
214 [FILE:40:descriptions/desc.tools]
215 This package contains the ffmeg6 tools.
219 57be87c22d9b49c112b6d24bc67d42508660e6b718b3db89c44e47e289137082 10234012 ffmpeg-6.0.tar.xz
222 [FILE:529:manifests/plist.primary]
224 libavcodec.so.%%AVCODEC_MAJOR%%
225 libavcodec.so.%%AVCODEC_SO%%
226 libavdevice.so.%%AVDEVICE_MAJOR%%
227 libavdevice.so.%%AVDEVICE_SO%%
228 libavfilter.so.%%AVFILTER_MAJOR%%
229 libavfilter.so.%%AVFILTER_SO%%
230 libavformat.so.%%AVFORMAT_MAJOR%%
231 libavformat.so.%%AVFORMAT_SO%%
232 libavutil.so.%%AVUTIL_MAJOR%%
233 libavutil.so.%%AVUTIL_SO%%
234 libpostproc.so.%%POSTPROC_MAJOR%%
235 libpostproc.so.%%POSTPROC_SO%%
236 libswresample.so.%%SWRESAMPLE_MAJOR%%
237 libswresample.so.%%SWRESAMPLE_SO%%
238 libswscale.so.%%SCALE_MAJOR%%
239 libswscale.so.%%SCALE_SO%%
242 [FILE:30:manifests/plist.tools]
249 [FILE:437:manifests/plist.examples]
250 share/ffmpeg/examples/
253 avio_http_serve_files.c
257 decode_filter_audio.c
258 decode_filter_video.c
279 [FILE:2446:manifests/plist.dev]
325 ambient_viewing_environment.h
359 hdr_dynamic_metadata.h
360 hdr_dynamic_vivid_metadata.h
367 hwcontext_mediacodec.h
372 hwcontext_videotoolbox.h
381 mastering_display_metadata.h
418 include/libswresample/
454 libvpx-1080p.ffpreset
455 libvpx-1080p50_60.ffpreset
458 libvpx-720p50_60.ffpreset
461 [FILE:447:manifests/plist.man]
464 ffmpeg-bitstream-filters.1.gz
469 ffmpeg-protocols.1.gz
470 ffmpeg-resampler.1.gz
488 [FILE:2032:patches/patch-assy-with-bu241]
489 From effadce6c756247ea8bae32dc13bb3e6f464f0eb Mon Sep 17 00:00:00 2001
490 From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
491 Date: Sun, 16 Jul 2023 18:18:02 +0300
492 Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift
493 instructions within inline assembly
495 Fixes assembling with binutil as >= 2.41
497 Signed-off-by: James Almer <jamrial@gmail.com>
499 libavcodec/x86/mathops.h | 26 +++++++++++++++++++++++---
500 1 file changed, 23 insertions(+), 3 deletions(-)
502 --- libavcodec/x86/mathops.h.orig
503 +++ libavcodec/x86/mathops.h
505 static av_always_inline av_const int MULL(int a, int b, unsigned shift)
508 + if (__builtin_constant_p(shift))
511 "shrdl %4, %%edx, %%eax \n\t"
512 :"=a"(rt), "=d"(dummy)
513 - :"a"(a), "rm"(b), "ci"((uint8_t)shift)
514 + :"a"(a), "rm"(b), "i"(shift & 0x1F)
519 + "shrdl %4, %%edx, %%eax \n\t"
520 + :"=a"(rt), "=d"(dummy)
521 + :"a"(a), "rm"(b), "c"((uint8_t)shift)
526 @@ -113,19 +121,31 @@ __asm__ volatile(\
527 // avoid +32 for shift optimization (gcc should do that ...)
528 #define NEG_SSR32 NEG_SSR32
529 static inline int32_t NEG_SSR32( int32_t a, int8_t s){
530 + if (__builtin_constant_p(s))
531 __asm__ ("sarl %1, %0\n\t"
533 - : "ic" ((uint8_t)(-s))
537 + __asm__ ("sarl %1, %0\n\t"
539 + : "c" ((uint8_t)(-s))
544 #define NEG_USR32 NEG_USR32
545 static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
546 + if (__builtin_constant_p(s))
547 __asm__ ("shrl %1, %0\n\t"
549 - : "ic" ((uint8_t)(-s))
553 + __asm__ ("shrl %1, %0\n\t"
555 + : "c" ((uint8_t)(-s))
562 [FILE:257:patches/patch-configure]
563 --- configure.orig 2023-02-27 20:43:45 UTC
565 @@ -5536,7 +5536,7 @@ case $target_os in
570 + freebsd|midnightbsd)
573 add_extralibs -lpoll -lgnugetopt
576 [FILE:287:patches/patch-doc_Makefile]
577 --- doc/Makefile.orig 2023-02-27 20:43:45 UTC
579 @@ -122,7 +122,7 @@ install-html: $(HTMLPAGES)
582 ifdef CONFIG_MANPAGES
583 -install-progs-$(CONFIG_DOC): install-man
584 +#install-progs-$(CONFIG_DOC): install-man
586 install-man: $(MANPAGES)
587 $(Q)mkdir -p "$(MANDIR)/man1"
590 [FILE:1819:patches/patch-libavformat_rtsp.c]
591 --- libavformat/rtsp.c.orig 2023-02-27 20:43:45 UTC
592 +++ libavformat/rtsp.c
593 @@ -1674,7 +1674,12 @@ int ff_rtsp_make_setup_request(AVFormatC
596 snprintf(optbuf, sizeof(optbuf), "?ttl=%d", ttl);
597 - getnameinfo((struct sockaddr*) &addr, sizeof(addr),
598 + getnameinfo((struct sockaddr*) &addr,
599 +#if HAVE_STRUCT_SOCKADDR_SA_LEN
600 + ((struct sockaddr*) &addr)->sa_len,
604 namebuf, sizeof(namebuf), NULL, 0, NI_NUMERICHOST);
605 ff_url_join(url, sizeof(url), "rtp", NULL, namebuf,
607 @@ -1908,8 +1913,13 @@ redirect:
610 if (!getpeername(tcp_fd, (struct sockaddr*) &peer, &peer_len)) {
611 - getnameinfo((struct sockaddr*) &peer, peer_len, host, sizeof(host),
612 - NULL, 0, NI_NUMERICHOST);
613 + getnameinfo((struct sockaddr*) &peer,
614 +#if HAVE_STRUCT_SOCKADDR_SA_LEN
615 + ((struct sockaddr*) &peer)->sa_len,
619 + host, sizeof(host), NULL, 0, NI_NUMERICHOST);
622 /* request options supported by the server; this also detects server
623 @@ -2424,7 +2434,11 @@ static int sdp_read_header(AVFormatConte
626 err = getnameinfo((struct sockaddr*) &rtsp_st->sdp_ip,
627 +#if HAVE_STRUCT_SOCKADDR_SA_LEN
628 + ((struct sockaddr*) &rtsp_st->sdp_ip)->sa_len,
630 sizeof(rtsp_st->sdp_ip),
632 namebuf, sizeof(namebuf), NULL, 0, NI_NUMERICHOST);
634 av_log(s, AV_LOG_ERROR, "getnameinfo: %s\n", gai_strerror(err));
637 [FILE:338:patches/patch-libavutil_common.h]
638 --- libavutil/common.h.orig 2023-02-27 20:43:45 UTC
639 +++ libavutil/common.h
641 #include "attributes.h"
645 +#define UINT64_C(c) (c ## UL)
648 //rounded division & shift
649 #define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))