Go to file
2015-06-04 16:29:25 +02:00
dtd added viewelement <vdrstatistics> in main menu 2015-05-14 16:55:56 +02:00
extrecinfo added extented recording information 2014-10-20 17:35:52 +02:00
fonts/VDROpenSans initial commit version 0.0.1 2014-09-27 09:25:14 +02:00
libcore changed skin installation that VDR main loop is not blocked 2015-06-04 10:57:25 +02:00
libskindesignerapi implemented Skin Repositories 2015-05-30 16:43:59 +02:00
libtemplate implemented Skin Repositories 2015-05-30 16:43:59 +02:00
po implemented possibility to delete skins 2015-06-04 16:29:25 +02:00
scripts added viewelement <vdrstatistics> in main menu 2015-05-14 16:55:56 +02:00
services added cardsystem name to ecm info 2015-04-29 18:22:17 +02:00
skins added glassy to skinrepository 2015-05-31 16:50:33 +02:00
skinskeleton provide 10 last recordings in <lastrecordings> viewelement 2015-05-22 13:58:48 +02:00
themes corrected themes 2015-05-31 16:32:10 +02:00
views fixed display of channel separators 2015-05-31 06:41:40 +02:00
.gitignore introduced libskindesignerapi 2015-04-02 15:09:41 +02:00
config.c implemented possibility to delete skins 2015-06-04 16:29:25 +02:00
config.h implemented possibility to delete skins 2015-06-04 16:29:25 +02:00
COPYING initial commit version 0.0.1 2014-09-27 09:25:14 +02:00
designer.c added viewelement <endtime> in displayreplay to display the time the currently replayed recording ends 2015-03-31 11:53:25 +02:00
designer.h implemented Skin Repositories 2015-05-30 16:43:59 +02:00
displaychannel.c expanded shifting features 2015-05-10 12:55:23 +02:00
displaychannel.h implemented dvbapi service interface, added viewelement ecminfo in displaychannel 2015-04-26 14:05:14 +02:00
displaymenu.c changed skin installation that VDR main loop is not blocked 2015-06-04 10:57:25 +02:00
displaymenu.h changed build and install process 2015-04-06 15:34:08 +02:00
displaymessage.c added possibility to draw a debug grid in views 2015-04-11 16:21:33 +02:00
displaymessage.h initial commit version 0.0.1 2014-09-27 09:25:14 +02:00
displayplugin.c added possibility to draw a debug grid in views 2015-04-11 16:21:33 +02:00
displayplugin.h changed build and install process 2015-04-06 15:34:08 +02:00
displayreplay.c fixed timeshifttotal in displayreplay timeshift mode 2015-05-22 14:30:16 +02:00
displayreplay.h added timeshift support in displayreplay 2015-05-16 07:57:14 +02:00
displaytracks.c added possibility to draw a debug grid in views 2015-04-11 16:21:33 +02:00
displaytracks.h initial commit version 0.0.1 2014-09-27 09:25:14 +02:00
displayvolume.c added possibility to draw a debug grid in views 2015-04-11 16:21:33 +02:00
displayvolume.h initial commit version 0.0.1 2014-09-27 09:25:14 +02:00
HISTORY implemented possibility to delete skins 2015-06-04 16:29:25 +02:00
Makefile implemented Skin Repositories 2015-05-30 16:43:59 +02:00
README updated READNE 2015-05-31 16:44:50 +02:00
setup.c implemented possibility to delete skins 2015-06-04 16:29:25 +02:00
setup.h changed skin installation that VDR main loop is not blocked 2015-06-04 10:57:25 +02:00
skindesigner.c Version 0.5.1 2015-05-31 16:51:12 +02:00

This is a "plugin" for the Video Disk Recorder (VDR).

Written by:                  Louis Braun <louis DOT braun AT gmx DOT de>

Project's homepage:          http://projects.vdr-developer.org/projects/plg-skindesigner

Latest version: http://projects.vdr-developer.org/projects/plg-skindesigner/files
GIT repository: git clone git://projects.vdr-developer.org/vdr-plugin-skindesigner.git

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
See the file COPYING for more information.

Description
-----------

Skindesigner is a VDR skin engine that displays XML based Skins.

Currently three XML Skins (MetrixHD, nOpacity freestyle and blackhole) are included in
<pluginsourcedir>/skins/

Requirements
------------

- VDR version >= 2.0.0

- cairo

- librsvg-2 >= 2.36.0

- libxml2

- libcurl

- for scaling the video picture to fit into the VDR menu window please use
  softhddevice plugin revision 87c1c7be (2013-01-01) or newer.

- epgsearch Git since commit ba7c6277 (2013-01-03) to correctly replace the
  schedules menu with epgsearch

