[mythtv-users] OSD fonts
Michael T. Dean
mtdean at thirdcontact.com
Thu Jan 22 22:25:19 UTC 2009
On 01/21/2009 11:24 PM, Josh White wrote:
> I've noticed that most OSD themes I try to use do not match the
> screenshots I see. The screenshots show very nice looking menus and
> descriptions of what show is on, but when I install them on my
> machine, the fonts are always a basic, not-so-attractive font that
> doesn't match at all. I would think that whatever font is required
> would be included with the OSD theme, but maybe I'm wrong in that
> Grey OSD is the only theme that works as-advertised on my machines.
> I'm running 3 Ubuntu/Mythbuntu machines (8.10), and a Debian machine
> (etch), and I see the same results on all of them.
> Am I missing something obvious?
Some OSD themes provide their own fonts (i.e. Gray-OSD provides
DejaVuSans, Retro-OSD provides Vera and Vera Bold, and Mepo-wide OSD
provides HandelGotD ). Others used to, but because of issues in some
versions of freetype2 that were shipped with popular distros have
commented out the font <filename> information and no longer use
theme-provided fonts (i.e. blootube-osd, ProjectGrayhem-OSD, and
glass-wide OSD --OK, technically, blootube-osd and ProjectGrayhem-OSD
still provide the fonts--Vera and Vera Bold--but they don't use them
anymore). One, Titivillus-OSD , tries to specify the font Arial (but
does so incorrectly***); however, even if it had done so correctly, it
could not provide its font because of license issues (it's copyright
Microsoft Corp.) Note that in trunk, Retro-OSD once again specifies the
font (Vera Sans).
When an OSD requests a specific font (as specified by the <filename>
sub-element of the <font> element in osd.xml)***, Myth attempts to
locate that font in the Myth font dirs ($HOME/.mythtv , then
$PREFIX/share/mythtv , then the OSD theme directory , then just trying
whatever value was provided in the filename element as if it's an
absolute filename). If it cannot create the font using the filename
specified, the OSD will not contain text.
If the OSD does /not/ request a specific font ( blootube-osd ,
ProjectGrayhem-OSD , Retro-OSD , blueosd , isthmus , Iulius-OSD,
glass-wide OSD ), Myth uses the font specified in the setting, "OSD
font", in frontend settings under Setup|TV Settings|Playback OSD. Note
that Myth will /only/ allow you to select a font that's found in the
Myth share dir (but /not/ the selected OSD theme dir, in case you change
your OSD theme; nor the conf dir ($HOME/.mythtv) in case you run Myth as
a different user). That means that in a "standard" installation of
Myth, you have only 3 choices--FreeSans, FreeSansBold, and FreeMono. If
you hack the DB (don't, please) and put in a value that does not
correspond to the filename of a font in the Myth share dir, your OSD
will not contain text.
If you put other fonts in the share dir ( $PREFIX/share/mythtv ), you
can choose additional fonts.
If you use a theme that does not specify a font (see osd.xml and look
for the the <filename> sub-element under the <font> element), you get
whatever font /you/ specify. If you use a theme that specifies a font,
you should get the specified font. This is why your system "never"
looks the same as the screenshots you've seen, with the exception of
Grey-OSD (which provides DejaVuSans) and, if you were to try them,
Retro-OSD (which provides Vera and Vera Bold), and Mepo-wide OSD (which
If you want to change the font, verify that no <filename> is specified
for the <font> in osd.xml and set the "OSD font" to the desired font.
Or specify the <filename> of the desired font in osd.xml.
***Many osd.xml files provide the face attribute to the <font> element;
however, it looks like this attribute is not used for OSD fonts.
Instead, themers who had done UI themes (where the attribute is used)
probably just "carried over" that attribute/habit of using that
attribute to OSD theme creation.
More information about the mythtv-users