# HG changeset patch # User reimar # Date 1124454214 0 # Node ID 3934a31bcce471688428bd450f5644065deeaead # Parent 03884f9a35ccecadd7398d4ccc1f393c3ef84fef less weird OSD alpha transformation. diff -r 03884f9a35cc -r 3934a31bcce4 libvo/vo_gl.c --- a/libvo/vo_gl.c Fri Aug 19 12:16:52 2005 +0000 +++ b/libvo/vo_gl.c Fri Aug 19 12:23:34 2005 +0000 @@ -331,8 +331,10 @@ { int i; char *tmp = (char *)malloc(stride * h); - for (i = 0; i < h * stride; i++) - tmp[i] = ~(-srca[i]); + // convert alpha from weird MPlayer scale. + // in-place is not possible since it is reused for future OSDs + for (i = h * stride; i; i--) + tmp[i] = srca[i] - 1; glUploadTex(gl_target, GL_ALPHA, GL_UNSIGNED_BYTE, tmp, stride, 0, 0, w, h, 0); free(tmp);