summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/man/en/mplayer.195
-rw-r--r--DOCS/man/fr/mplayer.12
-rw-r--r--DOCS/tech/MAINTAINERS2
-rw-r--r--DOCS/tech/binary-packaging.txt22
-rw-r--r--DOCS/tech/general.txt1
-rw-r--r--DOCS/tech/libmpcodecs.txt22
-rw-r--r--DOCS/tech/libvo.txt1
-rw-r--r--DOCS/tech/realcodecs/TODO2
-rw-r--r--DOCS/tech/realcodecs/audio-codecs.txt3
-rw-r--r--DOCS/tech/realcodecs/video-codecs.txt2
-rw-r--r--DOCS/tech/slave.txt1
-rw-r--r--DOCS/tech/snow.txt1
-rw-r--r--DOCS/tech/subcp.txt2
-rw-r--r--DOCS/tech/swscaler_methods.txt1
-rw-r--r--DOCS/xml/en/documentation.xml1
-rw-r--r--DOCS/xml/en/faq.xml6
-rw-r--r--DOCS/xml/en/install.xml29
-rw-r--r--DOCS/xml/en/skin.xml1200
-rw-r--r--DOCS/xml/ldp.dsl1
-rw-r--r--DOCS/xml/ru/ports.xml2
20 files changed, 38 insertions, 1358 deletions
diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1
index 01bcc86f75..e321da4c19 100644
--- a/DOCS/man/en/mplayer.1
+++ b/DOCS/man/en/mplayer.1
@@ -124,11 +124,6 @@ tivo://host/[list|llist|fsid]
[options]
.
.br
-.B gmplayer
-[options]
-[\-skin\ skin]
-.
-.br
.B mencoder
[options] file
[file|URL|\-] [\-o file | file://file | smb://[user:pass@]host/filepath]
@@ -362,30 +357,6 @@ Seek backward/\:forward 1 minute.
.PD 1
.PP
.RS
-(The following keys are only valid if GUI support is compiled in
-and will take precedence over the keys defined above.)
-.RE
-.PP
-.PD 0
-.RS
-.IPs ENTER
-Start playing.
-.IPs "ESC\ \ "
-Stop playing.
-.IPs "l\ \ \ \ "
-Load file.
-.IPs "t\ \ \ \ "
-Load subtitle.
-.IPs "c\ \ \ \ "
-Open skin browser.
-.IPs "p\ \ \ \ "
-Open playlist.
-.IPs "r\ \ \ \ "
-Open preferences.
-.RE
-.PD 1
-.PP
-.RS
(The following keys are only valid if you compiled with TV or DVB input
support and will take precedence over the keys defined above.)
.RE
@@ -715,8 +686,6 @@ Available options are:
.RSs
.IPs "all\ \ "
all configuration files
-.IPs "gui (GUI only)"
-GUI configuration file
.IPs system
system configuration file
.IPs "user\ "
@@ -752,7 +721,6 @@ Use the given profile(s), \-profile help displays a list of the defined profiles
.TP
.B \-really\-quiet (also see \-quiet)
Display even less output and status messages than with \-quiet.
-Also suppresses the GUI error message boxes.
.
.TP
.B \-show\-profile <profile>
@@ -860,15 +828,12 @@ later.
See http://www.mplayerhq.hu/\:DOCS/\:HTML/\:en/\:edl.html for details.
.
.TP
-.B \-enqueue (GUI only)
-Enqueue files given on the command line in the playlist instead of playing them
-immediately.
-.
-.TP
-.B \-fixed\-vo
-Enforces a fixed video system for multiple files (one (un)initialization for
-all files).
+.B \-nofixed\-vo
+\-fixed\-vo enforces a fixed video system for multiple files (one
+(un)initialization for all files).
Therefore only one window will be opened for all files.
+Now enabled by default, use \-nofixed\-vo to disable and create a new window
+whenever the video stream changes.
Currently the following drivers are fixed-vo compliant: gl, gl2, mga, svga, x11,
xmga, xv, xvidix and dfbmga.
.
@@ -879,12 +844,6 @@ Video filters are not applied to such frames.
For B-frames even decoding is skipped completely.
.
.TP
-.B \-(no)gui
-Enable or disable the GUI interface (default depends on binary name).
-Only works as the first argument on the command line.
-Does not work as a config-file option.
-.
-.TP
.B \-h, \-help, \-\-help
Show short summary of options.
.
@@ -1069,6 +1028,11 @@ Turns off LIRC support.
.B \-nomouseinput
Disable mouse button press/\:release input (mozplayerxp's context menu relies
on this option).
+.TP
+.B \-noorderedchapters
+Disable support for Matroska ordered chapters.
+MPlayer will not load or search for video segments from other files,
+and will also ignore any chapter order specified for the main file.
.
.TP
.B \-rtc (RTC only)
@@ -1111,20 +1075,6 @@ Use the specified device for RTC timing.
Play files in random order.
.
.TP
-.B \-skin <name> (GUI only)
-Loads a skin from the directory given as parameter below the default skin
-directories, /usr/\:local/\:share/\:mplayer/\:skins/\: and ~/.mplayer/\:skins/.
-.sp 1
-.I EXAMPLE:
-.PD 0
-.RSs
-.IPs "\-skin fittyfene"
-Tries /usr/\:local/\:share/\:mplayer/\:skins/\:fittyfene
-and afterwards ~/.mplayer/\:skins/\:fittyfene.
-.RE
-.PD 1
-.
-.TP
.B \-slave (also see \-input)
Switches on slave mode, in which MPlayer works as a backend for other programs.
Instead of intercepting keyboard events, MPlayer will read commands separated
@@ -3055,6 +3005,13 @@ VESA framebuffer does not support mode changing.
Override framebuffer mode configuration file (default: /etc/\:fb.modes).
.
.TP
+.B \-force\-window\-position
+Forcefully move MPlayer's video output window to default location whenever
+there is a change in video parameters, video stream or file.
+This used to be the default behavior.
+Currently only affects X11 VOs.
+.
+.TP
.B \-fs (also see \-zoom)
Fullscreen playback (centers movie, and paints black bands around it).
Not supported by all video output drivers.
@@ -3142,12 +3099,6 @@ Places the window at the bottom right corner of the screen.
.PD 1
.
.TP
-.B \-guiwid <window ID> (also see \-wid) (GUI only)
-This tells the GUI to also use an X11 window and stick itself to the bottom
-of the video, which is useful to embed a mini-GUI in a browser (with the
-MPlayer plugin for instance).
-.
-.TP
.B \-hue <\-100\-100>
Adjust the hue of the video signal (default: 0).
You can get a colored negative of the image with this option.
@@ -3278,7 +3229,7 @@ the new display mode.
Enables VBI for the vesa, dfbmga and svga video output drivers.
.
.TP
-.B \-wid <window ID> (also see \-guiwid) (X11, OpenGL and DirectX only)
+.B \-wid <window ID> (X11, OpenGL and DirectX only)
This tells MPlayer to attach to an existing window.
Useful to embed MPlayer in a browser (e.g.\& the plugger extension).
.
@@ -4321,8 +4272,6 @@ Each file takes the frame number padded with leading zeros as name.
.IPs z=<0\-9>
Specifies the compression level.
0 is no compression, 9 is maximum compression.
-.IPs outdir=<dirname>
-Specify the directory to save the PNG files to (default: ./).
.IPs alpha (default: noalpha)
Create PNG files with an alpha channel.
Note that MPlayer in general does not support alpha, so this will only
@@ -11076,14 +11025,6 @@ MEncoder user settings
input bindings (see '\-input keylist' for the full list)
.
.TP
-~/.mplayer/\:gui.conf
-GUI configuration file
-.
-.TP
-~/.mplayer/\:gui.pl
-GUI playlist
-.
-.TP
~/.mplayer/\:font/
font directory (There must be a font.desc file and files with .RAW extension.)
.
diff --git a/DOCS/man/fr/mplayer.1 b/DOCS/man/fr/mplayer.1
index 5b23beec9b..40c41aaf90 100644
--- a/DOCS/man/fr/mplayer.1
+++ b/DOCS/man/fr/mplayer.1
@@ -4570,8 +4570,6 @@ Ne gère que les formats RGB et BGR 24 bits/pixel.
.IPs z=<0\-9>
Définit le taux de compression.
0 équivaut à pas de compression et 9 à la compression maximale.
-.IPs outdir=<chemin>
-Définit le répertoire où sauver les fichiers PNG (par défaut\ ./).
.IPs alpha (par défaut\ : noalpha)
Crée un fichier PNG avec un canal alpha.
Notez que MPlayer ne gère en général pas les canaux alpha, donc cette
diff --git a/DOCS/tech/MAINTAINERS b/DOCS/tech/MAINTAINERS
index 680906e4e2..fcd4566c41 100644
--- a/DOCS/tech/MAINTAINERS
+++ b/DOCS/tech/MAINTAINERS
@@ -84,8 +84,6 @@ MPlayer code:
* playtree, input layer: Alban Bedel
* libswscale: Michael Niedermayer, Luca Abeni
* DVB support: Nico Sabbi
- * GUI: None
- * GUI skins: Diego Biurrun
* EDL code: Reynaldo H. Verdejo Pinochet, Oded Shimon
Imported libs/projects:
diff --git a/DOCS/tech/binary-packaging.txt b/DOCS/tech/binary-packaging.txt
index 9d852372db..974a20d46f 100644
--- a/DOCS/tech/binary-packaging.txt
+++ b/DOCS/tech/binary-packaging.txt
@@ -66,9 +66,6 @@ the following features MUST be included in any official binary package:
(*) if available for your OS/hardware
-There is great demand for the GUI, so it SHOULD be included, but it MUST
-come as a separate package (see Tips and Tricks for details).
-
Including other features, like LIVE.COM streaming or JACK support, is
acceptable. They SHOULD, however, be build-time configurable, with the
default build configuration containing the above set.
@@ -111,7 +108,6 @@ for Red Hat and Fedora RPMs I am using FHS-compliant paths:
/usr/share/doc/mplayer-version/ docs
/usr/share/man/man1/ man page
/usr/share/man/XX/man1/ translated man page
-/usr/share/mplayer/skins/ GUI skins
You MUST NOT include the codecs.conf file in your package. It is useful
only for development purposes and often causes obscure problems for users.
@@ -129,13 +125,9 @@ install only what you need. This is the layout I am using for Red Hat and
Fedora RPMs:
mencoder contains MEncoder binary (mencoder)
-mplayer contains MPlayer binary without GUI (mplayer),
- config files, man pages and documentation;
- required by mplayer-gui
+mplayer contains MPlayer binary config files, man pages and
+ documentation;
mplayer-codecs-* contain binary codecs available from MPlayer's site
-mplayer-gui contains MPlayer binary with GUI (gmplayer);
- contains default skin (Blue)
-mplayer-skin-* contain various MPlayer GUI skins
There is no strict policy for now, just use your common sense.
@@ -200,14 +192,8 @@ ao=alsa,
Tips and tricks
~~~~~~~~~~~~~~~
-In my package layout, mplayer and mplayer-gui can be installed at the same
-time, because they contain differently named binaries and there is no
-conflict. The trick is to build MPlayer once with --enable-gui, rename the
-resulting binary to "gmplayer" and then build it again, without GUI, but
-keeping the rest of ./configure options the same.
-
-To provide man pages for all MPlayer suite binaries (mplayer, gmplayer,
-mencoder), you can use man-links instead of regular symbolic links.
+To provide man pages for all MPlayer suite binaries (mplayer, mencoder), you
+can use man-links instead of regular symbolic links.
Creating a mencoder man page linked to mplayer is as simple as:
echo ".so mplayer.1" >> mencoder.1
diff --git a/DOCS/tech/general.txt b/DOCS/tech/general.txt
index f4b7f0d713..631ee3f9de 100644
--- a/DOCS/tech/general.txt
+++ b/DOCS/tech/general.txt
@@ -226,4 +226,3 @@ Now, go on:
6.a audio plugins
for details on this, read libao2.txt
-
diff --git a/DOCS/tech/libmpcodecs.txt b/DOCS/tech/libmpcodecs.txt
index 22d29aaf98..5015f5dcc0 100644
--- a/DOCS/tech/libmpcodecs.txt
+++ b/DOCS/tech/libmpcodecs.txt
@@ -153,7 +153,7 @@ vf_info_t* info;
const char *name; // short name of the filter, must be FILTERNAME
const char *author; // name and email/URL of the author(s)
const char *comment; // comment, URL to papers describing algorithm etc.
- int (*open)(struct vf_instance_s* vf,char* args);
+ int (*open)(struct vf_instance* vf,char* args);
// pointer to the open() function:
Sample:
@@ -197,13 +197,13 @@ static int open(vf_instance_t *vf, char* args)
return 1;
}
-Functions in vf_instance_s:
+Functions in vf_instance:
NOTE: All these are optional, their function pointer is either NULL or points
to a default implementation. If you implement them, don't forget to set
vf->FUNCNAME in your open() !
- int (*query_format)(struct vf_instance_s* vf, unsigned int fmt);
+ int (*query_format)(struct vf_instance* vf, unsigned int fmt);
The query_format() function is called one or more times before the config(),
to find out the capabilities and/or support status of a given colorspace (fmt).
@@ -216,7 +216,7 @@ next filter will accept at least one of your possible output colorspaces!
Sample:
-static int query_format(struct vf_instance_s* vf, unsigned int fmt)
+static int query_format(struct vf_instance* vf, unsigned int fmt)
{
switch(fmt){
case IMGFMT_YV12:
@@ -232,7 +232,7 @@ For the more complex case, when you have an N -> M colorspace mapping matrix,
see vf_scale or vf_rgb2bgr for examples.
- int (*config)(struct vf_instance_s* vf,
+ int (*config)(struct vf_instance* vf,
int width, int height, int d_width, int d_height,
unsigned int flags, unsigned int outfmt);
@@ -257,7 +257,7 @@ Its parameters are already well-known from libvo:
Sample:
-static int config(struct vf_instance_s* vf,
+static int config(struct vf_instance* vf,
int width, int height, int d_width, int d_height,
unsigned int flags, unsigned int outfmt)
{
@@ -272,12 +272,12 @@ static int config(struct vf_instance_s* vf,
return vf_next_config(vf,vf->priv->w,vf->priv->h,d_width,d_height,flags,outfmt);
}
- void (*uninit)(struct vf_instance_s* vf);
+ void (*uninit)(struct vf_instance* vf);
Okay, uninit() is the simplest, it's called at the end. You can free your
private buffers etc here.
- int (*put_image)(struct vf_instance_s* vf, mp_image_t *mpi);
+ int (*put_image)(struct vf_instance* vf, mp_image_t *mpi);
Ah, put_image(). This is the main filter function, it should convert/filter/
transform the image data from one format/size/color/whatever to another.
@@ -332,7 +332,7 @@ image:
Ok, the rest is for advanced functionality only:
- int (*control)(struct vf_instance_s* vf, int request, void* data);
+ int (*control)(struct vf_instance* vf, int request, void* data);
You can control the filter at runtime from MPlayer/MEncoder/dec_video:
#define VFCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */
@@ -343,7 +343,7 @@ You can control the filter at runtime from MPlayer/MEncoder/dec_video:
#define VFCTRL_CHANGE_RECTANGLE 9 /* Change the rectangle boundaries */
- void (*get_image)(struct vf_instance_s* vf, mp_image_t *mpi);
+ void (*get_image)(struct vf_instance* vf, mp_image_t *mpi);
This is for direct rendering support, works the same way as in libvo drivers.
It makes in-place pixel modifications possible.
@@ -359,7 +359,7 @@ order, while put_image is called for display) so the only safe place to save
it is in the mpi struct itself: mpi->priv=(void*)dmpi;
- void (*draw_slice)(struct vf_instance_s* vf, unsigned char** src,
+ void (*draw_slice)(struct vf_instance* vf, unsigned char** src,
int* stride, int w,int h, int x, int y);
It's the good old draw_slice callback, already known from libvo.
diff --git a/DOCS/tech/libvo.txt b/DOCS/tech/libvo.txt
index e80f80d2fb..945aeab952 100644
--- a/DOCS/tech/libvo.txt
+++ b/DOCS/tech/libvo.txt
@@ -171,4 +171,3 @@ Each vo driver _has_ to implement these:
real. This is 'swapbuffers' when doublebuffering.
Try to do as little work here as possible, since that affect jitter/
A-V sync.
-
diff --git a/DOCS/tech/realcodecs/TODO b/DOCS/tech/realcodecs/TODO
index 00f20f13ac..5ba035bfdd 100644
--- a/DOCS/tech/realcodecs/TODO
+++ b/DOCS/tech/realcodecs/TODO
@@ -20,5 +20,3 @@ TODO:
also statistics->streams->video->POST FILTER: ON
(i've found that custommessage calls differ wiht pp on/off, but adding
these calls to mplayer didn't make a pixel difference between outputs)
-
-
diff --git a/DOCS/tech/realcodecs/audio-codecs.txt b/DOCS/tech/realcodecs/audio-codecs.txt
index 6d79815ac0..8a0d958354 100644
--- a/DOCS/tech/realcodecs/audio-codecs.txt
+++ b/DOCS/tech/realcodecs/audio-codecs.txt
@@ -153,6 +153,3 @@ output_buffer points to the output buffer from the last
decode operation.
retval is unknown, returning always 0x18 in a specific sample
-> further investigation needed
-
-
-
diff --git a/DOCS/tech/realcodecs/video-codecs.txt b/DOCS/tech/realcodecs/video-codecs.txt
index 5ef9a51961..2bef957172 100644
--- a/DOCS/tech/realcodecs/video-codecs.txt
+++ b/DOCS/tech/realcodecs/video-codecs.txt
@@ -183,5 +183,3 @@ Transform (internally calls (0x1c,x,y))
]
Free
-
-
diff --git a/DOCS/tech/slave.txt b/DOCS/tech/slave.txt
index c15a3a7fa8..e1fed7edee 100644
--- a/DOCS/tech/slave.txt
+++ b/DOCS/tech/slave.txt
@@ -546,4 +546,3 @@ teletext_format int 0 3 X X X 0 - opaque,
3 - transp. inv.
teletext_half_page int 0 2 X X X 0 - off, 1 - top half,
2- bottom half
-
diff --git a/DOCS/tech/snow.txt b/DOCS/tech/snow.txt
index db1b558cb9..be531fcb5c 100644
--- a/DOCS/tech/snow.txt
+++ b/DOCS/tech/snow.txt
@@ -87,4 +87,3 @@ vcodec=snow:vstrict=-2:vpass=2:vbitrate=$B:pred=0:cmp=12:subcmp=12:mbcmp=1:qpel:
Decent, fast options are
vcodec=snow:vstrict=-2:vpass=1:vbitrate=$B:pred=0:cmp=1:subcmp=1:mbcmp=1
vcodec=snow:vstrict=-2:vpass=2:vbitrate=$B:pred=0:cmp=2:subcmp=2:mbcmp=1:refs=2
-
diff --git a/DOCS/tech/subcp.txt b/DOCS/tech/subcp.txt
index df96f31e80..60c370771c 100644
--- a/DOCS/tech/subcp.txt
+++ b/DOCS/tech/subcp.txt
@@ -40,5 +40,3 @@ I tested charmap2enc script only with /usr/share/i18n/charmaps/EUC-KR.gz
--
Artur Zaprzala
-
-
diff --git a/DOCS/tech/swscaler_methods.txt b/DOCS/tech/swscaler_methods.txt
index e37227b982..b2c7077652 100644
--- a/DOCS/tech/swscaler_methods.txt
+++ b/DOCS/tech/swscaler_methods.txt
@@ -66,4 +66,3 @@ m mosaic (blocky) (upscale only)
Notes:
area upscale is identical to bilinear
-
diff --git a/DOCS/xml/en/documentation.xml b/DOCS/xml/en/documentation.xml
index c1f0fb5527..2108533f96 100644
--- a/DOCS/xml/en/documentation.xml
+++ b/DOCS/xml/en/documentation.xml
@@ -175,4 +175,3 @@ can be distributed under the terms of the GNU General Public License Version 2.
&encoding-guide.xml;
&faq.xml;
&bugreports.xml;
-&skin.xml;
diff --git a/DOCS/xml/en/faq.xml b/DOCS/xml/en/faq.xml
index 83989dbf3a..9234ad7334 100644
--- a/DOCS/xml/en/faq.xml
+++ b/DOCS/xml/en/faq.xml
@@ -644,11 +644,7 @@ your configuration file. Add
<programlisting>
vo = <replaceable>selected_vo</replaceable>
</programlisting>
-to <filename>~/.mplayer/config</filename> and/or
-<programlisting>
-vo_driver = <replaceable>selected_vo</replaceable>
-</programlisting>
-to <filename>~/.mplayer/gui.conf</filename>.
+to <filename>~/.mplayer/config</filename>
</para></answer>
</qandaentry>
diff --git a/DOCS/xml/en/install.xml b/DOCS/xml/en/install.xml
index f8019fe3f9..86afaaf65d 100644
--- a/DOCS/xml/en/install.xml
+++ b/DOCS/xml/en/install.xml
@@ -106,10 +106,6 @@ answers.
<itemizedlist>
<listitem><para>
- Decide if you need GUI. If you do, see the <link linkend="gui">GUI</link>
- section before compiling.
-</para></listitem>
-<listitem><para>
If you want to install <application>MEncoder</application> (our great
all-purpose encoder), see the
<link linkend="mencoder"><application>MEncoder</application></link> section.
@@ -184,27 +180,10 @@ See the <link linkend="subosd">Subtitles and OSD</link> section for details.
<title>What about the GUI?</title>
<para>
-The GUI needs GTK 1.2.x or GTK 2.0 (it isn't fully GTK, but the panels are),
-so <systemitem class="library">GTK</systemitem> (and the devel stuff, usually
-called <systemitem class="library">gtk-dev</systemitem>) has to be installed.
-You can build it by specifying <option>--enable-gui</option> during
-<filename>./configure</filename>. Then, to turn on GUI mode, you have to
-execute the <command>gmplayer</command> binary.
-</para>
-
-<para>
-As <application>MPlayer</application> doesn't have a skin included, you
-have to download one if you want to use the GUI. See the <ulink
-url="http://www.mplayerhq.hu/dload.html">download page</ulink>.
-It should be extracted to the usual system-wide directory (<filename
-class="directory">$PREFIX/share/mplayer/skins</filename>), or to <filename
-class="directory">$HOME/.mplayer/skins</filename>.
-<application>MPlayer</application> by default looks in these directories
-for a directory named <filename class="directory">default</filename>, but
-you can use the <option>-skin <replaceable>newskin</replaceable></option>
-option, or the <literal>skin=newskin</literal> config file directive to use
-the skin in the <filename class="directory">*/skins/newskin</filename>
-directory.
+MPlayer used to have an internal GUI, but it was removed because it was
+buggy, unmaintained and there are much better alternatives. See <ulink
+url="http://www.mplayerhq.hu/design7/projects.html#mplayer_frontends">the
+frontends page</ulink> for a list of existing GUIs.
</para>
</sect1>
diff --git a/DOCS/xml/en/skin.xml b/DOCS/xml/en/skin.xml
deleted file mode 100644
index 38feef6782..0000000000
--- a/DOCS/xml/en/skin.xml
+++ /dev/null
@@ -1,1200 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- $Revision$ -->
-<appendix id="skin">
-<title><application>MPlayer</application> skin format</title>
-
-<sect1 id="skin-overview">
-<title>Overview</title>
-
-<!-- ********** -->
-
-<sect2 id="skin-overview-components">
-<title>Skin components</title>
-
-<para>
-Skins are quite free-format (unlike the fixed-format skins of
-<application>Winamp</application>/<application>XMMS</application>,
-for example), so it is up to you to create something great.
-</para>
-
-<para>
-Currently there are four windows to be decorated: the
-<link linkend="skin-file-main">main window</link>, the
-<link linkend="skin-file-subwindow">subwindow</link>, the
-<link linkend="skin-file-main">playbar</link>, and the
-<link linkend="skin-file-menu">skin menu</link> (which can be activated
-by a right click).
-
-<itemizedlist>
-<listitem>
- <para>
- The <emphasis role="bold">main window</emphasis> and/or the
- <emphasis role="bold">playbar</emphasis> is where you can control
- <application>MPlayer</application>. The background of the window is an image.
- Various items can (and must) be placed in the window:
- <emphasis>buttons</emphasis>, <emphasis>potmeters</emphasis> (sliders) and
- <emphasis>labels</emphasis>.
- For every item, you must specify its position and size.
- </para>
-
- <para>
- A <emphasis role="bold">button</emphasis> has three states (pressed, released,
- disabled), thus its image must be divided into three parts vertically. See the
- <link linkend="skin-button">button</link> item for details.
- </para>
-
- <para>
- A <emphasis role="bold">potmeter</emphasis> (mainly used for the seek bar and
- volume/balance control) can have any number of phases by dividing its image
- into different parts below each other. See
- <link linkend="skin-hpotmeter">hpotmeter</link> and
- <link linkend="skin-potmeter">potmeter</link> for details.
- </para>
-
- <para>
- <emphasis role="bold">Labels</emphasis> are a bit special: The characters
- needed to draw them are taken from an image file, and the characters in the
- image are described by a
- <link linkend="skin-fonts">font description file</link>.
- The latter is a plain text file which specifies the x,y position and size of
- each character in the image (the image file and its font description file
- form a font <emphasis>together</emphasis>).
- See <link linkend="skin-dlabel">dlabel</link>
- and <link linkend="skin-slabel">slabel</link> for details.
- </para>
-
- <note><para>
- All images can have full transparency as described in the section about
- <link linkend="skin-overview-formats">image formats</link>. If the X server
- doesn't support the XShape extension, the parts marked transparent will be
- black. If you'd like to use this feature, the width of the main window's
- background image must be dividable by 8.
- </para></note>
-</listitem>
-
-<listitem><para>
- The <emphasis role="bold">subwindow</emphasis> is where the movie appears. It
- can display a specified image if there is no movie loaded (it is quite boring
- to have an empty window :-)) <emphasis role="bold">Note:</emphasis>
- transparency is <emphasis role="bold">not allowed</emphasis> here.
-</para></listitem>
-
-<listitem>
- <para>
- The <emphasis role="bold">skin menu</emphasis> is just a way to control
- <application>MPlayer</application> by means of menu entries. Two images
- are required for the menu: one of them is the base image that shows the
- menu in its normal state, the other one is used to display the selected
- entries. When you pop up the menu, the first image is shown. If you move
- the mouse over the menu entries, the currently selected entry is copied
- from the second image over the menu entry below the mouse pointer
- (the second image is never shown as a whole).
- </para>
- <para>
- A menu entry is defined by its position and size in the image (see the
- section about the <link linkend="skin-file-menu">skin menu</link> for
- details).
- </para>
-</listitem>
-</itemizedlist>
-</para>
-
-<para>
-There is an important thing not mentioned yet: For buttons, potmeters and
-menu entries to work, <application>MPlayer</application> must know what to
-do if they are clicked. This is done by <link linkend="skin-gui">messages</link>
-(events). For these items you must define the messages to be generated when
-they are clicked.
-</para>
-</sect2>
-
-<sect2 id="skin-overview-formats">
-<title>Image formats</title>
-
-<para>Images must be truecolor (24 or 32 bpp) PNGs.</para>
-<para>
-In the main window and in the playbar (see below) you can use images with
-`transparency': Regions filled with the color #FF00FF (magenta) are fully
-transparent when viewed by <application>MPlayer</application>. This means
-that you can even have shaped windows if your X server has the XShape extension.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="skin-files">
-<title>Files</title>
-
-<para>
-You need the following files to build a skin:
-<itemizedlist>
-<listitem><para>
- The configuration file named <link linkend="skin-file">skin</link> tells
- <application>MPlayer</application> how to put different parts of the skin
- together and what to do if you click somewhere in the window.
-</para></listitem>
-<listitem><para>
- The background image for the main window.
-</para></listitem>
-<listitem><para>
- Images for the items in the main window (including one or more font
- description files needed to draw labels).
-</para></listitem>
-<listitem><para>
- The image to be displayed in the subwindow (optional).
-</para></listitem>
-<listitem><para>
- Two images for the skin menu (they are needed only if you want to create
- a menu).
-</para></listitem>
-</itemizedlist>
- With the exception of the skin configuration file, you can name the other
- files whatever you want (but note that font description files must have
- a <filename>.fnt</filename> extension).
-</para>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="skin-file">
-<title>The skin file</title>
-
-<para>
-As mentioned above, this is the skin configuration file. It is line oriented;
-comment lines start with a '<literal>;</literal>' character at the beginning of
-the line (only spaces and tabs are allowed before the '<literal>;</literal>').
-</para>
-
-<para>
-The file is made up of sections. Each section describes the skin for an
-application and has the following form:
-<programlisting>
-section = <replaceable>section name</replaceable>
-.
-.
-.
-end
-</programlisting>
-</para>
-
-<para>
-Currently there is only one application, so you need only one section: its name
-is <emphasis role="bold">movieplayer</emphasis>.
-</para>
-
-<para>
-Within this section each window is described by a block of the following form:
-<programlisting>
-window = <replaceable>window name</replaceable>
-.
-.
-.
-end
-</programlisting>
-</para>
-
-<para>
-where <replaceable>window name</replaceable> can be one of these strings:
-<itemizedlist>
-<listitem><para>
- <emphasis role="bold">main</emphasis> - for the main window
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">sub</emphasis> - for the subwindow
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">menu</emphasis> - for the skin menu
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">playbar</emphasis> - playbar
-</para></listitem>
-</itemizedlist>
-</para>
-
-<para>
-(The sub and menu blocks are optional - you do not need to create a menu or
-decorate the subwindow.)
-</para>
-
-<para>
-Within a window block, you can define each item for the window by a line in
-this form:
-<programlisting>item = parameter</programlisting>
-Where <literal>item</literal> is a string that identifies the type of the GUI
-item, <literal>parameter</literal> is a numeric or textual value (or a list of
-values separated by commas).
-</para>
-
-<para>
-Putting the above together, the whole file looks something like this:
-<programlisting>
-section = movieplayer
- window = main
- ; ... items for main window ...
- end
-
- window = sub
- ; ... items for subwindow ...
- end
-
- window = menu
- ; ... items for menu ...
- end
-
- window = playbar
- ; ... items for playbar ...
- end
-end
-</programlisting>
-</para>
-
-<para>