mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-12-05 22:40:09 +01:00
vulkan_dpx: fix alignment issue
12-bit images apparently require mod-32 alignment for each line. Go figure.
This commit is contained in:
@@ -44,8 +44,11 @@ i16vec4 parse_packed_in_32(ivec2 pos, int stride)
|
||||
#else
|
||||
i16vec4 parse_packed_in_32(ivec2 pos, int stride)
|
||||
{
|
||||
uint line_off = pos.y*(stride*BITS_PER_COMP*COMPONENTS +
|
||||
(need_align << 3));
|
||||
uint line_size = stride*BITS_PER_COMP*COMPONENTS;
|
||||
line_size += line_size & 31;
|
||||
line_size += need_align << 3;
|
||||
|
||||
uint line_off = pos.y*line_size;
|
||||
uint pix_off = pos.x*BITS_PER_COMP*COMPONENTS;
|
||||
|
||||
uint off = (line_off + pix_off >> 5);
|
||||
|
||||
@@ -402,9 +402,7 @@ static int vk_decode_dpx_init(AVCodecContext *avctx)
|
||||
|
||||
switch (dpx->pix_fmt) {
|
||||
case AV_PIX_FMT_GRAY10:
|
||||
case AV_PIX_FMT_GRAY12:
|
||||
case AV_PIX_FMT_GBRAP10:
|
||||
case AV_PIX_FMT_GBRAP12:
|
||||
case AV_PIX_FMT_UYVY422:
|
||||
case AV_PIX_FMT_YUV444P:
|
||||
case AV_PIX_FMT_YUVA444P:
|
||||
|
||||
Reference in New Issue
Block a user