From 9aa2f5ea342aa80cfb441256149750a97c8624d3 Mon Sep 17 00:00:00 2001 From: Gildas Bazin Date: Tue, 8 Mar 2005 10:58:49 +0000 Subject: [PATCH] * modules/misc/freetype.c, modules/video_filter/marq.c, time.c: a few fixes. --- modules/misc/freetype.c | 11 ++++++----- modules/video_filter/marq.c | 12 ++++++------ modules/video_filter/time.c | 8 ++++---- 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/modules/misc/freetype.c b/modules/misc/freetype.c index f45319652e..7d3e5c32b0 100644 --- a/modules/misc/freetype.c +++ b/modules/misc/freetype.c @@ -209,7 +209,7 @@ static int Create( vlc_object_t *p_this ) var_Create( p_filter, "freetype-color", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT ); var_Get( p_filter, "freetype-color", &val ); - p_sys->i_font_color = __MIN( val.i_int, 0xFFFFFF ); + p_sys->i_font_color = __MAX( __MIN( val.i_int, 0xFFFFFF ), 0 ); /* Look what method was requested */ var_Get( p_filter, "freetype-font", &val ); @@ -359,8 +359,9 @@ static int Render( filter_t *p_filter, subpicture_region_t *p_region, fmt.p_palette->palette[i][0] = i * i_y / 256; fmt.p_palette->palette[i][1] = i_u; fmt.p_palette->palette[i][2] = i_v; + fmt.p_palette->palette[i][3] = i + (255 - i) / 16; fmt.p_palette->palette[i][3] = - i + (256 - i) * (256 / (255 - p_line->i_alpha)) / 16; + (int)fmt.p_palette->palette[i][3] * (255 - p_line->i_alpha) / 255; } fmt.p_palette->palette[0][3] = 0; @@ -459,13 +460,13 @@ static int RenderText( filter_t *p_filter, subpicture_region_t *p_region_out, psz_string = p_region_in->psz_text; if( !psz_string || !*psz_string ) return VLC_EGENERIC; - i_font_color = 0xFFFFFF;//p_region_in->i_text_color; + i_font_color = __MAX( __MIN( p_region_in->i_text_color, 0xFFFFFF ), 0 ); if( i_font_color == 0xFFFFFF ) i_font_color = p_sys->i_font_color; - i_font_alpha = p_region_in->i_text_alpha; + i_font_alpha = __MAX( __MIN( p_region_in->i_text_alpha, 255 ), 0 ); if( !i_font_alpha ) i_font_alpha = 255 - p_sys->i_font_opacity; - i_font_size = p_region_in->i_text_size; + i_font_size = __MAX( __MIN( p_region_in->i_text_size, 255 ), 0 ); if( !i_font_size ) i_font_size = p_sys->i_font_size; i_red = ( i_font_color & 0x00FF0000 ) >> 16; diff --git a/modules/video_filter/marq.c b/modules/video_filter/marq.c index f84a98fe5d..50479e0b25 100644 --- a/modules/video_filter/marq.c +++ b/modules/video_filter/marq.c @@ -83,7 +83,7 @@ struct filter_sys_t #define TIMEOUT_LONGTEXT N_("Defines the time the marquee must remain " \ "displayed, in milliseconds. Default value is " \ "0 (remain forever).") -#define OPACITY_TEXT N_("Opacity, -1..255") +#define OPACITY_TEXT N_("Opacity, 0..255") #define OPACITY_LONGTEXT N_("The opacity (inverse of transparency) of " \ "overlay text. 0 = transparent, 255 = totally opaque. " ) #define SIZE_TEXT N_("Font size, pixels") @@ -91,8 +91,8 @@ struct filter_sys_t "with -1 = use freetype-fontsize" ) #define COLOR_TEXT N_("Text Default Color") -#define COLOR_LONGTEXT N_("The color of overlay text. 1 byte for each color, hexadecimal." \ - "-1 = use freetype-color, #000000 = all colors off, " \ +#define COLOR_LONGTEXT N_("The color of overlay text. 1 byte for each color, hexadecimal. " \ + "#000000 = all colors off, " \ "0xFF0000 = just Red, 0xFFFFFF = all color on [White]" ) #define POS_TEXT N_("Marquee position") @@ -123,9 +123,9 @@ vlc_module_begin(); add_integer( "marq-position", 5, NULL, POS_TEXT, POS_LONGTEXT, VLC_TRUE ); /* 5 sets the default to top [1] left [4] */ change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 ); - add_integer_with_range( "marq-opacity", 0, 0, 255, NULL, + add_integer_with_range( "marq-opacity", 255, 0, 255, NULL, OPACITY_TEXT, OPACITY_LONGTEXT, VLC_FALSE ); - add_integer( "marq-color", -1, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE ); + add_integer( "marq-color", 0xFFFFFF, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE ); change_integer_list( pi_color_values, ppsz_color_descriptions, 0 ); add_integer( "marq-size", -1, NULL, SIZE_TEXT, SIZE_LONGTEXT, VLC_FALSE ); @@ -277,7 +277,7 @@ static subpicture_t *Filter( filter_t *p_filter, mtime_t date ) p_spu->b_absolute = VLC_TRUE; } p_spu->p_region->i_text_color = p_sys->i_font_color; - p_spu->p_region->i_text_alpha = p_sys->i_font_opacity; + p_spu->p_region->i_text_alpha = 255 - p_sys->i_font_opacity; p_spu->p_region->i_text_size = p_sys->i_font_size; diff --git a/modules/video_filter/time.c b/modules/video_filter/time.c index 2df0f8e6bf..744a9b7f6e 100644 --- a/modules/video_filter/time.c +++ b/modules/video_filter/time.c @@ -80,8 +80,8 @@ struct filter_sys_t "with -1 = use freetype-fontsize" ) #define COLOR_TEXT N_("Text Default Color") -#define COLOR_LONGTEXT N_("The color of overlay text. 1 byte for each color, hexadecimal." \ - "-1 = use freetype-color, #000000 = all colors off, " \ +#define COLOR_LONGTEXT N_("The color of overlay text. 1 byte for each color, hexadecimal. " \ + "#000000 = all colors off, " \ "0xFF0000 = just Red, 0xFFFFFF = all color on [White]" ) #define POS_TEXT N_("Time position") #define POS_LONGTEXT N_( \ @@ -109,9 +109,9 @@ vlc_module_begin(); add_integer( "time-position", 9, NULL, POS_TEXT, POS_LONGTEXT, VLC_TRUE ); /* 9 sets the default to bottom-left, minimizing jitter */ change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 ); - add_integer_with_range( "time-opacity", 0, 0, 255, NULL, + add_integer_with_range( "time-opacity", 255, 0, 255, NULL, OPACITY_TEXT, OPACITY_LONGTEXT, VLC_FALSE ); - add_integer( "time-color", -1, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE ); + add_integer( "time-color", 0xFFFFFF, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE ); change_integer_list( pi_color_values, ppsz_color_descriptions, 0 ); add_integer( "time-size", -1, NULL, SIZE_TEXT, SIZE_LONGTEXT, VLC_FALSE ); set_description( _("Time display sub filter") ); -- 2.39.2