[vlc-commits] picture: round the number of visible lines to the upper multiple
Steve Lhomme
git at videolan.org
Wed Apr 18 10:50:21 CEST 2018
vlc | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Tue Apr 17 14:41:43 2018 +0200| [81aed6c302c1d3e90267fbdea07e9db361632043] | committer: Steve Lhomme
picture: round the number of visible lines to the upper multiple
The U/V lines of 4:2:0 chroma are divided by 2. But if the height is an odd
number we end up missing the last line for these planes.
Fixes #20290
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=81aed6c302c1d3e90267fbdea07e9db361632043
---
src/misc/picture.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/misc/picture.c b/src/misc/picture.c
index 7506e47725..731d4ac492 100644
--- a/src/misc/picture.c
+++ b/src/misc/picture.c
@@ -159,10 +159,10 @@ int picture_Setup( picture_t *p_picture, const video_format_t *restrict fmt )
assert(w->den >= w->num);
p->i_lines = height * h->num / h->den;
- p->i_visible_lines = fmt->i_visible_height * h->num / h->den;
+ p->i_visible_lines = (fmt->i_visible_height + (h->den - 1)) * h->num / h->den;
p->i_pitch = width * w->num / w->den * p_dsc->pixel_size;
- p->i_visible_pitch = fmt->i_visible_width * w->num / w->den
+ p->i_visible_pitch = (fmt->i_visible_width + (w->den - 1)) * w->num / w->den
* p_dsc->pixel_size;
p->i_pixel_pitch = p_dsc->pixel_size;
More information about the vlc-commits
mailing list