1
0
forked from jengelh/ffmpeg-6
ffmpeg-6/ffmpeg-c99.patch

127 lines
5.2 KiB
Diff
Raw Normal View History

From: Filip Kastl <fkastl@opensuse.org>
Date: Fri, 26 Jul 2024 14:39:42 +0000
I based the package patch on this bug report (there's a patch in
the comments)
https://bugs.gentoo.org/936433
and on these patches
https://ffmpeg.org/pipermail/ffmpeg-devel/2023-December/318685.html
http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=5860a966d2fffbbda1af0014f0a4d37a21c4f2ca
Index: ffmpeg-6.1.1/libavfilter/vsrc_testsrc_vulkan.c
===================================================================
--- ffmpeg-6.1.1.orig/libavfilter/vsrc_testsrc_vulkan.c
+++ ffmpeg-6.1.1/libavfilter/vsrc_testsrc_vulkan.c
@@ -231,7 +231,7 @@ static int testsrc_vulkan_activate(AVFil
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(AVFil
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;
Index: ffmpeg-6.1.1/libavutil/hwcontext_vaapi.c
===================================================================
--- ffmpeg-6.1.1.orig/libavutil/hwcontext_vaapi.c
+++ ffmpeg-6.1.1/libavutil/hwcontext_vaapi.c
@@ -1086,7 +1086,7 @@ static int vaapi_map_from_drm(AVHWFrames
int err, i, j;
#if !VA_CHECK_VERSION(1, 1, 0)
- unsigned long buffer_handle;
+ uintptr_t buffer_handle;
VASurfaceAttribExternalBuffers buffer_desc;
VASurfaceAttrib attrs[2] = {
{
@@ -1203,7 +1203,7 @@ static int vaapi_map_from_drm(AVHWFrames
if (!use_prime2 || vas != VA_STATUS_SUCCESS) {
int k;
- unsigned long buffer_handle;
+ uintptr_t buffer_handle;
VASurfaceAttribExternalBuffers buffer_desc;
VASurfaceAttrib buffer_attrs[2] = {
{
Index: ffmpeg-6.1.1/libavcodec/vulkan_av1.c
===================================================================
--- ffmpeg-6.1.1.orig/libavcodec/vulkan_av1.c
+++ ffmpeg-6.1.1/libavcodec/vulkan_av1.c
@@ -180,7 +180,7 @@ static int vk_av1_create_params(AVCodecC
.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);
Index: ffmpeg-6.1.1/libavcodec/vulkan_decode.c
===================================================================
--- ffmpeg-6.1.1.orig/libavcodec/vulkan_decode.c
+++ ffmpeg-6.1.1/libavcodec/vulkan_decode.c
@@ -187,10 +187,10 @@ int ff_vk_decode_prepare_frame(FFVulkanD
if (vkpic->img_view_ref)
return 0;
- vkpic->dpb_frame = NULL;
- vkpic->img_view_ref = NULL;
- vkpic->img_view_out = NULL;
- vkpic->img_view_dest = NULL;
+ vkpic->dpb_frame = VK_NULL_HANDLE;
+ 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;
Index: ffmpeg-6.1.1/libavcodec/vulkan_h264.c
===================================================================
--- ffmpeg-6.1.1.orig/libavcodec/vulkan_h264.c
+++ ffmpeg-6.1.1/libavcodec/vulkan_h264.c
@@ -315,7 +315,7 @@ static int vk_h264_create_params(AVCodec
.sType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR,
.pNext = &h264_params,
.videoSession = ctx->common.session,
- .videoSessionParametersTemplate = NULL,
+ .videoSessionParametersTemplate = VK_NULL_HANDLE,
};
/* SPS list */
Index: ffmpeg-6.1.1/libavcodec/vulkan_hevc.c
===================================================================
--- ffmpeg-6.1.1.orig/libavcodec/vulkan_hevc.c
+++ ffmpeg-6.1.1/libavcodec/vulkan_hevc.c
@@ -653,7 +653,7 @@ static int vk_hevc_create_params(AVCodec
.sType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR,
.pNext = &h265_params,
.videoSession = ctx->common.session,
- .videoSessionParametersTemplate = NULL,
+ .videoSessionParametersTemplate = VK_NULL_HANDLE,
};
HEVCHeaderSet *hdr;
Index: ffmpeg-6.1.1/libavcodec/vulkan_video.c
===================================================================
--- ffmpeg-6.1.1.orig/libavcodec/vulkan_video.c
+++ ffmpeg-6.1.1/libavcodec/vulkan_video.c
@@ -287,7 +287,7 @@ av_cold void ff_vk_video_common_uninit(F
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)