view libvo/osd.h @ 18321:22be226a5cf5

fixes a bug when copying the image into a destination buffer smaller than the source. This occurs when the destination buffer is packed but the source buffer uses aligned h&w. patch by John Koleszar < jkoleszar AH on2 POIS com > original thread: Date: Apr 11, 2006 4:27 PM Subject: [MPlayer-dev-eng] [PATCH] Chroma plane copy in vf_expand
author gpoirier
date Thu, 27 Apr 2006 19:42:36 +0000
parents f580a7755ac5
children 3f0d00abc073
line wrap: on
line source


#ifndef __MPLAYER_OSD_H
#define __MPLAYER_OSD_H

// Generic alpha renderers for all YUV modes and RGB depths.
// These are "reference implementations", should be optimized later (MMX, etc)

extern void vo_draw_alpha_init(void); // build tables

extern void vo_draw_alpha_yv12(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
extern void vo_draw_alpha_yuy2(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
extern void vo_draw_alpha_uyvy(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
extern void vo_draw_alpha_rgb24(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
extern void vo_draw_alpha_rgb32(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
extern void vo_draw_alpha_rgb15(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
extern void vo_draw_alpha_rgb16(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);

#endif