README Enigma-Skin (for VDR using text2skin)

by Andreas Brugger aka. Brougs78 (brougs78@gmx.net)



0. TABLE OF CONTENTS
====================

1. INTRODUCTION
2. INSTALLATION
3. TROUBLESHOOTING
4. ACKNOWLEDGMENT



################################################################################



1. INTRODUCTION
===============

This is a skin for the VDR (Video Disc Recorder by Klaus Schmidinger).

Enigma is inspired by the DBOX-II-Skin Enigma. The skin includes several
channel-logos, which match the general design of the skin (80 x 80 Pixels with
15 colors, where the first is transparent). The logos are mostly by speedbomb 
(http://www.speedbomb.de/hobby/myhtpc/index.php?view=logos) and a few 
provides by Thomas of the VDR-Portal (http://senderlogos.vdr-developer.org).
If the skin doesn't find a suitable logo in 'Enigma/hqlogos' it tries to find
a logo in 'Enigma/logos' where I have put some logos Enigma-users have sent me.
So if you have some nice logos I will add them to the pack if you send them to
me.

The skin uses a modified version of the font 'Bitstream Vera Sans Mono' by
'The Gnome Project' (http://www.gnome.org/fonts/). It was kindly provided by
Frank Jepsen (http://www.jepsennet.de/vdr/html/enigma.html). It now includes the
'WarEagle'-icons and some other improvements (see Frank's homepage for mor info
on that).



2. INSTALLATION
===============

2.1. REQUIREMENTS
-----------------

The skin requires the latest CVS-version of the text2skin-plugin by Sascha
Volkenandt.

You only need to put the skin into your text2skin-directory. So you should get
two new folders in the text2skin-directory:
   EnigmaBase
   EnigmaBin
Without the link EnigmaBin Enigma won't be available in the OSD-settings of VDR.

INFO: This is the 'binary version' of the skin, so you don't need any additinal
scripts or patches to get the skin running. This is useful for users of
VDR-distributions or distribution-builder. This version is only scalable in
vertical direction and has a fixed width of 600 Pixels. If you want to customize
this 'binary version' you can take a look at the script CreateEnigmaBins.sh in
the scripts-directory of Enigma.
Most of the additional features are not possible in this 'binary version' so
there is a second branch, which needs the skin UpdateEnigma.sh and a patched
text2skin to use the extended features (see the section 'CUSTOMIZING THE SKIN').

User of unmodded DVB-cards (2 MB OSD-memory) need to be aware, that this skin
will not run on the hardware, if too big values are chosen for width or height
(VDR-setup -> OSD). Depending on the driver/firmware/dvb-card-combination there
should be about 90000 Bytes of OSD-memory available. So you could start with
a save guess of width x height = 600 x 460 and work your way up to 600 x 485 and
test if it works (all objects are shown).

If you don't want any additional features you are done and you can use the skin
now; otherwise it is recommended to read the following chapters.


2.2 WAREAGLE-ICONS-PATCH
------------------------

To use/see the WarEagle-icons, you have to apply the Patch 
'WarEagle'-icon-patch. The last version I know of is from TomG
(http://toms-cafe.de/vdr/download/vdr-wareagle-icons+setup-1.3.22.diff).
If you have problems with the font, you can use the original 'Vera'-font by
   cd /dir/of/the/Enigma/skin
   rm Font.ttf FontBold.ttf
   ln -s fonts/ttf-bitstream-vera-1.10/Vera.ttf Font.ttf
   ln -s fonts/ttf-bitstream-vera-1.10/VeraBd.ttf FontBold.ttf


2.2 ALTERNATIVE THEME
---------------------

If you use the 'binary version' of the skin 'EnigmaBin' then you have to copy
the 'DarkBlue'-theme to your tehems-directory. The Theme is in the
themes-directory of Enigma and should be coppied to <vdr-config-dir>/themes.

If you use the customized version of the Skin 'Enigma' the theme is
automatically coppied to the <vdr-config-dir>/themes-directory by executing the
UpdateEnigma.sh-script.

BTW: If you've created a nice theme for Enigma please let me know and mail it to
me ... if you like to contribute it.


2.3 CUSTOMIZING THE SKIN
------------------------

If you want a customized version of the skin with several new features, you
should disable the EnigmaBin-skin so there are not two skins in the
text2skin-directory as every additional skin slows down VDR:
   cd <text2skin-config-dir>
   mv EnigmaBin Enigma
Now text2skin tries to find Enigma which has to be built with the script
UpdateEnigma.sh. See infos and settings in the header of the script
to customize the skin too your needs. The script also provides horizontal
scalability, but you have to build the skin every time you change the osd-width
so the changes take effect.
As most users won't change their OSD-Width (changing the OSD-Height doesn't
require an update) that often, you could start this script whenever you change
it. An other way to go (the way I use the script) is to include the script in
your runvdr within the loop where vdr is startet. So if you change the Settings
you only have to restart VDR and the skin is up to date.
The basic script was kindly provided by sundin from the VDR-Portal and extended
with the help of Viking from the VDR-Portal.


DETAILS ON THE SCRIPT:

You have to at least configure the CONFIGPATH, which tells the script the
config-path of vdr. with T2S_EXT you can specify if you have patched text2skin
(see 'ADDITIONAL FEATURES' below).
MARQUEE_DELAY specifies the speed at which scrolling text moves around. Smaller
values are for smaller delays (unit [ms]) and therfore for faster scrolling. The
speed is limited by the hardware (speed of the cpu and the osd of the
dvb-device), so scrolling-speed can differ depending on the complexity of the
menu if you choose small values.
MIN_DISK_SPACE specifies the threshold in hours, at which the warning low
disk-space is shown in the main-menu.
With the next items you can select whether certain menu-itmes should scroll
or not. The affected menu-parts are described in the script.
SHOW_DATETIME defines, if in the small info-screens (all except menu: like
channel-info, replay-info, audio-selection ...) the date/time is shown on the
upper right.
SHOW_SEPERATOR_PLUS defines, if there should be a '+' in front of every
seperator. This looks IMHO quite nice in the channels-menu, but some plugins
use seperators for unchangeable values an then it doesn't suite that well.
So if you like the '+' you can turn in on here.
GREEN_MODE disables the info about the recording-size (in MB) in the recording-
info-screen, which keeps disks from spinning up. This is usefull if you have
distirbuted recordings and don't want to keep the disks running. If you disable
the green-mode text2skin scans the directory of the recording to determine the
size if you view the recording-info.
IMPRINT_TUX shows the tux on the sidebar.


ADDITIONAL FEATURES (T2S_EXT):

Enigma includes several patches which reside in Enigma/patches. The first one
('text2skin_extensions-x.y.diff') adds some features to text2skin. To actually
activate the functionality you have to recompile text2skin after patching and
enable the extensions in the 'UpdateEnigma.sh'-script:
   T2S_EXT="true"
After an update of the skin (run the 'UpdateEnigma.sh'-script) and a restart of
vdr there are some new features in text2skin and in the skin:
 - text2skin-extensions (setup options)
    - Option to enable a scrollbar in the menus
    - Option to disable left- and right-scrolling of scrolling text
      (if disabled the text only scrolls to the left)
    - Option to enable a reset of the scrolling-text-position (marquee) if you
      select a different item
    - Option to enable a check of timer-conflicts using the timeline-Plugin
      (this requires the 'timeline_CheckTimerConflictService-x.y.diff'-patch
      for the timeline-plugin)
      If there are conflicting timers a warning is shown in the main-menu
    - An extension to text2skin which makes it possible to force a ceratain
      font. This very usefull feature (which makes it possible to finally use
      the rotor-plugin with Enigma) was kindly provided by the
      rotor-plugin-author Thomas Bergwinkl
    - Adds a lot of new tokens which are used in Enigma
 - Enigma-extensions
    - The sidebar in the main menu shows the next/current 3 timers and some
      info about them
    - If enabled the sidebar shows a warning if there are timer-conflicts
    - In the replay-view the title for vdr-recordings is splitted, so the title
      is viewed on top and the date/time of the recording on the bottom
    - The recording-info shows the size and the length of the recording
    - Audio-infos in Live-View, Replay, extended EPG and recording-info



3. TROUBLESHOOTING
==================

P: The skin is not selectable in VDR
S: Ensure you have the latest text2skin-version (cvs) and you load the plugin.
   Also check if the skin is located in the directory
   <vdr-config-dir>/plugins/text2skin/ and has the name Enigma.
   Ensure that you have called the UpdateEnigma.sh-script so the skin
   (file Enigma.skin) is created. First you have to customize the paths in
   the script of course.
   The log is also a good place to look at, because text2skin is usually very
   communicative if there is something wrong.

P: The log tells that the Enigma-skin is too big to be viewed or is not
   correctly aligned.
S: Reduce the size of the skin (see '2. REQUIREMENTS') and ensure that you have
   recompiled the plugins text2skin after updating/patching vdr.

P: The log tells errors like:
   'ERROR: Unexpected token {NextTimerName}' or
   'ERROR: error in skin file'
S:	You most likely didn't patch text2skin but have enabled T2S_EXT in
   'UpdateEnigma.sh'. Deactivate T2S_EXT (set it to "false"), run the
   'UpdateEnigma.sh'-script and restart VDR.
   
P: Parts of the Menu aren't showing (lines of text are missing)
S: You most likely use a unmodded DVB-FF-card with 2 MB of memory. You have to
   keep the size of the skin within certain limits (see '2. REQUIREMENTS')

P: Replaying a movie with the mplayer-plugin and pressing the 'Menu'-Button only
   shows the first 2 or 3 lines of the menu. There can also be other kind of
   distortions like the replay-menu is not viewed correctly.
S: This seems to depend on the video-resolution of the viewed video. I received
   only two reports on this problem so it is quite specific. What you can do is
   the following:
   
   In both cases the horizontal resolution was 688 pixel and in the one case I
   have investigated closely it was enough to remove this resolution from the
   mplayer.sh.conf-file:
      XResPAL=(352    480     528     544     704     720)
   
   If this doesn't help you should reduce the maximum size of the scaled video
   in the mplayer.sh.conf:
      XResPAL=(352    480     528     544)
      XResNTSC=(352   480     512)
   Thanks to alib and Scorp from the vdr-portal for hunting this down.

P: The skin is really slow
S: There is a bug in text2skin, which makes VDR slower if there are more skins
   loaded. To get the maximum performance there should only be one skin at a
   time in that directory. You can make an additional directory (e.g.
   'not_used') and put all your temporary unused skins there, so they are not
   loaded durin start-up.



4. ACKNOWLEDGMENT
=================

I want to thank Sascha Volkenandt and Kenny (vdr-portal) for the great support
while designing this skin. Also I want to thank the people at vdr-portal and
from the VDR-ML for providing me with a lot of constructive feedback which
greatly improved the look and feel of the skin.

