[MPlayer-dev-eng] libass stroke problem

Ivan Kalvachev ikalvachev at gmail.com
Sat Mar 31 20:19:09 CEST 2007


2007/3/31, Evgeniy Stepanov <eugeni.stepanov at gmail.com>:
> On Saturday 31 March 2007 21:27, Ivan Kalvachev wrote:
> > Hi,
> > It seems to be normal for ssa/ass subtitles to use outline.
> > However is some rare cases I got quite ugly gaps between the character
> > and the border.
> >
> > After some bug-hunting I got to a possible solution (and probable cause).
> >
> > The outline is created by FreeType functions FT_Glyph_Stroke, rendered
> >  and then fix_outline_and_shadow() function is called.
> >
> > Changing the FreeType function to FT_Glyph_StrokeBorder(,,1,) with
> > parameter to render only the outside border fixed the problem for me.
> > My guess is that the problem is caused in the fix_..() function in the
> > areas where both glyph overlap. The change I make prevents the overlap
> > and workarounds the problem.
> >
> > I could commit that change myself, but I am not sure if this is the
> > proper way to fix it, and definitely it needs much more testing.
> >
> >
> > Eugeni , if you want sample file or screenshot before and after the
> > change mail me in private . I think the subtitles requested "Sans"
> > and got "Deja Vu Sans" as font (I'm having dejavu-ttf-2.15 installed).
> > I'll try to extract the subtitles if you need them.
>
> I've heard about similar problems. Upgrading freetype to at least 2.1.10
> always helped. Are you using an older version ?

2.1.9
I think my distribution still uses that version because 2.1.10 had
cleaned up the API and caused some programs compilation to fall. I
have no idea if these programs are fixed, but I don't want to take the
risk.

If you think that libass must require freetype 2.1.10 then it must be
detected by configure.



More information about the MPlayer-dev-eng mailing list