From 17c39c4e5794ecf8771e218e40843ad211f2ae71 Mon Sep 17 00:00:00 2001 From: arpi Date: Sat, 28 Dec 2002 13:41:02 +0000 Subject: The following patch adds two new command line options: -sub-bkg-color n -sub-bkg-alpha n They control the color and alpha value used to initialize the subtitles and OSD BBOX. With this you can have subtitles inside a traslucent rectangle. This is useful when a movie already have "hardcoded" subtitles and you want to overwrite them with rendered subtitles avoiding too much confusion. patch by Salvador Eduardo Tropea git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8602 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libvo/sub.c | 6 ++++-- libvo/sub.h | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'libvo') diff --git a/libvo/sub.c b/libvo/sub.c index 09dd3cf1d1..a7a2ec1b7b 100644 --- a/libvo/sub.c +++ b/libvo/sub.c @@ -40,6 +40,8 @@ int sub_pos=100; int sub_width_p=100; int sub_alignment=0; /* 0=top, 1=center, 2=bottom */ int sub_visibility=1; +int sub_bkg_color=0; /* subtitles background color */ +int sub_bkg_alpha=0; // return the real height of a char: static inline int get_height(int c,int h){ @@ -97,8 +99,8 @@ static void alloc_buf(mp_osd_obj_t* obj) obj->bitmap_buffer = (unsigned char *)memalign(16, len); obj->alpha_buffer = (unsigned char *)memalign(16, len); } - memset(obj->bitmap_buffer, 0, len); - memset(obj->alpha_buffer, 0, len); + memset(obj->bitmap_buffer, sub_bkg_color, len); + memset(obj->alpha_buffer, sub_bkg_alpha, len); } // renders the buffer diff --git a/libvo/sub.h b/libvo/sub.h index 66be2a280f..6e69c4c2e1 100644 --- a/libvo/sub.h +++ b/libvo/sub.h @@ -101,6 +101,8 @@ extern int sub_width_p; extern int sub_alignment; extern int sub_visibility; extern int suboverlap_enabled; +extern int sub_bkg_color; /* subtitles background color */ +extern int sub_bkg_alpha; //extern void vo_draw_text_osd(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride)); //extern void vo_draw_text_progbar(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride)); -- cgit v1.2.3