From a81e337fe4f778d1f4b9373a3a291c426ef8c0da Mon Sep 17 00:00:00 2001 From: Rmys Date: Fri, 27 Sep 2024 11:35:54 +0300 Subject: [PATCH] ffmpeg ver. bump --- multimedia/video/ffmpeg/actions.py | 16 ++- multimedia/video/ffmpeg/files/chromium.patch | 41 ------ ...ffmpeg-4.4.4-fix-build-svt-av1-1.5.0.patch | 44 ------ ...ffmpeg-7.0.2-chromium_method-1.patch.patch | 42 ++++++ .../ffmpeg/files/fix-vmaf-model-path.patch | 25 ---- .../video/ffmpeg/files/fix_build_x265.patch | 133 ------------------ .../video/ffmpeg/files/fix_ppc_build.patch | 21 --- multimedia/video/ffmpeg/files/fs56089.patch | 84 ----------- .../ffmpeg/files/glslang_linker_flags.patch | 33 ----- .../files/libavfilter_glslang.cpp.patch | 14 -- .../video/ffmpeg/files/libflite-flags.patch | 11 -- multimedia/video/ffmpeg/pspec.xml | 15 +- 12 files changed, 61 insertions(+), 418 deletions(-) delete mode 100644 multimedia/video/ffmpeg/files/chromium.patch delete mode 100644 multimedia/video/ffmpeg/files/ffmpeg-4.4.4-fix-build-svt-av1-1.5.0.patch create mode 100644 multimedia/video/ffmpeg/files/ffmpeg-7.0.2-chromium_method-1.patch.patch delete mode 100644 multimedia/video/ffmpeg/files/fix-vmaf-model-path.patch delete mode 100644 multimedia/video/ffmpeg/files/fix_build_x265.patch delete mode 100644 multimedia/video/ffmpeg/files/fix_ppc_build.patch delete mode 100644 multimedia/video/ffmpeg/files/fs56089.patch delete mode 100644 multimedia/video/ffmpeg/files/glslang_linker_flags.patch delete mode 100644 multimedia/video/ffmpeg/files/libavfilter_glslang.cpp.patch delete mode 100644 multimedia/video/ffmpeg/files/libflite-flags.patch diff --git a/multimedia/video/ffmpeg/actions.py b/multimedia/video/ffmpeg/actions.py index c7957f43d1..a81ec7e015 100644 --- a/multimedia/video/ffmpeg/actions.py +++ b/multimedia/video/ffmpeg/actions.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!//usr/bin/python # -*- coding: utf-8 -*- # # Licensed under the GNU General Public License, version 3. @@ -11,14 +11,13 @@ from pisi.actionsapi import shelltools def setup(): shelltools.system("./configure --prefix=/usr \ - --mandir=/usr/share/man \ + --mandir=//usr/share/man \ --disable-debug \ --disable-static \ --disable-stripping \ --enable-version3 \ --enable-nonfree \ --enable-avfilter \ - --enable-avresample \ --enable-frei0r \ --enable-gpl \ --enable-ladspa \ @@ -84,6 +83,7 @@ def setup(): --enable-libsvtav1 \ --enable-swresample \ --enable-vdpau \ + --enable-openal \ --enable-opencl \ --enable-openssl \ --enable-libdrm \ @@ -95,7 +95,6 @@ def setup(): --enable-omx \ --enable-libsrt \ --extra-ldflags='-lasound -lm'") - # --enable-openal \ def build(): autotools.make() @@ -105,5 +104,14 @@ def build(): def install(): autotools.rawInstall("DESTDIR=%s install-man" % get.installDIR()) pisitools.dobin("tools/qt-faststart") + + # pisitools.dosym("/usr/lib/libavcodec.so.60", "/usr/lib/libavcodec.so.58") + # pisitools.dosym("/usr/lib/libswscale.so.7", "/usr/lib/libswscale.so.5") + # pisitools.dosym("/usr/lib/libavutil.so.58", "/usr/lib/libavutil.so.56") + # pisitools.dosym("/usr/lib/libswresample.so.4", "/usr/lib/libswresample.so.3") + # pisitools.dosym("/usr/lib/libavfilter.so.9", "/usr/lib/libavfilter.so.7") + # pisitools.dosym("/usr/lib/libavdevice.so.60", "/usr/lib/libavdevice.so.58") + # pisitools.dosym("/usr/lib/libavformat.so.60", "/usr/lib/libavformat.so.58") + # pisitools.dosym("/usr/lib/libpostproc.so.57", "/usr/lib/libpostproc.so.55") pisitools.dodoc("Changelog", "README.md", "LICENSE.md", "COPYING*") diff --git a/multimedia/video/ffmpeg/files/chromium.patch b/multimedia/video/ffmpeg/files/chromium.patch deleted file mode 100644 index df9a0a2931..0000000000 --- a/multimedia/video/ffmpeg/files/chromium.patch +++ /dev/null @@ -1,41 +0,0 @@ -Allow libffmpeg to be built for Chromium-based browsers -https://patchwork.ffmpeg.org/patch/4500/ - -NOTE: This patch lacks the Makefile include line. We append it -manually instead to make patching across different versions easier. - -diff --git a/ffbuild/libffmpeg.mak b/ffbuild/libffmpeg.mak -new file mode 100644 -index 0000000..992cf3c ---- /dev/null -+++ b/ffbuild/libffmpeg.mak -@@ -0,0 +1,27 @@ -+LIBFFMPEG = $(SLIBPREF)ffmpeg$(SLIBSUF) -+LIBFFMPEG_LINK = $(LD) -shared -Wl,-soname,$(LIBFFMPEG) -Wl,-Bsymbolic -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--gc-sections $(LDFLAGS) $(LDLIBFLAGS) -o $(LIBFFMPEG) -+ -+ifeq ($(CONFIG_SHARED),yes) -+LIBFFMPEG_DEPS = libavcodec/$(SLIBPREF)avcodec$(SLIBSUF) libavformat/$(SLIBPREF)avformat$(SLIBSUF) libavutil/$(SLIBPREF)avutil$(SLIBSUF) -+else -+LIBFFMPEG_DEPS = libavcodec/$(LIBPREF)avcodec$(LIBSUF) libavformat/$(LIBPREF)avformat$(LIBSUF) libavutil/$(LIBPREF)avutil$(LIBSUF) libswresample/$(LIBPREF)swresample$(LIBSUF) -+endif -+ -+$(LIBFFMPEG): $(LIBFFMPEG_DEPS) -+ifeq ($(CONFIG_SHARED),yes) -+ $(LIBFFMPEG_LINK) -Wl,--no-as-needed -lavcodec -lavformat -lavutil -+else -+ $(LIBFFMPEG_LINK) -Wl,--whole-archive $^ -Wl,--no-whole-archive $(EXTRALIBS-avcodec) $(EXTRALIBS-avformat) $(EXTRALIBS-avutil) $(EXTRALIBS-swresample) -+endif -+ -+libffmpeg: $(LIBFFMPEG) -+ -+install-libffmpeg: $(LIBFFMPEG) -+ $(Q)mkdir -p "$(SHLIBDIR)/chromium" -+ $(INSTALL) -m 755 $< "$(SHLIBDIR)/chromium/$<" -+ $(STRIP) "$(SHLIBDIR)/chromium/$<" -+ -+uninstall-libffmpeg: -+ $(RM) "$(SHLIBDIR)/chromium/$(LIBFFMPEG)" -+ -+.PHONY: libffmpeg install-libffmpeg uninstall-libffmpeg --- -2.13.1 diff --git a/multimedia/video/ffmpeg/files/ffmpeg-4.4.4-fix-build-svt-av1-1.5.0.patch b/multimedia/video/ffmpeg/files/ffmpeg-4.4.4-fix-build-svt-av1-1.5.0.patch deleted file mode 100644 index c9c180f066..0000000000 --- a/multimedia/video/ffmpeg/files/ffmpeg-4.4.4-fix-build-svt-av1-1.5.0.patch +++ /dev/null @@ -1,44 +0,0 @@ -https://bugs.gentoo.org/907478 -https://bugs.gentoo.org/907493 -https://git.videolan.org/?p=ffmpeg.git;a=commit;h=c3c8f97a9804b4234e97f13b0057ffc2c9af27c0 - -From c3c8f97a9804b4234e97f13b0057ffc2c9af27c0 Mon Sep 17 00:00:00 2001 -From: Christopher Degawa -Date: Thu, 20 Oct 2022 22:55:27 -0500 -Subject: [PATCH] avcodec/libsvtav1: remove compressed_ten_bit_format and - simplify alloc_buffer - -compressed_ten_bit_format has been deprecated upstream and has no effect -and can be removed. Plus, technically it was never used in the first place -since it would require the app (ffmpeg) to set it and do additional -processing of the input frames. - -Also simplify alloc_buffer by removing calculations relating to the -non-existant processing. - -Signed-off-by: Christopher Degawa -(cherry picked from commit 031f1561cd286596cdb374da32f8aa816ce3b135) ---- a/libavcodec/libsvtav1.c -+++ b/libavcodec/libsvtav1.c -@@ -120,16 +120,12 @@ static int svt_print_error(void *log_ctx, EbErrorType err, - - static int alloc_buffer(EbSvtAv1EncConfiguration *config, SvtContext *svt_enc) - { -- const int pack_mode_10bit = -- (config->encoder_bit_depth > 8) && (config->compressed_ten_bit_format == 0) ? 1 : 0; -- const size_t luma_size_8bit = -- config->source_width * config->source_height * (1 << pack_mode_10bit); -- const size_t luma_size_10bit = -- (config->encoder_bit_depth > 8 && pack_mode_10bit == 0) ? luma_size_8bit : 0; -+ const size_t luma_size = config->source_width * config->source_height * -+ (config->encoder_bit_depth > 8 ? 2 : 1); - - EbSvtIOFormat *in_data; - -- svt_enc->raw_size = (luma_size_8bit + luma_size_10bit) * 3 / 2; -+ svt_enc->raw_size = luma_size * 3 / 2; - - // allocate buffer for in and out - svt_enc->in_buf = av_mallocz(sizeof(*svt_enc->in_buf)); --- -2.30.2 diff --git a/multimedia/video/ffmpeg/files/ffmpeg-7.0.2-chromium_method-1.patch.patch b/multimedia/video/ffmpeg/files/ffmpeg-7.0.2-chromium_method-1.patch.patch new file mode 100644 index 0000000000..9aee44a5fa --- /dev/null +++ b/multimedia/video/ffmpeg/files/ffmpeg-7.0.2-chromium_method-1.patch.patch @@ -0,0 +1,42 @@ +Submitted By: Marty Jack (martyj19 at comcast dot net) +Date: 2022-07-23 +Initial Package Version: 5.1.0 +Origin: Rediffed from ffmpeg-5.0.1-api_addition-1.patch +Upstream Status: Not accepted +Description: The ffmpeg upstream is not willing to take this as a +permanent fix and suggests that Chromium should change to keep the +information locally to Chromium. Until that happens it appears +that many distros are carrying this patch as a temporary +expedient to allow building with system ffmpeg. + +diff -Naur ffmpeg-5.1.orig/libavformat/avformat.h ffmpeg-5.1/libavformat/avformat.h +--- ffmpeg-5.1.orig/libavformat/avformat.h 2022-07-22 13:58:39.000000000 -0400 ++++ ffmpeg-5.1/libavformat/avformat.h 2022-07-22 19:34:07.490051886 -0400 +@@ -1128,6 +1128,10 @@ + */ + int64_t av_stream_get_end_pts(const AVStream *st); + ++// Chromium: We use the internal field first_dts vvv ++int64_t av_stream_get_first_dts(const AVStream *st); ++// Chromium: We use the internal field first_dts ^^^ ++ + #define AV_PROGRAM_RUNNING 1 + + /** +diff -Naur ffmpeg-5.1.orig/libavformat/demux_utils.c ffmpeg-5.1/libavformat/demux_utils.c +--- ffmpeg-5.1.orig/libavformat/demux_utils.c 2022-07-22 13:58:39.000000000 -0400 ++++ ffmpeg-5.1/libavformat/demux_utils.c 2022-07-22 19:36:39.646735587 -0400 +@@ -29,6 +29,13 @@ + #include "demux.h" + #include "internal.h" + ++// Chromium: We use the internal field first_dts vvv ++int64_t av_stream_get_first_dts(const AVStream *st) ++{ ++ return cffstream(st)->first_dts; ++} ++// Chromium: We use the internal field first_dts ^^^ ++ + struct AVCodecParserContext *av_stream_get_parser(const AVStream *st) + { + return cffstream(st)->parser; diff --git a/multimedia/video/ffmpeg/files/fix-vmaf-model-path.patch b/multimedia/video/ffmpeg/files/fix-vmaf-model-path.patch deleted file mode 100644 index 88a949b438..0000000000 --- a/multimedia/video/ffmpeg/files/fix-vmaf-model-path.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 37b8f54578ac1bcb7a63dc9038a5238fd6a58793 Mon Sep 17 00:00:00 2001 -From: Leigh Scott -Date: Sat, 23 May 2020 12:32:44 +0100 -Subject: [PATCH] fix vmaf model path - ---- - libavfilter/vf_libvmaf.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libavfilter/vf_libvmaf.c b/libavfilter/vf_libvmaf.c -index 14c3216b3a..e7273b6d1d 100644 ---- a/libavfilter/vf_libvmaf.c -+++ b/libavfilter/vf_libvmaf.c -@@ -72,7 +72,7 @@ typedef struct LIBVMAFContext { - #define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM - - static const AVOption libvmaf_options[] = { -- {"model_path", "Set the model to be used for computing vmaf.", OFFSET(model_path), AV_OPT_TYPE_STRING, {.str="/usr/local/share/model/vmaf_v0.6.1.pkl"}, 0, 1, FLAGS}, -+ {"model_path", "Set the model to be used for computing vmaf.", OFFSET(model_path), AV_OPT_TYPE_STRING, {.str="/usr/share/model/vmaf_v0.6.1.pkl"}, 0, 1, FLAGS}, - {"log_path", "Set the file path to be used to store logs.", OFFSET(log_path), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS}, - {"log_fmt", "Set the format of the log (xml or json).", OFFSET(log_fmt), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS}, - {"enable_transform", "Enables transform for computing vmaf.", OFFSET(enable_transform), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS}, --- -2.26.2 - diff --git a/multimedia/video/ffmpeg/files/fix_build_x265.patch b/multimedia/video/ffmpeg/files/fix_build_x265.patch deleted file mode 100644 index c23f5943f1..0000000000 --- a/multimedia/video/ffmpeg/files/fix_build_x265.patch +++ /dev/null @@ -1,133 +0,0 @@ ---- libavcodec/libx265.c~ 2014-03-23 23:07:50.000000000 +0100 -+++ libavcodec/libx265.c 2014-04-05 19:28:05.566614823 +0200 -@@ -38,8 +38,6 @@ - - x265_encoder *encoder; - x265_param *params; -- uint8_t *header; -- int header_size; - - char *preset; - char *tune; -@@ -66,7 +64,6 @@ - libx265Context *ctx = avctx->priv_data; - - av_frame_free(&avctx->coded_frame); -- av_freep(&ctx->header); - - x265_param_free(ctx->params); - -@@ -80,11 +77,8 @@ - { - libx265Context *ctx = avctx->priv_data; - x265_nal *nal; -- uint8_t *buf; - int sar_num, sar_den; - int nnal; -- int ret; -- int i; - - if (avctx->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL && - !av_pix_fmt_desc_get(avctx->pix_fmt)->log2_chroma_w && -@@ -121,11 +115,11 @@ - av_reduce(&sar_num, &sar_den, - avctx->sample_aspect_ratio.num, - avctx->sample_aspect_ratio.den, 4096); -- ctx->params->bEnableVuiParametersPresentFlag = 1; -- ctx->params->bEnableAspectRatioIdc = 1; -- ctx->params->aspectRatioIdc = 255; -- ctx->params->sarWidth = sar_num; -- ctx->params->sarHeight = sar_den; -+ ctx->params->vui.bEnableVuiParametersPresentFlag = 1; -+ ctx->params->vui.bEnableAspectRatioIdc = 1; -+ ctx->params->vui.aspectRatioIdc = 255; -+ ctx->params->vui.sarWidth = sar_num; -+ ctx->params->vui.sarHeight = sar_den; - - if (x265_max_bit_depth == 8) - ctx->params->internalBitDepth = 8; -@@ -148,6 +142,9 @@ - ctx->params->rc.rateControlMode = X265_RC_ABR; - } - -+ if (!(avctx->flags & CODEC_FLAG_GLOBAL_HEADER)) -+ ctx->params->bRepeatHeaders = 1; -+ - if (ctx->x265_opts) { - AVDictionary *dict = NULL; - AVDictionaryEntry *en = NULL; -@@ -180,35 +177,23 @@ - return AVERROR_INVALIDDATA; - } - -- ret = x265_encoder_headers(ctx->encoder, &nal, &nnal); -- if (ret < 0) { -- av_log(avctx, AV_LOG_ERROR, "Cannot encode headers.\n"); -- libx265_encode_close(avctx); -- return AVERROR_INVALIDDATA; -- } -- -- for (i = 0; i < nnal; i++) -- ctx->header_size += nal[i].sizeBytes; -- -- ctx->header = av_malloc(ctx->header_size + FF_INPUT_BUFFER_PADDING_SIZE); -- if (!ctx->header) { -- av_log(avctx, AV_LOG_ERROR, -- "Cannot allocate HEVC header of size %d.\n", ctx->header_size); -- libx265_encode_close(avctx); -- return AVERROR(ENOMEM); -- } -+ if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER) { -+ avctx->extradata_size = x265_encoder_headers(ctx->encoder, &nal, &nnal); -+ if (avctx->extradata_size <= 0) { -+ av_log(avctx, AV_LOG_ERROR, "Cannot encode headers.\n"); -+ libx265_encode_close(avctx); -+ return AVERROR_INVALIDDATA; -+ } - -- buf = ctx->header; -- for (i = 0; i < nnal; i++) { -- memcpy(buf, nal[i].payload, nal[i].sizeBytes); -- buf += nal[i].sizeBytes; -- } -+ avctx->extradata = av_malloc(avctx->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE); -+ if (!avctx->extradata) { -+ av_log(avctx, AV_LOG_ERROR, -+ "Cannot allocate HEVC header of size %d.\n", avctx->extradata_size); -+ libx265_encode_close(avctx); -+ return AVERROR(ENOMEM); -+ } - -- if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER) { -- avctx->extradata_size = ctx->header_size; -- avctx->extradata = ctx->header; -- ctx->header_size = 0; -- ctx->header = NULL; -+ memcpy(avctx->extradata, nal[0].payload, avctx->extradata_size); - } - - return 0; -@@ -250,8 +235,6 @@ - for (i = 0; i < nnal; i++) - payload += nal[i].sizeBytes; - -- payload += ctx->header_size; -- - ret = ff_alloc_packet(pkt, payload); - if (ret < 0) { - av_log(avctx, AV_LOG_ERROR, "Error getting output packet.\n"); -@@ -259,14 +242,6 @@ - } - dst = pkt->data; - -- if (ctx->header) { -- memcpy(dst, ctx->header, ctx->header_size); -- dst += ctx->header_size; -- -- av_freep(&ctx->header); -- ctx->header_size = 0; -- } -- - for (i = 0; i < nnal; i++) { - memcpy(dst, nal[i].payload, nal[i].sizeBytes); - dst += nal[i].sizeBytes; diff --git a/multimedia/video/ffmpeg/files/fix_ppc_build.patch b/multimedia/video/ffmpeg/files/fix_ppc_build.patch deleted file mode 100644 index 3c35dc4d21..0000000000 --- a/multimedia/video/ffmpeg/files/fix_ppc_build.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- a/libswscale/ppc/swscale_vsx.c -+++ b/libswscale/ppc/swscale_vsx.c -@@ -154,7 +154,7 @@ - } - } - --static void yuv2plane1_nbps_vsx(const int16_t *src, uint16_t *dest, int dstW, -+static av_always_inline void yuv2plane1_nbps_vsx(const int16_t *src, uint16_t *dest, int dstW, - int big_endian, int output_bits) - { - const int dst_u = -(uintptr_t)dest & 7; -@@ -273,7 +273,7 @@ - } - } - --static void yuv2plane1_16_vsx(const int32_t *src, uint16_t *dest, int dstW, -+static av_always_inline void yuv2plane1_16_vsx(const int32_t *src, uint16_t *dest, int dstW, - int big_endian, int output_bits) - { - const int dst_u = -(uintptr_t)dest & 7; - diff --git a/multimedia/video/ffmpeg/files/fs56089.patch b/multimedia/video/ffmpeg/files/fs56089.patch deleted file mode 100644 index 6aca38f9f9..0000000000 --- a/multimedia/video/ffmpeg/files/fs56089.patch +++ /dev/null @@ -1,84 +0,0 @@ -diff -rupN ffmpeg-3.4.orig/libavformat/aviobuf.c ffmpeg-3.4/libavformat/aviobuf.c ---- ffmpeg-3.4.orig/libavformat/aviobuf.c 2017-11-02 14:57:16.078834563 +0100 -+++ ffmpeg-3.4/libavformat/aviobuf.c 2017-11-02 15:02:52.549816990 +0100 -@@ -531,6 +531,24 @@ void avio_write_marker(AVIOContext *s, i - s->last_time = time; - } - -+static int read_packet_wrapper(AVIOContext *s, uint8_t *buf, int size) -+{ -+ int ret; -+ -+ if (!s->read_packet) -+ return AVERROR_EOF; -+ ret = s->read_packet(s->opaque, buf, size); -+#if FF_API_OLD_AVIO_EOF_0 -+ if (!ret && !s->max_packet_size) { -+ av_log(NULL, AV_LOG_WARNING, "Invalid return value 0 for stream protocol\n"); -+ ret = AVERROR_EOF; -+ } -+#else -+ av_assert2(ret || s->max_packet_size); -+#endif -+ return ret; -+} -+ - /* Input stream */ - - static void fill_buffer(AVIOContext *s) -@@ -569,10 +587,7 @@ static void fill_buffer(AVIOContext *s) - len = s->orig_buffer_size; - } - -- if (s->read_packet) -- len = s->read_packet(s->opaque, dst, len); -- else -- len = 0; -+ len = read_packet_wrapper(s, dst, len); - if (len <= 0) { - /* do not modify buffer if EOF reached so that a seek back can - be done without rereading data */ -@@ -644,8 +659,7 @@ int avio_read(AVIOContext *s, unsigned c - if (len == 0 || s->write_flag) { - if((s->direct || size > s->buffer_size) && !s->update_checksum) { - // bypass the buffer and read data directly into buf -- if(s->read_packet) -- len = s->read_packet(s->opaque, buf, size); -+ len = read_packet_wrapper(s, buf, size); - - if (len <= 0) { - /* do not modify buffer if EOF reached so that a seek back can -@@ -711,7 +725,7 @@ int avio_read_partial(AVIOContext *s, un - return -1; - - if (s->read_packet && s->write_flag) { -- len = s->read_packet(s->opaque, buf, size); -+ len = read_packet_wrapper(s, buf, size); - if (len > 0) - s->pos += len; - return len; -diff -rupN ffmpeg-3.4.orig/libavformat/avio.h ffmpeg-3.4/libavformat/avio.h ---- ffmpeg-3.4.orig/libavformat/avio.h 2017-11-02 14:57:16.078834563 +0100 -+++ ffmpeg-3.4/libavformat/avio.h 2017-11-02 14:59:15.602300896 +0100 -@@ -452,6 +452,8 @@ void avio_free_directory_entry(AVIODirEn - * @param write_flag Set to 1 if the buffer should be writable, 0 otherwise. - * @param opaque An opaque pointer to user-specific data. - * @param read_packet A function for refilling the buffer, may be NULL. -+ * For stream protocols, must never return 0 but rather -+ * a proper AVERROR code. - * @param write_packet A function for writing the buffer contents, may be NULL. - * The function may not change the input buffers content. - * @param seek A function for seeking to specified byte position, may be NULL. -diff -rupN ffmpeg-3.4.orig/libavformat/version.h ffmpeg-3.4/libavformat/version.h ---- ffmpeg-3.4.orig/libavformat/version.h 2017-11-02 14:57:16.082167807 +0100 -+++ ffmpeg-3.4/libavformat/version.h 2017-11-02 15:04:01.704627612 +0100 -@@ -97,6 +97,9 @@ - #ifndef FF_API_OLD_ROTATE_API - #define FF_API_OLD_ROTATE_API (LIBAVFORMAT_VERSION_MAJOR < 58) - #endif -+#ifndef FF_API_OLD_AVIO_EOF_0 -+#define FF_API_OLD_AVIO_EOF_0 (LIBAVFORMAT_VERSION_MAJOR < 58) -+#endif - - - #ifndef FF_API_R_FRAME_RATE diff --git a/multimedia/video/ffmpeg/files/glslang_linker_flags.patch b/multimedia/video/ffmpeg/files/glslang_linker_flags.patch deleted file mode 100644 index 9826b50f51..0000000000 --- a/multimedia/video/ffmpeg/files/glslang_linker_flags.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 98ea1a662ee172961feaa374fe8d26078838d250 Mon Sep 17 00:00:00 2001 -From: Philip Langdale -Date: Mon, 17 Aug 2020 16:19:39 -0700 -Subject: [PATCH] configure: Add additional glslang libraries to make linking - work - -The latest builds of glslang introduce new libraries that need to be -linked for all symbols to be fully resolved. - -This change will break building against older installations of glslang -and it's very hard to tell them apart as the library change upstream -was not accompanied by any version bump and no official release has -been made with this change it - just lots of people packaging up git -snapshots. So, apologies in advance. ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure b/configure -index 9ff246b..f13d1a8 100755 ---- a/configure -+++ b/configure -@@ -6308,7 +6308,7 @@ enabled fontconfig && enable libfontconfig - enabled libfontconfig && require_pkg_config libfontconfig fontconfig "fontconfig/fontconfig.h" FcInit - enabled libfreetype && require_pkg_config libfreetype freetype2 "ft2build.h FT_FREETYPE_H" FT_Init_FreeType - enabled libfribidi && require_pkg_config libfribidi fribidi fribidi.h fribidi_version_info --enabled libglslang && require_cpp libglslang glslang/SPIRV/GlslangToSpv.h "glslang::TIntermediate*" -lglslang -lOSDependent -lHLSL -lOGLCompiler -lSPVRemapper -lSPIRV -lSPIRV-Tools-opt -lSPIRV-Tools -lpthread -lstdc++ -+enabled libglslang && require_cpp libglslang glslang/SPIRV/GlslangToSpv.h "glslang::TIntermediate*" -lglslang -lMachineIndependent -lOSDependent -lHLSL -lOGLCompiler -lGenericCodeGen -lSPVRemapper -lSPIRV -lSPIRV-Tools-opt -lSPIRV-Tools -lpthread -lstdc++ - enabled libgme && { check_pkg_config libgme libgme gme/gme.h gme_new_emu || - require libgme gme/gme.h gme_new_emu -lgme -lstdc++; } - enabled libgsm && { for gsm_hdr in "gsm.h" "gsm/gsm.h"; do --- -2.7.4 diff --git a/multimedia/video/ffmpeg/files/libavfilter_glslang.cpp.patch b/multimedia/video/ffmpeg/files/libavfilter_glslang.cpp.patch deleted file mode 100644 index 44028b258d..0000000000 --- a/multimedia/video/ffmpeg/files/libavfilter_glslang.cpp.patch +++ /dev/null @@ -1,14 +0,0 @@ -X-Git-Url: http://git.ffmpeg.org/gitweb/ffmpeg.git/blobdiff_plain/6f84e92172a12f14d24c4467b2e58611afd726bd..4dab04622a6cf2a31da26a51dedb60ec44ac89a4:/libavfilter/glslang.cpp - -diff --git a/libavfilter/glslang.cpp b/libavfilter/glslang.cpp -index 497df6e..125eb5c 100644 ---- a/libavfilter/glslang.cpp -+++ b/libavfilter/glslang.cpp -@@ -24,7 +24,6 @@ extern "C" { - } - - #include --#include - #include - #include - diff --git a/multimedia/video/ffmpeg/files/libflite-flags.patch b/multimedia/video/ffmpeg/files/libflite-flags.patch deleted file mode 100644 index e6ce722749..0000000000 --- a/multimedia/video/ffmpeg/files/libflite-flags.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure.orig 2020-01-18 19:46:04.694206468 +0300 -+++ b/configure 2020-01-18 19:46:21.610206846 +0300 -@@ -6203,7 +6203,7 @@ - enabled libfdk_aac && { check_pkg_config libfdk_aac fdk-aac "fdk-aac/aacenc_lib.h" aacEncOpen || - { require libfdk_aac fdk-aac/aacenc_lib.h aacEncOpen -lfdk-aac && - warn "using libfdk without pkg-config"; } } --flite_extralibs="-lflite_cmu_time_awb -lflite_cmu_us_awb -lflite_cmu_us_kal -lflite_cmu_us_kal16 -lflite_cmu_us_rms -lflite_cmu_us_slt -lflite_usenglish -lflite_cmulex -lflite" -+flite_extralibs="-lflite_cmu_time_awb -lflite_cmu_us_awb -lflite_cmu_us_kal -lflite_cmu_us_kal16 -lflite_cmu_us_rms -lflite_cmu_us_slt -lflite_usenglish -lflite_cmulex -lflite -lasound -lm" - enabled libflite && require libflite "flite/flite.h" flite_init $flite_extralibs - enabled fontconfig && enable libfontconfig - enabled libfontconfig && require_pkg_config libfontconfig fontconfig "fontconfig/fontconfig.h" FcInit diff --git a/multimedia/video/ffmpeg/pspec.xml b/multimedia/video/ffmpeg/pspec.xml index 3f1eb199d3..9f93b0f52c 100644 --- a/multimedia/video/ffmpeg/pspec.xml +++ b/multimedia/video/ffmpeg/pspec.xml @@ -15,7 +15,7 @@ app:console A command-line tool to record, convert and stream audio and video FFmpeg is a complete solution to record, convert and stream audio and video. - https://ffmpeg.org/releases/ffmpeg-4.4.5.tar.xz + https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.xz srt-devel freetype-devel @@ -61,7 +61,7 @@ vid.stab-devel libxcb-devel libzimg-devel - + openal-devel alsa-lib-devel libvdpau-devel libtheora-devel @@ -108,8 +108,7 @@ - fix-vmaf-model-path.patch - + ffmpeg-7.0.2-chromium_method-1.patch.patch @@ -180,7 +179,7 @@ vid.stab libxcb libzimg - + openal rtmpdump libbluray libdc1394 @@ -231,9 +230,9 @@ - 2024-08-31 - 4.4.5 - Rebuild. + 2024-09-27 + 7.0.2 + Version bump. Pisi Linux Community admin@pisilinux.org