diff --git a/libavcodec/vulkan/ffv1_dec_setup.comp b/libavcodec/vulkan/ffv1_dec_setup.comp index 5da09df21c..fd297cb70a 100644 --- a/libavcodec/vulkan/ffv1_dec_setup.comp +++ b/libavcodec/vulkan/ffv1_dec_setup.comp @@ -114,8 +114,8 @@ void main(void) { const uint slice_idx = gl_WorkGroupID.y*gl_NumWorkGroups.x + gl_WorkGroupID.x; - u8buf bs = u8buf(slice_data + slice_offsets[2*slice_idx + 0]); - uint32_t slice_size = slice_offsets[2*slice_idx + 1]; + u8buf bs = u8buf(slice_data + slice_offsets[slice_idx].x); + uint32_t slice_size = slice_offsets[slice_idx].y; rac_init_dec(slice_ctx[slice_idx].c, bs, slice_size); diff --git a/libavcodec/vulkan_ffv1.c b/libavcodec/vulkan_ffv1.c index b02bc71683..1ed9d7dd6c 100644 --- a/libavcodec/vulkan_ffv1.c +++ b/libavcodec/vulkan_ffv1.c @@ -697,7 +697,7 @@ static int init_setup_shader(FFV1Context *f, FFVulkanContext *s, .type = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, .stages = VK_SHADER_STAGE_COMPUTE_BIT, .mem_quali = "readonly", - .buf_content = "uint32_t slice_offsets", + .buf_content = "u32vec2 slice_offsets", .buf_elems = 2*f->max_slice_count, }, {