commit 2f091577b45f04ca25f58b1b73c46d1830d91b1e
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Tue Apr 16 14:04:39 2024 +0100
Update to latest monthly release
.gitignore | 1 +
buildfix.patch | 251 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
cinelerra-gg.spec | 6 +-
sources | 2 +-
4 files changed, 257 insertions(+), 3 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 95bfdda..a7495cd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,3 +13,4 @@
/cinelerra-gg-2023-09.tar.gz
/cinelerra-gg-2023-11.tar.gz
/cinelerra-gg-2024-01.tar.gz
+/cinelerra-gg-2024-02.tar.gz
diff --git a/buildfix.patch b/buildfix.patch
index c320305..6964d0f 100644
--- a/buildfix.patch
+++ b/buildfix.patch
@@ -22,3 +22,254 @@
+ AC_MSG_RESULT($ARCHFLAGS)
+ fi
+
+--- /dev/null
++++ b/cinelerra-5.1/thirdparty/src/ffmpeg-6.1.patch11 2024-04-05 11:41:38.408463128
+0100
+@@ -0,0 +1,131 @@
++From 68ef9a29478fad450ec29ec14120afad3938e75b Mon Sep 17 00:00:00 2001
++From: Sandro Mani <manisandro(a)gmail.com>
++Date: Tue, 30 Jan 2024 09:16:13 +0100
++Subject: [PATCH] Fix -Wint-conversion and -Wincompatible-pointer-types errors
++
++---
++ libavcodec/pcm-bluray.c | 4 ++--
++ libavcodec/pcm-dvd.c | 2 +-
++ libavcodec/vulkan_av1.c | 2 +-
++ libavcodec/vulkan_decode.c | 6 +++---
++ libavcodec/vulkan_video.c | 2 +-
++ libavfilter/vsrc_testsrc_vulkan.c | 4 ++--
++ libavutil/hwcontext_vaapi.c | 2 +-
++ 7 files changed, 11 insertions(+), 11 deletions(-)
++
++diff --git a/libavcodec/pcm-bluray.c b/libavcodec/pcm-bluray.c
++index f656095..56fa373 100644
++--- a/libavcodec/pcm-bluray.c
+++++ b/libavcodec/pcm-bluray.c
++@@ -167,7 +167,7 @@ static int pcm_bluray_decode_frame(AVCodecContext *avctx, AVFrame
*frame,
++ samples *= num_source_channels;
++ if (AV_SAMPLE_FMT_S16 == avctx->sample_fmt) {
++ #if HAVE_BIGENDIAN
++- bytestream2_get_buffer(&gb, dst16, buf_size);
+++ bytestream2_get_buffer(&gb, (uint8_t*)dst16, buf_size);
++ #else
++ do {
++ *dst16++ = bytestream2_get_be16u(&gb);
++@@ -187,7 +187,7 @@ static int pcm_bluray_decode_frame(AVCodecContext *avctx, AVFrame
*frame,
++ if (AV_SAMPLE_FMT_S16 == avctx->sample_fmt) {
++ do {
++ #if HAVE_BIGENDIAN
++- bytestream2_get_buffer(&gb, dst16,
avctx->ch_layout.nb_channels * 2);
+++ bytestream2_get_buffer(&gb, (uint8_t*)dst16,
avctx->ch_layout.nb_channels * 2);
++ dst16 += avctx->ch_layout.nb_channels;
++ #else
++ channel = avctx->ch_layout.nb_channels;
++diff --git a/libavcodec/pcm-dvd.c b/libavcodec/pcm-dvd.c
++index 419b2a1..319746c 100644
++--- a/libavcodec/pcm-dvd.c
+++++ b/libavcodec/pcm-dvd.c
++@@ -157,7 +157,7 @@ static void *pcm_dvd_decode_samples(AVCodecContext *avctx, const
uint8_t *src,
++ switch (avctx->bits_per_coded_sample) {
++ case 16: {
++ #if HAVE_BIGENDIAN
++- bytestream2_get_buffer(&gb, dst16, blocks * s->block_size);
+++ bytestream2_get_buffer(&gb, (uint8_t*)dst16, blocks * s->block_size);
++ dst16 += blocks * s->block_size / 2;
++ #else
++ int samples = blocks * avctx->ch_layout.nb_channels;
++diff --git a/libavcodec/vulkan_av1.c b/libavcodec/vulkan_av1.c
++index 4998bf7..9730e4b 100644
++--- a/libavcodec/vulkan_av1.c
+++++ b/libavcodec/vulkan_av1.c
++@@ -180,7 +180,7 @@ static int vk_av1_create_params(AVCodecContext *avctx, AVBufferRef
**buf)
++ .sType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR,
++ .pNext = &av1_params,
++ .videoSession = ctx->common.session,
++- .videoSessionParametersTemplate = NULL,
+++ .videoSessionParametersTemplate = VK_NULL_HANDLE,
++ };
++
++ err = ff_vk_decode_create_params(buf, avctx, ctx, &session_params_create);
++diff --git a/libavcodec/vulkan_decode.c b/libavcodec/vulkan_decode.c
++index a89d84f..fdbcbb4 100644
++--- a/libavcodec/vulkan_decode.c
+++++ b/libavcodec/vulkan_decode.c
++@@ -188,9 +188,9 @@ int ff_vk_decode_prepare_frame(FFVulkanDecodeContext *dec, AVFrame
*pic,
++ return 0;
++
++ vkpic->dpb_frame = NULL;
++- vkpic->img_view_ref = NULL;
++- vkpic->img_view_out = NULL;
++- vkpic->img_view_dest = NULL;
+++ vkpic->img_view_ref = VK_NULL_HANDLE;
+++ vkpic->img_view_out = VK_NULL_HANDLE;
+++ vkpic->img_view_dest = VK_NULL_HANDLE;
++
++ vkpic->destroy_image_view = vk->DestroyImageView;
++ vkpic->wait_semaphores = vk->WaitSemaphores;
++diff --git a/libavcodec/vulkan_video.c b/libavcodec/vulkan_video.c
++index 236aa12..c5144bd 100644
++--- a/libavcodec/vulkan_video.c
+++++ b/libavcodec/vulkan_video.c
++@@ -287,7 +287,7 @@ av_cold void ff_vk_video_common_uninit(FFVulkanContext *s,
++ if (common->session) {
++ vk->DestroyVideoSessionKHR(s->hwctx->act_dev, common->session,
++ s->hwctx->alloc);
++- common->session = NULL;
+++ common->session = VK_NULL_HANDLE;
++ }
++
++ if (common->nb_mem && common->mem)
++diff --git a/libavfilter/vsrc_testsrc_vulkan.c b/libavfilter/vsrc_testsrc_vulkan.c
++index 8761c21..1720bfa 100644
++--- a/libavfilter/vsrc_testsrc_vulkan.c
+++++ b/libavfilter/vsrc_testsrc_vulkan.c
++@@ -231,7 +231,7 @@ static int testsrc_vulkan_activate(AVFilterContext *ctx)
++ return AVERROR(ENOMEM);
++
++ err = ff_vk_filter_process_simple(&s->vkctx, &s->e,
&s->pl, s->picref, NULL,
++- NULL, &s->opts,
sizeof(s->opts));
+++ VK_NULL_HANDLE, &s->opts,
sizeof(s->opts));
++ if (err < 0)
++ return err;
++ }
++@@ -250,7 +250,7 @@ static int testsrc_vulkan_activate(AVFilterContext *ctx)
++ frame->sample_aspect_ratio = s->sar;
++ if (!s->draw_once) {
++ err = ff_vk_filter_process_simple(&s->vkctx, &s->e,
&s->pl, frame, NULL,
++- NULL, &s->opts, sizeof(s->opts));
+++ VK_NULL_HANDLE, &s->opts,
sizeof(s->opts));
++ if (err < 0) {
++ av_frame_free(&frame);
++ return err;
++diff --git a/libavutil/hwcontext_vaapi.c b/libavutil/hwcontext_vaapi.c
++index 12bc951..d326ad6 100644
++--- a/libavutil/hwcontext_vaapi.c
+++++ b/libavutil/hwcontext_vaapi.c
++@@ -1203,7 +1203,7 @@ static int vaapi_map_from_drm(AVHWFramesContext *src_fc, AVFrame
*dst,
++
++ if (!use_prime2 || vas != VA_STATUS_SUCCESS) {
++ int k;
++- unsigned long buffer_handle;
+++ size_t buffer_handle;
++ VASurfaceAttribExternalBuffers buffer_desc;
++ VASurfaceAttrib buffer_attrs[2] = {
++ {
++--
++2.43.0
++
+--- /dev/null
++++ b/cinelerra-5.1/thirdparty/src/ffmpeg-6.1.patch12 2024-04-16 13:40:34.288851906
+0100
+@@ -0,0 +1,114 @@
++From: Jan Ekström <jeebjp(a)gmail.com>
++Date: Wed, 14 Feb 2024 20:40:54 +0000 (+0200)
++Subject: {avcodec,tests}: rename the bundled Mesa AV1 vulkan video headers
++X-Git-Url:
http://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/fef22c87ada45174...
++
++{avcodec,tests}: rename the bundled Mesa AV1 vulkan video headers
++
++This together with adjusting the inclusion define allows for the
++build to not fail with latest Vulkan-Headers that contain the
++stabilized Vulkan AV1 decoding definitions.
++
++Compilation fails currently as the AV1 header is getting included
++via hwcontext_vulkan.h -> <vulkan/vulkan.h> -> vulkan_core.h, which
++finally includes vk_video/vulkan_video_codec_av1std.h and the decode
++header, leading to the bundled header to never defining anything
++due to the inclusion define being the same.
++
++This fix is imperfect, as it leads to additional re-definition
++warnings for things such as
++VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_SPEC_VERSION. , but it is
++not clear how to otherwise have the bundled version trump the
++actually standardized one for a short-term compilation fix.
++
++(cherry picked from commit e06ce6d2b45edac4a2df04f304e18d4727417d24)
++---
++
++diff --git a/libavcodec/Makefile b/libavcodec/Makefile
++index ec57e53e30..eb25707ef5 100644
++--- a/libavcodec/Makefile
+++++ b/libavcodec/Makefile
++@@ -1284,7 +1284,7 @@ SKIPHEADERS += %_tablegen.h
\
++ aacenc_quantization.h \
++ aacenc_quantization_misc.h \
++ bitstream_template.h \
++- vulkan_video_codec_av1std.h \
+++ vulkan_video_codec_av1std_mesa.h \
++ $(ARCH)/vpx_arith.h \
++
++ SKIPHEADERS-$(CONFIG_AMF) += amfenc.h
++@@ -1306,7 +1306,7 @@ SKIPHEADERS-$(CONFIG_XVMC) += xvmc.h
++ SKIPHEADERS-$(CONFIG_VAAPI) += vaapi_decode.h vaapi_hevc.h vaapi_encode.h
++ SKIPHEADERS-$(CONFIG_VDPAU) += vdpau.h vdpau_internal.h
++ SKIPHEADERS-$(CONFIG_VIDEOTOOLBOX) += videotoolbox.h vt_internal.h
++-SKIPHEADERS-$(CONFIG_VULKAN) += vulkan.h vulkan_video.h vulkan_decode.h
vulkan_video_codec_av1std_decode.h
+++SKIPHEADERS-$(CONFIG_VULKAN) += vulkan.h vulkan_video.h vulkan_decode.h
vulkan_video_codec_av1std_decode_mesa.h
++ SKIPHEADERS-$(CONFIG_V4L2_M2M) += v4l2_buffers.h v4l2_context.h v4l2_m2m.h
++ SKIPHEADERS-$(CONFIG_ZLIB) += zlib_wrapper.h
++
++diff --git a/libavcodec/vulkan_video.h b/libavcodec/vulkan_video.h
++index b28e3fe0bd..51f44dd543 100644
++--- a/libavcodec/vulkan_video.h
+++++ b/libavcodec/vulkan_video.h
++@@ -23,8 +23,8 @@
++ #include "vulkan.h"
++
++ #include <vk_video/vulkan_video_codecs_common.h>
++-#include "vulkan_video_codec_av1std.h"
++-#include "vulkan_video_codec_av1std_decode.h"
+++#include "vulkan_video_codec_av1std_mesa.h"
+++#include "vulkan_video_codec_av1std_decode_mesa.h"
++
++ #define CODEC_VER_MAJ(ver) (ver >> 22)
++ #define CODEC_VER_MIN(ver) ((ver >> 12) & ((1 << 10) - 1))
++diff --git a/libavcodec/vulkan_video_codec_av1std_decode.h
b/libavcodec/vulkan_video_codec_av1std_decode_mesa.h
++similarity index 89%
++rename from libavcodec/vulkan_video_codec_av1std_decode.h
++rename to libavcodec/vulkan_video_codec_av1std_decode_mesa.h
++index a697c00593..e2f37b4e6e 100644
++--- a/libavcodec/vulkan_video_codec_av1std_decode.h
+++++ b/libavcodec/vulkan_video_codec_av1std_decode_mesa.h
++@@ -14,8 +14,8 @@
++ * limitations under the License.
++ */
++
++-#ifndef VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_
++-#define VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_ 1
+++#ifndef VULKAN_VIDEO_CODEC_AV1STD_DECODE_MESA_H_
+++#define VULKAN_VIDEO_CODEC_AV1STD_DECODE_MESA_H_ 1
++
++ /*
++ ** This header is NOT YET generated from the Khronos Vulkan XML API Registry.
++diff --git a/libavcodec/vulkan_video_codec_av1std.h
b/libavcodec/vulkan_video_codec_av1std_mesa.h
++similarity index 99%
++rename from libavcodec/vulkan_video_codec_av1std.h
++rename to libavcodec/vulkan_video_codec_av1std_mesa.h
++index c46236c457..c91589eee2 100644
++--- a/libavcodec/vulkan_video_codec_av1std.h
+++++ b/libavcodec/vulkan_video_codec_av1std_mesa.h
++@@ -14,8 +14,8 @@
++ * limitations under the License.
++ */
++
++-#ifndef VULKAN_VIDEO_CODEC_AV1STD_H_
++-#define VULKAN_VIDEO_CODEC_AV1STD_H_ 1
+++#ifndef VULKAN_VIDEO_CODEC_AV1STD_MESA_H_
+++#define VULKAN_VIDEO_CODEC_AV1STD_MESA_H_ 1
++
++ /*
++ ** This header is NOT YET generated from the Khronos Vulkan XML API Registry.
++diff --git a/tests/ref/fate/source b/tests/ref/fate/source
++index c575789dd5..8bb58b61f1 100644
++--- a/tests/ref/fate/source
+++++ b/tests/ref/fate/source
++@@ -23,8 +23,8 @@ compat/djgpp/math.h
++ compat/float/float.h
++ compat/float/limits.h
++ libavcodec/bitstream_template.h
++-libavcodec/vulkan_video_codec_av1std.h
++-libavcodec/vulkan_video_codec_av1std_decode.h
+++libavcodec/vulkan_video_codec_av1std_decode_mesa.h
+++libavcodec/vulkan_video_codec_av1std_mesa.h
++ tools/decode_simple.h
++ Use of av_clip() where av_clip_uintp2() could be used:
++ Use of av_clip() where av_clip_intp2() could be used:
diff --git a/cinelerra-gg.spec b/cinelerra-gg.spec
index 3576c2f..b60fae6 100644
--- a/cinelerra-gg.spec
+++ b/cinelerra-gg.spec
@@ -1,8 +1,7 @@
# disable lto rfbz#6570
%global _lto_cflags %nil
-%global build_type_safety_c 0
-%global git_tag 2024-01
+%global git_tag 2024-02
%global tag_version %(c=%{git_tag}; echo "${c}" | tr '-' '.')
Name: cinelerra-gg
@@ -226,6 +225,9 @@ desktop-file-validate
%{buildroot}%{_datadir}/applications/%{name}.desktop
%changelog
+* Tue Apr 16 2024 Leigh Scott <leigh123linux(a)gmail.com> - 5.1.2024.02-1
+- Update to latest monthly release
+
* Sat Feb 03 2024 Leigh Scott <leigh123linux(a)gmail.com> - 5.1.2024.01-1
- Update to latest monthly release
diff --git a/sources b/sources
index d7776c9..9a0af89 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (cinelerra-gg-2024-01.tar.gz) =
559a6e076261ef0542dd5c37e24ca74c9dcc503c21cdcae0e240cb6aa15d90e74a518f5bba2743c4a408c7c3ceccfa9eeb7e98ff38ce6a94e70881408597177a
+SHA512 (cinelerra-gg-2024-02.tar.gz) =
b4e9de630729d0cf23f094e944ee72f7fef9c83fbf89c575f9b3441bdaa81fde5d44671ae615f5b97c6ca34b79e50c7c7ac41283ed2a93553585a2f5850de1fe