1
0
mirror of https://github.com/mpv-player/mpv synced 2025-02-16 20:27:23 +00:00

Fix black line on right of subtitle with -spuaa 4 by setting alpha of

border pixels to 0 after scaling, not before.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14433 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
reimar 2005-01-08 21:06:04 +00:00
parent 479bdb2c08
commit aae5663175

View File

@ -808,15 +808,6 @@ void spudec_draw_scaled(void *me, unsigned int dxs, unsigned int dys, void (*dra
} }
if (spu->scaled_image) { if (spu->scaled_image) {
unsigned int x, y; unsigned int x, y;
/* Kludge: draw_alpha needs width multiple of 8. */
if (spu->scaled_width < spu->scaled_stride)
for (y = 0; y < spu->scaled_height; ++y) {
memset(spu->scaled_aimage + y * spu->scaled_stride + spu->scaled_width, 0,
spu->scaled_stride - spu->scaled_width);
/* FIXME: Why is this one needed? */
memset(spu->scaled_image + y * spu->scaled_stride + spu->scaled_width, 0,
spu->scaled_stride - spu->scaled_width);
}
if (spu->scaled_width <= 1 || spu->scaled_height <= 1) { if (spu->scaled_width <= 1 || spu->scaled_height <= 1) {
goto nothing_to_do; goto nothing_to_do;
} }
@ -1061,6 +1052,12 @@ void spudec_draw_scaled(void *me, unsigned int dxs, unsigned int dys, void (*dra
} }
} }
nothing_to_do: nothing_to_do:
/* Kludge: draw_alpha needs width multiple of 8. */
if (spu->scaled_width < spu->scaled_stride)
for (y = 0; y < spu->scaled_height; ++y) {
memset(spu->scaled_aimage + y * spu->scaled_stride + spu->scaled_width, 0,
spu->scaled_stride - spu->scaled_width);
}
spu->scaled_frame_width = dxs; spu->scaled_frame_width = dxs;
spu->scaled_frame_height = dys; spu->scaled_frame_height = dys;
} }