Installation
------------

Skindesigner consists of the Skindesigner Plugin itself and a shared library
called "libSkindesignerAPI" which allows other Plugins to use the facilities of
Skindesigner. Since these other Plugins need to have access to the library,
the library has to be proper installed on your system. 

With a "make install" both the plugin and the library are installed on your 
system. The destination where the library will be installed can be set with 
the PREFIX parameter: "PREFIX=/usr make install". Default of PREFIX is
/usr/local.  

After installation check if libskindesignerapi.pc is correctly found in your
PKG_CONFIG_PATH. Other Plugins using the library issue the following 
commands in their makefiles which should also work on your commandline:
pkg-config --cflags libskindesignerapi 
pkg-config --libs libskindesignerapi
pkg-config --modversion libskindesignerapi

Note that skindesigner itself and all plugins which use libSkindesignerAPI have to
be build against the same major verison of the library to be compatible.

After installation you have to care about the paths for the XML skins and epg images. 
The following paths can be set at startup:

-s <SKINPATH>, --skinpath=<SKINPATH>
    Path where XML skins get installed by "make install" or by package manager
    (Default: <ResourceDirectory>/plugins/skindesigner/skins/)

-i <INSTALLERPATH>, --installerpath=<INSTALLERPATH>
    Path where XML skins are installed by the Skindesigner Installer
    (Default: <ConfigDirectory>/plugins/skindesigner/installerskins/)

-l <LOGOPATH>, --logopath=<LOGOPATH>
    Path to common logo set for all skins (Default: <ResourceDirectory>/plugins/skindesigner/logos/)

-e path, --epgimages=path
    Path to the epgimages (Default: <CacheDirectory>/epgimages/)

ResourceDirectory, ConfigDirectory and CacheDirectory are taken from your VDR configuration
(make.config or vdr.pc).

During a "make install" the included skins are automatically copied from
<SkinSourceDirectory>/skins/ to the configured skin path.

Important: All Skins (both the skins installed by a packet manager or by "make install" and the
skins installed with Skindesigner) need the directory "dtd" accessible one level above the directory 
the skin itself is placed. With a "make install" the dtd directory is copied to <ResourceDirectory>/dtd.
If you use a <SKINPATH> different to the default, please add a symlink in the appropriate directory 
to <ResourceDirectory>/dtd. 
Add this symlink necessarily for the skins installed to <INSTALLERPATH>. If
<INSTALLERPATH> is /var/cache/vdr/plugins/skindesigner/skins for instance, and the dtd directory
is located at /etc/vdr/plugins/skindesigner/dtd, create the following symlink:

ln -s /etc/vdr/plugins/skindesigner/dtd /var/cache/vdr/plugins/skindesigner/dtd

For S2-6400 Users: Disable High Level OSD, otherwise the plugin will not be
loaded because lack of true color support

For Xine-Plugin Users: Set "Blend scaled Auto" as OSD display mode to achieve
an suitable true color OSD.

For Xineliboutput Users: Start vdr-sxfe with the --hud option enabled

Since the default skin MetrixHD uses VDROpenSans as font which is not installed
per default, you may want to install this font (included in
<SkinSourceDirectory>/fonts/) first. Otherwise the inside VDRs OSD menu
configured vdrOsd Font is used as default.

Channel Logos
-------------

Since each XML skin is responsible for it's used channel logos, skindesigner
searches for channel logos only in the skin dependend directory

<ResourceDirectory>/plugins/skindesigner/skins/<skinname>/logos

Each copy your used logos directly to this directory or set a symbolic link to
a common channellogo directory.

I recommend to use channel logos from https://github.com/3PO/Senderlogos
To download them just change in the directory you want to place the logos
and do a:
git clone https://github.com/3PO/Senderlogos.git logos
An update of the logos can then be done with a "git pull" just inside this
directory.

In this logo pack all files are named only with lower case letters.
Skindesigner uses the channel name CONVERTED TO LOWER CASE LETTERS to search
for an appropriate channel logo. With this, approximately 90% of the channel
logos should work immediately after placing the channel logos in the correct
place. So if you have to change the name of a channel logo (may be by inserting
a space or a hyphen) so that it fits to the channel name, only use lower case
letters, and not the name of the channel with upper and lower letters as
displayed inside VDR.
If no logo is found for the channel name, additionally a search for a logo
named as the ChannelID is performed. Analog to the channel name the ChannelID
is also converted to lower case letters. This allows channel logos for channels
with changing names (for instance Sky Feed Channels).
Additional hint: some channels have slashes in their name (in germany
nick/comedy for instance).
In this example, as a dirty hack just create a folder in your channel logo
directory named "nick" and place an image named "comedy.png" inside this folder.