[HarfBuzz] Example application using FriBidi, FreeType, and HarfBuzz

Khaled Hosny khaledhosny at eglug.org
Tue Mar 10 20:43:05 PDT 2015


I s

On Wed, Mar 11, 2015 at 12:04:01AM +0200, Salah-Eddin Shaban wrote:
> MPlayer (and mpv) converts all text to SSA in order to use libass.
> There's no other way to use libass.

I see, thanks for the explanation (I always assumed that libass can
render other subtitle formats because of this).

Regards,
Khaled

> And, again, I don't think that's the best option. The FreeType module
> in VLC is very mature, it does not feel right to just dump it instead
> of walking that last mile to support complex-scripts. And besides,
> there's work to be done either way, but I prefer to learn about the
> Bidi algorithm and complex-script shaping than converting between
> subtitle formats :)
> 
> The latter won't help me with other projects I'm currently
> contemplating. Like adding complex-script support to some text
> editors.
> 
> On Tue, Mar 10, 2015 at 7:43 PM, Khaled Hosny <khaledhosny at eglug.org> wrote:
> > At least mpv seems to be using libass to render all subtitles, so it might
> > be worth checking what are they doing.
> >
> > Regards,
> > Khaled
> >
> >  On Mar 10, 2015 12:20 PM, "Salah-Eddin Shaban" <salshaaban at gmail.com>
> > wrote:
> >
> >> That's right. VLC uses libass to render SSA/ASS subtitles. But it has
> >> its own text rendering modules to render other subtitle formats.
> >>
> >> The most common format usually found on sites like opensubtitles.org
> >> is SubRip (.srt).
> >> So to use libass here the user has to convert the files to SSA
> >> beforehand, or VLC should convert the text to SSA at runtime, which is
> >> not the best option.
> >>
> >> On Tue, Mar 10, 2015 at 4:35 AM, Behdad Esfahbod
> >> <behdad.esfahbod at gmail.com> wrote:
> >> > Hi there,
> >> >
> >> > That's very nice.  Thanks for sharing.
> >> >
> >> > That said, I was under the impression that VLC could already use
> >> HarfBuzz /
> >> > FriBidi to render subtitles using libass.  Is that not the case?
> >> >
> >> > behdad
> >> >
> >> > On 15-03-08 12:58 PM, Salah-Eddin Shaban wrote:
> >> >> Hello,
> >> >>
> >> >> I would like to thank you very much for HarfBuzz.
> >> >>
> >> >> I'm currently trying to use it to add complex-script support to the
> >> >> text renderer of VLC Media Player, mainly for Arabic subtitle files. I
> >> >> tried first using Pango but was told there were compatibility issues
> >> >> with GLib, so HarfBuzz is the way to go.
> >> >>
> >> >> I had to struggle a little with the Unicode bidirectional algorithm
> >> >> and with getting to understand how Fribidi, FreeType, and HarfBuzz
> >> >> work together. Documentation is rather scarce so I had to dig through
> >> >> some source code, and to experiment with a test application.
> >> >>
> >> >> I still can't claim to understand everything about the algorithm or
> >> >> the process of rendering text. When I compare my code to the source
> >> >> code of Pango it seems too simple to be correct. But it's producing
> >> >> correct results, as far as I can see, for all text I test it on, and
> >> >> not just subtitle files.
> >> >>
> >> >> Anyway, I thought it might help someone get the general picture, if
> >> >> you think it's appropriate as another user example on the HarfBuzz
> >> >> wiki.
> >> >>
> >> >> Any comments or corrections are greatly appreciated.
> >> >>
> >> >> https://github.com/salshaaban/BidiRenderer
> >> >> _______________________________________________
> >> >> HarfBuzz mailing list
> >> >> HarfBuzz at lists.freedesktop.org
> >> >> http://lists.freedesktop.org/mailman/listinfo/harfbuzz
> >> >>
> >> _______________________________________________
> >> HarfBuzz mailing list
> >> HarfBuzz at lists.freedesktop.org
> >> http://lists.freedesktop.org/mailman/listinfo/harfbuzz
> >>


More information about the HarfBuzz mailing list