diff libass/ass_render.c @ 28799:65b83aee82fb

Use blur with kernel [[1,2,1], [2,4,2], [1,2,1]] for \be. This is faster than gaussian blur and similar to vsfilter.
author greg
date Fri, 06 Mar 2009 01:17:05 +0000
parents a0ce88ba2557
children 83f8140eb736
line wrap: on
line diff
--- a/libass/ass_render.c	Fri Mar 06 00:47:03 2009 +0000
+++ b/libass/ass_render.c	Fri Mar 06 01:17:05 2009 +0000
@@ -43,7 +43,6 @@
 
 #define MAX_GLYPHS 3000
 #define MAX_LINES 300
-#define BE_RADIUS 1.5
 #define BLUR_MAX_RADIUS 50.0
 #define ROUND(x) ((int) ((x) + .5))
 
@@ -83,7 +82,6 @@
 	ass_settings_t settings;
 	int render_id;
 	ass_synth_priv_t* synth_priv;
-	ass_synth_priv_t* synth_priv_blur;
 
 	ass_image_t* images_root; // rendering result is stored here
 	ass_image_t* prev_images_root;
@@ -270,8 +268,7 @@
 		goto ass_init_exit;
 	}
 
-	priv->synth_priv = ass_synth_init(BE_RADIUS);
-	priv->synth_priv_blur = ass_synth_init(BLUR_MAX_RADIUS);
+	priv->synth_priv = ass_synth_init(BLUR_MAX_RADIUS);
 
 	priv->library = library;
 	priv->ftlibrary = ft;
@@ -1503,7 +1500,6 @@
 
 			// render glyph
 			error = glyph_to_bitmap(ass_renderer->synth_priv,
-					ass_renderer->synth_priv_blur,
 					info->glyph, info->outline_glyph,
 					&info->bm, &info->bm_o,
 					&info->bm_s, info->be, info->blur * frame_context.border_scale);