diff options
author | wm4 <wm4@nowhere> | 2020-05-18 19:29:25 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2020-05-18 19:29:25 +0200 |
commit | 2256a9e42b290b67652a2d4a43a434dade49f66c (patch) | |
tree | 10545c4cc781a1338fe12d0faa038b130f1fc12e | |
parent | 55f6ba62bedfe177701d46ef09afde69ca5ab0eb (diff) | |
download | mpv-2256a9e42b290b67652a2d4a43a434dade49f66c.tar.bz2 mpv-2256a9e42b290b67652a2d4a43a434dade49f66c.tar.xz |
video: fix AV_PIX_FMT_UYYVYY411 allocation
My previous commit added support for this format, but it was still
broken, and prevented the allocation code from working. It's unknown
whether it's correct now (because this pixfmt is so obscure and useless,
there are no known samples around), but who cares.
-rw-r--r-- | test/ref/img_formats.txt | 3 | ||||
-rw-r--r-- | video/img_format.c | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/test/ref/img_formats.txt b/test/ref/img_formats.txt index 4e02b8deaa..0a4c24eba6 100644 --- a/test/ref/img_formats.txt +++ b/test/ref/img_formats.txt @@ -1198,11 +1198,10 @@ uyvy422: ctype=uint 2: p=0 st=4 o=2 sh=0 d=8 uyyvyy411: [GENERIC] ctype=uint Basic desc: [yuv][le][be] - planes=1, chroma=2:0 align=0:1 + planes=1, chroma=2:0 align=4:1 {12/[0:0] } 0: 48bits w=4 {8:8} {0:8} {24:8} {} extra_luma_offsets=[ 16 32 40] - [NOALLOC] AVD: name=uyyvyy411 chroma=2:0 flags=0x0 0: p=0 st=4 o=1 sh=0 d=8 1: p=0 st=6 o=0 sh=0 d=8 diff --git a/video/img_format.c b/video/img_format.c index 17a07af6a9..6e3a78a2c6 100644 --- a/video/img_format.c +++ b/video/img_format.c @@ -573,7 +573,7 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) desc.align_x = 1 << desc.chroma_xs; desc.align_y = 1 << desc.chroma_ys; - if ((desc.bpp[0] % 8) != 0) + if ((desc.bpp[0] * (layout.extra_w + 1) % 8) != 0) desc.align_x = 8 / desc.bpp[0]; // expect power of 2 return desc; |