summaryrefslogtreecommitdiff
path: root/doc/man/en/man3
diff options
context:
space:
mode:
authorDaniel Caujolle-Bert <f1rmb@users.sourceforge.net>2001-07-26 11:12:25 +0000
committerDaniel Caujolle-Bert <f1rmb@users.sourceforge.net>2001-07-26 11:12:25 +0000
commita101b38dea6890fa1dbf5b8560665826b69fa4ae (patch)
tree2615e691684c22951ebb881d6a5009257aad2f97 /doc/man/en/man3
parent4042284ccba79fe453dfca7b4d45edba31d36d48 (diff)
downloadxine-lib-a101b38dea6890fa1dbf5b8560665826b69fa4ae.tar.gz
xine-lib-a101b38dea6890fa1dbf5b8560665826b69fa4ae.tar.bz2
Updated doxy sections in xine.h.tmpl.in. Added man3. Removed french man page. Added API doc in html. Add new rpm package (doc). Fixes some little bugs in
proto decl, etc... CVS patchset: 350 CVS date: 2001/07/26 11:12:25
Diffstat (limited to 'doc/man/en/man3')
-rw-r--r--doc/man/en/man3/Makefile.am18
-rw-r--r--doc/man/en/man3/ao_functions_t.319
-rw-r--r--doc/man/en/man3/autoplay_group.373
-rw-r--r--doc/man/en/man3/browse_group.3169
-rw-r--r--doc/man/en/man3/build_info.329
-rw-r--r--doc/man/en/man3/cfg_data_t.319
-rw-r--r--doc/man/en/man3/config_group.344
-rw-r--r--doc/man/en/man3/config_values_s.370
-rw-r--r--doc/man/en/man3/config_values_t.323
-rw-r--r--doc/man/en/man3/demux_strategy.358
-rw-r--r--doc/man/en/man3/event_group.3141
-rw-r--r--doc/man/en/man3/loadplugins_group.3141
-rw-r--r--doc/man/en/man3/mrl_t.358
-rw-r--r--doc/man/en/man3/mrl_types.3188
-rw-r--r--doc/man/en/man3/status_group.351
-rw-r--r--doc/man/en/man3/ui_callbacks.341
-rw-r--r--doc/man/en/man3/version_group.329
-rw-r--r--doc/man/en/man3/video_cap.341
-rw-r--r--doc/man/en/man3/video_group.351
-rw-r--r--doc/man/en/man3/video_prop.391
-rw-r--r--doc/man/en/man3/video_ratio.356
-rw-r--r--doc/man/en/man3/visual_types.351
-rw-r--r--doc/man/en/man3/vo_driver_s.3102
-rw-r--r--doc/man/en/man3/vo_driver_t.323
-rw-r--r--doc/man/en/man3/vo_frame_t.323
-rw-r--r--doc/man/en/man3/vo_overlay_t.323
-rw-r--r--doc/man/en/man3/xine.h.3400
-rw-r--r--doc/man/en/man3/xine_api.339
-rw-r--r--doc/man/en/man3/xine_init.3149
-rw-r--r--doc/man/en/man3/xine_management.3279
-rw-r--r--doc/man/en/man3/xine_t.323
-rw-r--r--doc/man/en/man3/xine_version.3108
32 files changed, 2630 insertions, 0 deletions
diff --git a/doc/man/en/man3/Makefile.am b/doc/man/en/man3/Makefile.am
new file mode 100644
index 000000000..36ce3bf4b
--- /dev/null
+++ b/doc/man/en/man3/Makefile.am
@@ -0,0 +1,18 @@
+man_MANS = ao_functions_t.3 demux_strategy.3 video_cap.3 vo_overlay_t.3 \
+ autoplay_group.3 event_group.3 video_group.3 xine.h.3 \
+ browse_group.3 loadplugins_group.3 video_prop.3 xine_api.3 \
+ build_info.3 mrl_t.3 video_ratio.3 xine_init.3 \
+ cfg_data_t.3 mrl_types.3 visual_types.3 xine_management.3 \
+ config_group.3 status_group.3 vo_driver_s.3 xine_t.3 \
+ config_values_s.3 ui_callbacks.3 vo_driver_t.3 xine_version.3 \
+ config_values_t.3 version_group.3 vo_frame_t.3
+
+EXTRA_DIST = $(man_MANS)
+
+mostlyclean-generic:
+ -rm -f *~ \#* .*~ .\#*
+
+maintainer-clean-generic:
+ -@echo "This command is intended for maintainers to use;"
+ -@echo "it deletes files that may require special tools to rebuild."
+ -rm -f Makefile.in xine-lib.3
diff --git a/doc/man/en/man3/ao_functions_t.3 b/doc/man/en/man3/ao_functions_t.3
new file mode 100644
index 000000000..9e5c3c9d3
--- /dev/null
+++ b/doc/man/en/man3/ao_functions_t.3
@@ -0,0 +1,19 @@
+.TH "ao_functions_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+ao_functions_t \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Opaque data type.
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/autoplay_group.3 b/doc/man/en/man3/autoplay_group.3
new file mode 100644
index 000000000..8bbd0928b
--- /dev/null
+++ b/doc/man/en/man3/autoplay_group.3
@@ -0,0 +1,73 @@
+.TH "Autoplay support" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Autoplay support \-
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "char** \fBxine_get_autoplay_input_plugin_ids\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIRequest playlist from plugin.\fP"
+.ti -1c
+.RI "char** \fBxine_get_autoplay_mrls\fP (\fBxine_t\fP *self, char *plugin_id, int *num_mrls)"
+.br
+.RI "\fIRequest MRL list from plugin.\fP"
+.in -1c
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "char ** xine_get_autoplay_input_plugin_ids (\fBxine_t\fP * self)"
+.PP
+Request playlist from plugin.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Playlist.
+.PP
+Some input plugins can generate autoplay lists returns a list of ids of these plugins.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "char ** xine_get_autoplay_mrls (\fBxine_t\fP * self, char * plugin_id, int * num_mrls)"
+.PP
+Request MRL list from plugin.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.TP
+\fB\fIplugin_id\fP\fP
+Plugin name ( see \fBxine_get_autoplay_input_plugin_ids\fP() )
+.TP
+\fB\fInum_mrls\fP\fP
+Entries in return array.
+.PP
+\fBReturns: \fP
+.in +1c
+MRL list.
+.PP
+Get autoplay MRL list for input plugin named <plugin_id>.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIplugin_id\fP\fP
+
+.TP
+\fB\fInum_mrls\fP\fP
+ \ No newline at end of file
diff --git a/doc/man/en/man3/browse_group.3 b/doc/man/en/man3/browse_group.3
new file mode 100644
index 000000000..f298ad931
--- /dev/null
+++ b/doc/man/en/man3/browse_group.3
@@ -0,0 +1,169 @@
+.TH "Browsing support" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Browsing support \-
+.SS "Modules"
+
+.in +1c
+.ti -1c
+.RI "\fBTypes of available mrls\fP"
+.br
+.in -1c
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fBmrl_t\fP"
+.br
+.ti -1c
+.RI "struct \fBmrl_t\fP"
+.br
+.in -1c
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBMRL_ZERO\fP(m)"
+.br
+.ti -1c
+.RI "#define \fBMRL_DUPLICATE\fP(s, d)"
+.br
+.ti -1c
+.RI "#define \fBMRLS_DUPLICATE\fP(s, d)"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "char** \fBxine_get_browsable_input_plugin_ids\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIRequest list of browsable featured plugins.\fP"
+.ti -1c
+.RI "\fBmrl_t\fP** \fBxine_get_browse_mrls\fP (\fBxine_t\fP *self, char *plugin_id, char *start_mrl, int *num_mrls)"
+.br
+.RI "\fIRequest available MRLs from plugins.\fP"
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define MRLS_DUPLICATE(s, d)"
+.PP
+\fBValue:\fP
+.PP
+.nf
+ { \
+ int i = 0; \
+ \
+ assert((s) != NULL); \
+ assert((d) != NULL); \
+ \
+ while((s) != NULL) { \
+ d[i] = (mrl_t *) malloc(sizeof(mrl_t)); \
+ MRL_DUPLICATE(s[i], d[i]); \
+ i++; \
+ } \
+}
+.fi
+Duplicate two arrays of mrls (s = source, d = destination).
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP, \fBxine_get_browse_mrls\fP()
+.SS "#define MRL_DUPLICATE(s, d)"
+.PP
+Duplicate two mrls entries (s = source, d = destination).
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP, \fBxine_get_browse_mrls\fP()
+.SS "#define MRL_ZERO(m)"
+.PP
+\fBValue:\fP
+.PP
+.nf
+ { \
+ if((m)) { \
+ if((m)->origin) \
+ free((m)->origin); \
+ if((m)->mrl) \
+ free((m)->mrl); \
+ if((m)->link) \
+ free((m)->link); \
+ (m)->origin = NULL; \
+ (m)->mrl = NULL; \
+ (m)->link = NULL; \
+ (m)->type = 0; \
+ (m)->size = (off_t) 0; \
+ } \
+}
+.fi
+Freeing/zeroing all of entries of given mrl.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP, \fBxine_get_browse_mrls\fP()
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "char ** xine_get_browsable_input_plugin_ids (\fBxine_t\fP * self)"
+.PP
+Request list of browsable featured plugins.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+List of plugins
+.PP
+Some input plugins are browseable, get the list of ids of these plugins.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "\fBmrl_t\fP ** xine_get_browse_mrls (\fBxine_t\fP * self, char * plugin_id, char * start_mrl, int * num_mrls)"
+.PP
+Request available MRLs from plugins.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.TP
+\fB\fIplugin_id\fP\fP
+Plugin name ( see \fBxine_get_browsable_input_plugin_ids\fP() )
+.TP
+\fB\fIstart_mrl\fP\fP
+MRL
+.TP
+\fB\fInum_mrl\fP\fP
+how many mrls was found
+.PP
+\fBReturns: \fP
+.in +1c
+start_mrl on success, NULL on failure.
+.PP
+Asks input plugin named <plugin_id> to return a list of available MRLs in domain/directory <start_mrl>.
+.PP
+<start_mrl> may be NULL indicating the toplevel domain/dir returns <start_mrl> if <start_mrl> is a valid MRL, not a directory returns NULL if <start_mrl> is an invalid MRL, not even a directory.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIplugin_id\fP\fP
+
+.TP
+\fB\fIstart_mrl\fP\fP
+
+.TP
+\fB\fInum_mrls\fP\fP
+ \ No newline at end of file
diff --git a/doc/man/en/man3/build_info.3 b/doc/man/en/man3/build_info.3
new file mode 100644
index 000000000..832472bb8
--- /dev/null
+++ b/doc/man/en/man3/build_info.3
@@ -0,0 +1,29 @@
+.TH "Build informations" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Build informations \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBXINE_BUILD_CC\fP 'gcc version 2.95.3 20010315 (release)'"
+.br
+.ti -1c
+.RI "#define \fBXINE_BUILD_OS\fP 'Linux 2.4.5 i686'"
+.br
+.ti -1c
+.RI "#define \fBXINE_BUILD_DATE\fP 'Thu 26 Jul 2001 09:17:10'"
+.br
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define XINE_BUILD_CC 'gcc version 2.95.3 20010315 (release)'"
+.PP
+Compiler used to build xine-lib
+.SS "#define XINE_BUILD_DATE 'Thu 26 Jul 2001 09:17:10'"
+.PP
+Build time
+.SS "#define XINE_BUILD_OS 'Linux 2.4.5 i686'"
+.PP
+OS used to build xine-lib \ No newline at end of file
diff --git a/doc/man/en/man3/cfg_data_t.3 b/doc/man/en/man3/cfg_data_t.3
new file mode 100644
index 000000000..5f0c8d1bd
--- /dev/null
+++ b/doc/man/en/man3/cfg_data_t.3
@@ -0,0 +1,19 @@
+.TH "cfg_data_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+cfg_data_t \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Opaque data type.
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/config_group.3 b/doc/man/en/man3/config_group.3
new file mode 100644
index 000000000..e5758dd4a
--- /dev/null
+++ b/doc/man/en/man3/config_group.3
@@ -0,0 +1,44 @@
+.TH "Configuration structure type." 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Configuration structure type. \-
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fBao_functions_t\fP"
+.br
+.ti -1c
+.RI "struct \fBcfg_data_t\fP"
+.br
+.ti -1c
+.RI "struct \fBconfig_values_s\fP"
+.br
+.ti -1c
+.RI "struct \fBconfig_values_s\fP"
+.br
+.ti -1c
+.RI "struct \fBconfig_values_t\fP"
+.br
+.RI "\fIData type of structure \fBconfig_values_s\fP.\fP"
+.ti -1c
+.RI "struct \fBxine_t\fP"
+.br
+.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef void \fBxine_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBao_functions_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBcfg_data_t\fP"
+.br
+.ti -1c
+.RI "typedef struct \fBconfig_values_s\fP \fBconfig_values_t\fP"
+.br
+.in -1c \ No newline at end of file
diff --git a/doc/man/en/man3/config_values_s.3 b/doc/man/en/man3/config_values_s.3
new file mode 100644
index 000000000..4827ca6a2
--- /dev/null
+++ b/doc/man/en/man3/config_values_s.3
@@ -0,0 +1,70 @@
+.TH "config_values_s" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+config_values_s \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "char* (* \fBlookup_str\fP )(\fBconfig_values_t\fP *self, char *key, char *str_default)"
+.br
+.ti -1c
+.RI "int (* \fBlookup_int\fP )(\fBconfig_values_t\fP *self, char *key, int n_default)"
+.br
+.ti -1c
+.RI "void (* \fBset_str\fP )(\fBconfig_values_t\fP *self, char *key, char *value)"
+.br
+.ti -1c
+.RI "void (* \fBset_int\fP )(\fBconfig_values_t\fP *self, char *key, int value)"
+.br
+.ti -1c
+.RI "void (* \fBsave\fP )(\fBconfig_values_t\fP *self)"
+.br
+.ti -1c
+.RI "void (* \fBread\fP )(\fBconfig_values_t\fP *self, char *filename)"
+.br
+.ti -1c
+.RI "\fBcfg_data_t\fP* \fBdata\fP"
+.br
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+Configuration file manipulation.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_file_init\fP()
+.PP
+.SH "FIELD DOCUMENTATION"
+.PP
+.SS "\fBcfg_data_t\fP * config_values_s::data"
+.PP
+Contains private data of this configuration file.
+.SS "int(* config_values_s::lookup_int)(\fBconfig_values_t\fP *self, char *key, int n_default)"
+.PP
+Lookup integer values in configuration file.
+.SS "char *(* config_values_s::lookup_str)(\fBconfig_values_t\fP *self, char *key, char *str_default)"
+.PP
+Lookup string values in configuration file.
+.SS "void(* config_values_s::read)(\fBconfig_values_t\fP *self, char *filename)"
+.PP
+Read configuration file from disk, overriding values in memory. If you also want to clear values that are not in the file, use \fBconfig_file_init\fP() instead!
+.SS "void(* config_values_s::save)(\fBconfig_values_t\fP *self)"
+.PP
+Write configuration file to disk.
+.SS "void(* config_values_s::set_int)(\fBconfig_values_t\fP *self, char *key, int value)"
+.PP
+Set integer values in configuration file.
+.SS "void(* config_values_s::set_str)(\fBconfig_values_t\fP *self, char *key, char *value)"
+.PP
+Set string values in configuration file.
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/config_values_t.3 b/doc/man/en/man3/config_values_t.3
new file mode 100644
index 000000000..407bbf4ad
--- /dev/null
+++ b/doc/man/en/man3/config_values_t.3
@@ -0,0 +1,23 @@
+.TH "config_values_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+config_values_t \- Data type of structure \fBconfig_values_s\fP.
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Data type of structure \fBconfig_values_s\fP.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_s\fP.
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/demux_strategy.3 b/doc/man/en/man3/demux_strategy.3
new file mode 100644
index 000000000..05c31b2ae
--- /dev/null
+++ b/doc/man/en/man3/demux_strategy.3
@@ -0,0 +1,58 @@
+.TH "Possible demuxer guessing strategy." 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Possible demuxer guessing strategy. \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBDEMUX_DEFAULT_STRATEGY\fP 0"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_REVERT_STRATEGY\fP 1"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_CONTENT_STRATEGY\fP 2"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_EXTENSION_STRATEGY\fP 3"
+.br
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+'demux_strategy' should be set to one of these value in configuration file ( see Configuration structure type.) before \fBxine_init\fP() call.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_t\fP
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define DEMUX_CONTENT_STRATEGY 2"
+.PP
+Recognize by content only.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_t\fP
+.SS "#define DEMUX_DEFAULT_STRATEGY 0"
+.PP
+Recognize by content then by extension.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_t\fP
+.SS "#define DEMUX_EXTENSION_STRATEGY 3"
+.PP
+Recognize by extension only.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_t\fP
+.SS "#define DEMUX_REVERT_STRATEGY 1"
+.PP
+Recognize by extension then by content.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_t\fP \ No newline at end of file
diff --git a/doc/man/en/man3/event_group.3 b/doc/man/en/man3/event_group.3
new file mode 100644
index 000000000..618fda4e6
--- /dev/null
+++ b/doc/man/en/man3/event_group.3
@@ -0,0 +1,141 @@
+.TH "Sending events" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Sending events \-
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef void \fBevent_t\fP"
+.br
+.ti -1c
+.RI "typedef void (* \fBevent_listener_t\fP )(\fBxine_t\fP *xine, \fBevent_t\fP *event, void *data)"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "int \fBxine_register_event_listener\fP (\fBxine_t\fP *self, \fBevent_listener_t\fP listener)"
+.br
+.RI "\fIregisters an event listener callback.\fP"
+.ti -1c
+.RI "int \fBxine_remove_event_listener\fP (\fBxine_t\fP *self, \fBevent_listener_t\fP listener)"
+.br
+.RI "\fIAttempts to remove a registered event listener.\fP"
+.ti -1c
+.RI "void \fBxine_send_event\fP (\fBxine_t\fP *self, \fBevent_t\fP *event, void *data)"
+.br
+.RI "\fIsends an event to all listeners.\fP"
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+Event dispatcher mechanism
+.SH "TYPEDEF DOCUMENTATION"
+.PP
+.SS "typedef void(* event_listener_t)(\fBxine_t\fP *xine, \fBevent_t\fP *event, void *data)"
+.PP
+Event listener callback.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_register_event_listener\fP, \fBxine_remove_event_listener\fP
+.SS "typedef void event_t"
+.PP
+Opaque data type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBevent_listener_t\fP, \fBxine_send_event\fP
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "int xine_register_event_listener (\fBxine_t\fP * self, \fBevent_listener_t\fP listener)"
+.PP
+registers an event listener callback.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.TP
+\fB\fIlistener\fP\fP
+callback function.
+.PP
+\fBReturns: \fP
+.in +1c
+0 if the listener was registerd, non-zero if it could not.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBevent_listener_t\fP
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIlistener\fP\fP
+
+.SS "int xine_remove_event_listener (\fBxine_t\fP * self, \fBevent_listener_t\fP listener)"
+.PP
+Attempts to remove a registered event listener.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.TP
+\fB\fIlistener\fP\fP
+callback function.
+.PP
+\fBReturns: \fP
+.in +1c
+0 if the listener was removes, non-zero if it wasn't (e.g. not found).
+.PP
+\fBSee also: \fP
+.in +1c
+\fBevent_listener_t\fP
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIlistener\fP\fP
+
+.SS "void xine_send_event (\fBxine_t\fP * self, \fBevent_t\fP * event, void * data)"
+.PP
+sends an event to all listeners.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.TP
+\fB\fIevent\fP\fP
+FILLME
+.TP
+\fB\fIdata\fP\fP
+FILLME.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBevent_t\fP
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIevent\fP\fP
+
+.TP
+\fB\fIdata\fP\fP
+ \ No newline at end of file
diff --git a/doc/man/en/man3/loadplugins_group.3 b/doc/man/en/man3/loadplugins_group.3
new file mode 100644
index 000000000..2ecb90d0d
--- /dev/null
+++ b/doc/man/en/man3/loadplugins_group.3
@@ -0,0 +1,141 @@
+.TH "Loading plugins" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Loading plugins \-
+.SS "Modules"
+
+.in +1c
+.ti -1c
+.RI "\fBValid visual types\fP"
+.br
+.in -1c
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBXINE_PLUGINDIR\fP '/usr/local/lib/xine/plugins'"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "char** \fBxine_list_video_output_plugins\fP (int visual_type)"
+.br
+.RI "\fIlist available video output plugins.\fP"
+.ti -1c
+.RI "\fBvo_driver_t\fP* \fBxine_load_video_output_plugin\fP (\fBconfig_values_t\fP *config, char *id, int visual_type, void *visual)"
+.br
+.RI "\fIload a specific video output plugin.\fP"
+.ti -1c
+.RI "char** \fBxine_list_audio_output_plugins\fP (void)"
+.br
+.RI "\fIgenerate a list of all available audio output plugins.\fP"
+.ti -1c
+.RI "\fBao_functions_t\fP* \fBxine_load_audio_output_plugin\fP (\fBconfig_values_t\fP *config, char *id)"
+.br
+.RI "\fIload a specific audio output plugin.\fP"
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+output plugin load support functions
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define XINE_PLUGINDIR '/usr/local/lib/xine/plugins'"
+.PP
+Plugin files location.
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "char ** xine_list_audio_output_plugins (void)"
+.PP
+generate a list of all available audio output plugins.
+.PP
+\fBReturns: \fP
+.in +1c
+a list of available audio output plugins the list returned is sorted by plugin priority
+.SS "char ** xine_list_video_output_plugins (int visual_type)"
+.PP
+list available video output plugins.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIvisual_type\fP\fP
+see Valid visual types
+.PP
+\fBReturns: \fP
+.in +1c
+a list of available video output plugins for the specified visual type - the list is sorted by plugin priority
+.PP
+\fBSee also: \fP
+.in +1c
+Valid visual types
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIvisual_type\fP\fP
+
+.SS "\fBao_functions_t\fP * xine_load_audio_output_plugin (\fBconfig_values_t\fP * config, char * id)"
+.PP
+load a specific audio output plugin.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIconfig\fP\fP
+current configuration ( see \fBconfig_file_init\fP() )
+.TP
+\fB\fIid\fP\fP
+driver name.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBao_functions_t\fP
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIconfig\fP\fP
+
+.TP
+\fB\fIid\fP\fP
+
+.SS "\fBvo_driver_t\fP * xine_load_video_output_plugin (\fBconfig_values_t\fP * config, char * id, int visual_type, void * visual)"
+.PP
+load a specific video output plugin.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIconfig\fP\fP
+current configuration ( see \fBconfig_file_init\fP() )
+.TP
+\fB\fIid\fP\fP
+driver name.
+.TP
+\fB\fIvisual_type\fP\fP
+see Valid visual types
+.TP
+\fB\fIvisual\fP\fP
+visual type dependant data pointer.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP, Valid visual types
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIconfig\fP\fP
+
+.TP
+\fB\fIid\fP\fP
+
+.TP
+\fB\fIvisual_type\fP\fP
+
+.TP
+\fB\fIvisual\fP\fP
+ \ No newline at end of file
diff --git a/doc/man/en/man3/mrl_t.3 b/doc/man/en/man3/mrl_t.3
new file mode 100644
index 000000000..9707972b8
--- /dev/null
+++ b/doc/man/en/man3/mrl_t.3
@@ -0,0 +1,58 @@
+.TH "mrl_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+mrl_t \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "char* \fBorigin\fP"
+.br
+.ti -1c
+.RI "char* \fBmrl\fP"
+.br
+.ti -1c
+.RI "char* \fBlink\fP"
+.br
+.ti -1c
+.RI "uint32_t \fBtype\fP"
+.br
+.ti -1c
+.RI "off_t \fBsize\fP"
+.br
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_get_browse_mrls\fP(), \fBMRL_ZERO\fP, \fBMRL_DUPLICATE\fP, \fBMRLS_DUPLICATE\fP, Types of available mrls
+.PP
+.SH "FIELD DOCUMENTATION"
+.PP
+.SS "char * mrl_t::link"
+.PP
+name of link, if exist, otherwise NULL
+.SS "char * mrl_t::mrl"
+.PP
+<type>://<location>
+.SS "char * mrl_t::origin"
+.PP
+Origin of grabbed mrls (eg: path for file plugin
+.SS "off_t mrl_t::size"
+.PP
+size of this source, may be 0
+.SS "uint32_t mrl_t::type"
+.PP
+match to mrl_type enum
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/mrl_types.3 b/doc/man/en/man3/mrl_types.3
new file mode 100644
index 000000000..ffb74ecea
--- /dev/null
+++ b/doc/man/en/man3/mrl_types.3
@@ -0,0 +1,188 @@
+.TH "Types of available mrls" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Types of available mrls \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBmrl_unknown\fP (0 << 0)"
+.br
+.ti -1c
+.RI "#define \fBmrl_dvd\fP (1 << 0)"
+.br
+.ti -1c
+.RI "#define \fBmrl_vcd\fP (1 << 1)"
+.br
+.ti -1c
+.RI "#define \fBmrl_net\fP (1 << 2)"
+.br
+.ti -1c
+.RI "#define \fBmrl_rtp\fP (1 << 3)"
+.br
+.ti -1c
+.RI "#define \fBmrl_stdin\fP (1 << 4)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file\fP (1 << 5)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_fifo\fP (1 << 6)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_chardev\fP (1 << 7)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_directory\fP (1 << 8)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_blockdev\fP (1 << 9)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_normal\fP (1 << 10)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_symlink\fP (1 << 11)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_sock\fP (1 << 12)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_exec\fP (1 << 13)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_backup\fP (1 << 14)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_hidden\fP (1 << 15)"
+.br
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+These types are bit field, can be used ORed/ANDed.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define mrl_dvd (1 << 0)"
+.PP
+DVD mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file (1 << 5)"
+.PP
+File mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_backup (1 << 14)"
+.PP
+Backup file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_blockdev (1 << 9)"
+.PP
+Block device file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_chardev (1 << 7)"
+.PP
+Char device file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_directory (1 << 8)"
+.PP
+Directory file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_exec (1 << 13)"
+.PP
+Executable file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_fifo (1 << 6)"
+.PP
+Fifo file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_hidden (1 << 15)"
+.PP
+Hidden file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_normal (1 << 10)"
+.PP
+Normal file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_sock (1 << 12)"
+.PP
+Socket file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_file_symlink (1 << 11)"
+.PP
+Soft link file mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_net (1 << 2)"
+.PP
+Network mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_rtp (1 << 3)"
+.PP
+Multicast mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_stdin (1 << 4)"
+.PP
+Standart input mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_unknown (0 << 0)"
+.PP
+Unknow mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP
+.SS "#define mrl_vcd (1 << 1)"
+.PP
+VCD mrl type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBmrl_t\fP \ No newline at end of file
diff --git a/doc/man/en/man3/status_group.3 b/doc/man/en/man3/status_group.3
new file mode 100644
index 000000000..0f2fd2aeb
--- /dev/null
+++ b/doc/man/en/man3/status_group.3
@@ -0,0 +1,51 @@
+.TH "Player status constants" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Player status constants \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBXINE_STOP\fP 0"
+.br
+.ti -1c
+.RI "#define \fBXINE_PLAY\fP 1"
+.br
+.ti -1c
+.RI "#define \fBXINE_PAUSE\fP 2"
+.br
+.ti -1c
+.RI "#define \fBXINE_QUIT\fP 3"
+.br
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define XINE_PAUSE 2"
+.PP
+Pause status.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_get_status\fP()
+.SS "#define XINE_PLAY 1"
+.PP
+Play status.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_get_status\fP()
+.SS "#define XINE_QUIT 3"
+.PP
+Quit status.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_get_status\fP()
+.SS "#define XINE_STOP 0"
+.PP
+Stop status.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_get_status\fP() \ No newline at end of file
diff --git a/doc/man/en/man3/ui_callbacks.3 b/doc/man/en/man3/ui_callbacks.3
new file mode 100644
index 000000000..821783948
--- /dev/null
+++ b/doc/man/en/man3/ui_callbacks.3
@@ -0,0 +1,41 @@
+.TH "UI communication callbacks." 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+UI communication callbacks. \-
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef void (* \fBgui_stream_end_cb_t\fP )(int nStatus)"
+.br
+.ti -1c
+.RI "typedef char* (* \fBgui_get_next_mrl_cb_t\fP )(void)"
+.br
+.ti -1c
+.RI "typedef void (* \fBgui_branched_cb_t\fP )(void)"
+.br
+.in -1c
+.SH "TYPEDEF DOCUMENTATION"
+.PP
+.SS "typedef void(* gui_branched_cb_t)(void)"
+.PP
+Called when xine branched successfully to the next mrl.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_init\fP()
+.SS "typedef char *(* gui_get_next_mrl_cb_t)(void)"
+.PP
+Called when xine tries to branch seamlessly to the next mrl.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_init\fP()
+.SS "typedef void(* gui_stream_end_cb_t)(int nStatus)"
+.PP
+Notify UI when the stream is finished.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_init\fP() \ No newline at end of file
diff --git a/doc/man/en/man3/version_group.3 b/doc/man/en/man3/version_group.3
new file mode 100644
index 000000000..021ffb1f7
--- /dev/null
+++ b/doc/man/en/man3/version_group.3
@@ -0,0 +1,29 @@
+.TH "Version constants" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Version constants \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBXINE_MAJOR_VERSION\fP 0"
+.br
+.ti -1c
+.RI "#define \fBXINE_MINOR_VERSION\fP 5"
+.br
+.ti -1c
+.RI "#define \fBXINE_SUB_VERSION\fP 0"
+.br
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define XINE_MAJOR_VERSION 0"
+.PP
+Major version constant.
+.SS "#define XINE_MINOR_VERSION 5"
+.PP
+Minor version constant.
+.SS "#define XINE_SUB_VERSION 0"
+.PP
+Sub version constant. \ No newline at end of file
diff --git a/doc/man/en/man3/video_cap.3 b/doc/man/en/man3/video_cap.3
new file mode 100644
index 000000000..22348a7e6
--- /dev/null
+++ b/doc/man/en/man3/video_cap.3
@@ -0,0 +1,41 @@
+.TH "video driver capabilities" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+video driver capabilities \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBVO_CAP_HUE\fP 0x00000010"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_SATURATION\fP 0x00000020"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_BRIGHTNESS\fP 0x00000040"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_CONTRAST\fP 0x00000080"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_COLORKEY\fP 0x00000100"
+.br
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define VO_CAP_BRIGHTNESS 0x00000040"
+.PP
+Driver can set BRIGHTNESS value.
+.SS "#define VO_CAP_COLORKEY 0x00000100"
+.PP
+Driver can set COLORKEY value.
+.SS "#define VO_CAP_CONTRAST 0x00000080"
+.PP
+Driver can set CONTRAST value.
+.SS "#define VO_CAP_HUE 0x00000010"
+.PP
+Driver can set HUE value.
+.SS "#define VO_CAP_SATURATION 0x00000020"
+.PP
+Driver can set SATURATION value. \ No newline at end of file
diff --git a/doc/man/en/man3/video_group.3 b/doc/man/en/man3/video_group.3
new file mode 100644
index 000000000..5e676d934
--- /dev/null
+++ b/doc/man/en/man3/video_group.3
@@ -0,0 +1,51 @@
+.TH "Video." 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Video. \-
+.SS "Modules"
+
+.in +1c
+.ti -1c
+.RI "\fBPossible ratios for the VO_PROP_ASPECT_RATIO call\fP"
+.br
+.ti -1c
+.RI "\fBConstants for the get/set properties functions.\fP"
+.br
+.ti -1c
+.RI "\fBvideo driver capabilities\fP"
+.br
+.in -1c
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fBvo_driver_s\fP"
+.br
+.ti -1c
+.RI "struct \fBvo_driver_s\fP"
+.br
+.ti -1c
+.RI "struct \fBvo_driver_t\fP"
+.br
+.RI "\fIData type of structure \fBvo_driver_s\fP.\fP"
+.ti -1c
+.RI "struct \fBvo_frame_t\fP"
+.br
+.ti -1c
+.RI "struct \fBvo_overlay_t\fP"
+.br
+.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef void \fBvo_frame_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBvo_overlay_t\fP"
+.br
+.ti -1c
+.RI "typedef struct \fBvo_driver_s\fP \fBvo_driver_t\fP"
+.br
+.in -1c \ No newline at end of file
diff --git a/doc/man/en/man3/video_prop.3 b/doc/man/en/man3/video_prop.3
new file mode 100644
index 000000000..f4964e411
--- /dev/null
+++ b/doc/man/en/man3/video_prop.3
@@ -0,0 +1,91 @@
+.TH "Constants for the get/set properties functions." 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Constants for the get/set properties functions. \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBVO_PROP_INTERLACED\fP 0"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_ASPECT_RATIO\fP 1"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_HUE\fP 2"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_SATURATION\fP 3"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_CONTRAST\fP 4"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_BRIGHTNESS\fP 5"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_COLORKEY\fP 6"
+.br
+.ti -1c
+.RI "#define \fBVO_NUM_PROPERTIES\fP 7"
+.br
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define VO_NUM_PROPERTIES 7"
+.PP
+Number of available properties property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.SS "#define VO_PROP_ASPECT_RATIO 1"
+.PP
+Aspect ratio property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP, Possible ratios for the VO_PROP_ASPECT_RATIO call
+.SS "#define VO_PROP_BRIGHTNESS 5"
+.PP
+Brightness property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.SS "#define VO_PROP_COLORKEY 6"
+.PP
+Colorkey property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.SS "#define VO_PROP_CONTRAST 4"
+.PP
+Contrast property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.SS "#define VO_PROP_HUE 2"
+.PP
+Hue property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.SS "#define VO_PROP_INTERLACED 0"
+.PP
+Interleave property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.SS "#define VO_PROP_SATURATION 3"
+.PP
+Saturation property.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP \ No newline at end of file
diff --git a/doc/man/en/man3/video_ratio.3 b/doc/man/en/man3/video_ratio.3
new file mode 100644
index 000000000..96993b9ea
--- /dev/null
+++ b/doc/man/en/man3/video_ratio.3
@@ -0,0 +1,56 @@
+.TH "Possible ratios for the VO_PROP_ASPECT_RATIO call" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Possible ratios for the VO_PROP_ASPECT_RATIO call \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBASPECT_AUTO\fP 0"
+.br
+.ti -1c
+.RI "#define \fBASPECT_ANAMORPHIC\fP 1"
+.br
+.ti -1c
+.RI "#define \fBASPECT_FULL\fP 2"
+.br
+.ti -1c
+.RI "#define \fBASPECT_DVB\fP 3"
+.br
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+\fBSee also: \fP
+.in +1c
+\fBVO_PROP_ASPECT_RATIO\fP, \fBvo_driver_t\fP
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define ASPECT_ANAMORPHIC 1"
+.PP
+Set aspect ration to 16:9.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBVO_PROP_ASPECT_RATIO\fP
+.SS "#define ASPECT_AUTO 0"
+.PP
+Let video driver guessing aspect ratio.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBVO_PROP_ASPECT_RATIO\fP
+.SS "#define ASPECT_DVB 3"
+.PP
+Set aspect ration to 1:2.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBVO_PROP_ASPECT_RATIO\fP
+.SS "#define ASPECT_FULL 2"
+.PP
+Set aspect ration to 4:3.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBVO_PROP_ASPECT_RATIO\fP \ No newline at end of file
diff --git a/doc/man/en/man3/visual_types.3 b/doc/man/en/man3/visual_types.3
new file mode 100644
index 000000000..cb34ce52e
--- /dev/null
+++ b/doc/man/en/man3/visual_types.3
@@ -0,0 +1,51 @@
+.TH "Valid visual types" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Valid visual types \-
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_X11\fP 1"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_AA\fP 2"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_FB\fP 3"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_GTK\fP 4"
+.br
+.in -1c
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define VISUAL_TYPE_AA 2"
+.PP
+Asci Art visual type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_list_video_output_plugins\fP, \fBxine_load_video_output_plugin\fP
+.SS "#define VISUAL_TYPE_FB 3"
+.PP
+Framebuffer visual type
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_list_video_output_plugins\fP, \fBxine_load_video_output_plugin\fP
+.SS "#define VISUAL_TYPE_GTK 4"
+.PP
+GTK visual type
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_list_video_output_plugins\fP, \fBxine_load_video_output_plugin\fP
+.SS "#define VISUAL_TYPE_X11 1"
+.PP
+X11 visual type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_list_video_output_plugins\fP, \fBxine_load_video_output_plugin\fP \ No newline at end of file
diff --git a/doc/man/en/man3/vo_driver_s.3 b/doc/man/en/man3/vo_driver_s.3
new file mode 100644
index 000000000..da2c2ed78
--- /dev/null
+++ b/doc/man/en/man3/vo_driver_s.3
@@ -0,0 +1,102 @@
+.TH "vo_driver_s" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+vo_driver_s \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "uint32_t (* \fBget_capabilities\fP )(\fBvo_driver_t\fP *self)"
+.br
+.ti -1c
+.RI "\fBvo_frame_t\fP* (* \fBalloc_frame\fP )(\fBvo_driver_t\fP *self)"
+.br
+.ti -1c
+.RI "void (* \fBupdate_frame_format\fP )(\fBvo_driver_t\fP *self, \fBvo_frame_t\fP *img, uint32_t width, uint32_t height, int ratio_code, int format)"
+.br
+.ti -1c
+.RI "void (* \fBdisplay_frame\fP )(\fBvo_driver_t\fP *self, \fBvo_frame_t\fP *vo_img)"
+.br
+.ti -1c
+.RI "void (* \fBoverlay_blend\fP )(\fBvo_driver_t\fP *self, \fBvo_frame_t\fP *vo_img, \fBvo_overlay_t\fP *overlay)"
+.br
+.ti -1c
+.RI "int (* \fBget_property\fP )(\fBvo_driver_t\fP *self, int property)"
+.br
+.ti -1c
+.RI "int (* \fBset_property\fP )(\fBvo_driver_t\fP *self, int property, int value)"
+.br
+.ti -1c
+.RI "void (* \fBget_property_min_max\fP )(\fBvo_driver_t\fP *self, int property, int *min, int *max)"
+.br
+.ti -1c
+.RI "int (* \fBgui_data_exchange\fP )(\fBvo_driver_t\fP *self, int data_type, void *data)"
+.br
+.ti -1c
+.RI "void (* \fBexit\fP )(\fBvo_driver_t\fP *self)"
+.br
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+Video driver fonctions.
+.PP
+.SH "FIELD DOCUMENTATION"
+.PP
+.SS "\fBvo_frame_t\fP *(* vo_driver_s::alloc_frame)(\fBvo_driver_t\fP *self)"
+.PP
+Allocate an \fBvo_frame_t\fP struct, the driver must supply the copy, field and dispose functions
+.SS "void(* vo_driver_s::display_frame)(\fBvo_driver_t\fP *self, \fBvo_frame_t\fP *vo_img)"
+.PP
+Display a given frame
+.SS "void(* vo_driver_s::exit)(\fBvo_driver_t\fP *self)"
+.PP
+Leaving video driver.
+.SS "uint32_t(* vo_driver_s::get_capabilities)(\fBvo_driver_t\fP *self)"
+.PP
+Get capabilities of video driver.
+.PP
+\fBSee also: \fP
+.in +1c
+video driver capabilities
+.SS "int(* vo_driver_s::get_property)(\fBvo_driver_t\fP *self, int property)"
+.PP
+Get value if property.
+.PP
+\fBSee also: \fP
+.in +1c
+Constants for the get/set properties functions.
+.SS "void(* vo_driver_s::get_property_min_max)(\fBvo_driver_t\fP *self, int property, int *min, int *max)"
+.PP
+Get min/max values of property.
+.PP
+\fBSee also: \fP
+.in +1c
+Constants for the get/set properties functions.
+.SS "int(* vo_driver_s::gui_data_exchange)(\fBvo_driver_t\fP *self, int data_type, void *data)"
+.PP
+General purpose communication channel between gui and driver
+.PP
+this should be used to propagate events, display data, window sizes etc. to the driver
+.SS "void(* vo_driver_s::overlay_blend)(\fBvo_driver_t\fP *self, \fBvo_frame_t\fP *vo_img, \fBvo_overlay_t\fP *overlay)"
+.PP
+Overlay functions
+.SS "int(* vo_driver_s::set_property)(\fBvo_driver_t\fP *self, int property, int value)"
+.PP
+Set value of property.
+.PP
+\fBSee also: \fP
+.in +1c
+Constants for the get/set properties functions.
+.SS "void(* vo_driver_s::update_frame_format)(\fBvo_driver_t\fP *self, \fBvo_frame_t\fP *img, uint32_t width, uint32_t height, int ratio_code, int format)"
+.PP
+Check if the given image fullfills the format specified (re-)allocate memory if necessary
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/vo_driver_t.3 b/doc/man/en/man3/vo_driver_t.3
new file mode 100644
index 000000000..686a5da8c
--- /dev/null
+++ b/doc/man/en/man3/vo_driver_t.3
@@ -0,0 +1,23 @@
+.TH "vo_driver_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+vo_driver_t \- Data type of structure \fBvo_driver_s\fP.
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Data type of structure \fBvo_driver_s\fP.
+.PP
+\fBSee also: \fP
+.in +1c
+structure \fBvo_driver_s\fP.
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/vo_frame_t.3 b/doc/man/en/man3/vo_frame_t.3
new file mode 100644
index 000000000..b330f8693
--- /dev/null
+++ b/doc/man/en/man3/vo_frame_t.3
@@ -0,0 +1,23 @@
+.TH "vo_frame_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+vo_frame_t \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Opaque data type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/vo_overlay_t.3 b/doc/man/en/man3/vo_overlay_t.3
new file mode 100644
index 000000000..7fa6822ca
--- /dev/null
+++ b/doc/man/en/man3/vo_overlay_t.3
@@ -0,0 +1,23 @@
+.TH "vo_overlay_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+vo_overlay_t \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Opaque data type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/xine.h.3 b/doc/man/en/man3/xine.h.3
new file mode 100644
index 000000000..36f7fd604
--- /dev/null
+++ b/doc/man/en/man3/xine.h.3
@@ -0,0 +1,400 @@
+.TH "xine.h" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+xine.h \-
+.SH SYNOPSIS
+.br
+.PP
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fBconfig_values_s\fP"
+.br
+.ti -1c
+.RI "struct \fBmrl_t\fP"
+.br
+.ti -1c
+.RI "struct \fBvo_driver_s\fP"
+.br
+.in -1c
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBXINE_SKINDIR\fP '/usr/local/share/xine/skins'"
+.br
+.ti -1c
+.RI "#define \fBXINE_BUILD_CC\fP 'gcc version 2.95.3 20010315 (release)'"
+.br
+.ti -1c
+.RI "#define \fBXINE_BUILD_OS\fP 'Linux 2.4.5 i686'"
+.br
+.ti -1c
+.RI "#define \fBXINE_BUILD_DATE\fP 'Thu 26 Jul 2001 09:17:10'"
+.br
+.ti -1c
+.RI "#define \fBXINE_STOP\fP 0"
+.br
+.ti -1c
+.RI "#define \fBXINE_PLAY\fP 1"
+.br
+.ti -1c
+.RI "#define \fBXINE_PAUSE\fP 2"
+.br
+.ti -1c
+.RI "#define \fBXINE_QUIT\fP 3"
+.br
+.ti -1c
+.RI "#define \fBXINE_MAJOR_VERSION\fP 0"
+.br
+.ti -1c
+.RI "#define \fBXINE_MINOR_VERSION\fP 5"
+.br
+.ti -1c
+.RI "#define \fBXINE_SUB_VERSION\fP 0"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_HUE\fP 0x00000010"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_SATURATION\fP 0x00000020"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_BRIGHTNESS\fP 0x00000040"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_CONTRAST\fP 0x00000080"
+.br
+.ti -1c
+.RI "#define \fBVO_CAP_COLORKEY\fP 0x00000100"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_INTERLACED\fP 0"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_ASPECT_RATIO\fP 1"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_HUE\fP 2"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_SATURATION\fP 3"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_CONTRAST\fP 4"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_BRIGHTNESS\fP 5"
+.br
+.ti -1c
+.RI "#define \fBVO_PROP_COLORKEY\fP 6"
+.br
+.ti -1c
+.RI "#define \fBVO_NUM_PROPERTIES\fP 7"
+.br
+.ti -1c
+.RI "#define \fBASPECT_AUTO\fP 0"
+.br
+.ti -1c
+.RI "#define \fBASPECT_ANAMORPHIC\fP 1"
+.br
+.ti -1c
+.RI "#define \fBASPECT_FULL\fP 2"
+.br
+.ti -1c
+.RI "#define \fBASPECT_DVB\fP 3"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_DEFAULT_STRATEGY\fP 0"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_REVERT_STRATEGY\fP 1"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_CONTENT_STRATEGY\fP 2"
+.br
+.ti -1c
+.RI "#define \fBDEMUX_EXTENSION_STRATEGY\fP 3"
+.br
+.ti -1c
+.RI "#define \fBmrl_unknown\fP (0 << 0)"
+.br
+.ti -1c
+.RI "#define \fBmrl_dvd\fP (1 << 0)"
+.br
+.ti -1c
+.RI "#define \fBmrl_vcd\fP (1 << 1)"
+.br
+.ti -1c
+.RI "#define \fBmrl_net\fP (1 << 2)"
+.br
+.ti -1c
+.RI "#define \fBmrl_rtp\fP (1 << 3)"
+.br
+.ti -1c
+.RI "#define \fBmrl_stdin\fP (1 << 4)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file\fP (1 << 5)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_fifo\fP (1 << 6)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_chardev\fP (1 << 7)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_directory\fP (1 << 8)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_blockdev\fP (1 << 9)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_normal\fP (1 << 10)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_symlink\fP (1 << 11)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_sock\fP (1 << 12)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_exec\fP (1 << 13)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_backup\fP (1 << 14)"
+.br
+.ti -1c
+.RI "#define \fBmrl_file_hidden\fP (1 << 15)"
+.br
+.ti -1c
+.RI "#define \fBMRL_ZERO\fP(m)"
+.br
+.ti -1c
+.RI "#define \fBMRL_DUPLICATE\fP(s, d)"
+.br
+.ti -1c
+.RI "#define \fBMRLS_DUPLICATE\fP(s, d)"
+.br
+.ti -1c
+.RI "#define \fBXINE_PLUGINDIR\fP '/usr/local/lib/xine/plugins'"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_X11\fP 1"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_AA\fP 2"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_FB\fP 3"
+.br
+.ti -1c
+.RI "#define \fBVISUAL_TYPE_GTK\fP 4"
+.br
+.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef void \fBvo_frame_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBvo_overlay_t\fP"
+.br
+.ti -1c
+.RI "typedef struct \fBvo_driver_s\fP \fBvo_driver_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBxine_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBao_functions_t\fP"
+.br
+.ti -1c
+.RI "typedef void \fBcfg_data_t\fP"
+.br
+.ti -1c
+.RI "typedef struct \fBconfig_values_s\fP \fBconfig_values_t\fP"
+.br
+.ti -1c
+.RI "typedef void (* \fBgui_stream_end_cb_t\fP )(int nStatus)"
+.br
+.ti -1c
+.RI "typedef char* (* \fBgui_get_next_mrl_cb_t\fP )(void)"
+.br
+.ti -1c
+.RI "typedef void (* \fBgui_branched_cb_t\fP )(void)"
+.br
+.ti -1c
+.RI "typedef void \fBevent_t\fP"
+.br
+.ti -1c
+.RI "typedef void (* \fBevent_listener_t\fP )(\fBxine_t\fP *xine, \fBevent_t\fP *event, void *data)"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "char* \fBxine_get_str_version\fP (void)"
+.br
+.RI "\fIreturn string version, like '0.5.0'.\fP"
+.ti -1c
+.RI "int \fBxine_get_major_version\fP (void)"
+.br
+.RI "\fIreturn version information.\fP"
+.ti -1c
+.RI "int \fBxine_get_minor_version\fP (void)"
+.br
+.RI "\fIreturn version information.\fP"
+.ti -1c
+.RI "int \fBxine_get_sub_version\fP (void)"
+.br
+.RI "\fIreturn version information.\fP"
+.ti -1c
+.RI "int \fBxine_check_version\fP (int major, int minor, int sub)"
+.br
+.RI "\fIcheck minimal version.\fP"
+.ti -1c
+.RI "\fBconfig_values_t\fP* \fBconfig_file_init\fP (char *filename)"
+.br
+.RI "\fIConfiguration file initialisation.\fP"
+.ti -1c
+.RI "\fBxine_t\fP* \fBxine_init\fP (\fBvo_driver_t\fP *vo, \fBao_functions_t\fP *ao, \fBconfig_values_t\fP *config, \fBgui_stream_end_cb_t\fP stream_end_cb, \fBgui_get_next_mrl_cb_t\fP get_next_mrl_cb, \fBgui_branched_cb_t\fP branched_cb)"
+.br
+.RI "\fIInitialisation of xine.\fP"
+.ti -1c
+.RI "void \fBxine_exit\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIDe-initialisation of xine.\fP"
+.ti -1c
+.RI "void \fBxine_play\fP (\fBxine_t\fP *self, char *MRL, int pos)"
+.br
+.RI "\fIStart to play a stream.\fP"
+.ti -1c
+.RI "void \fBxine_pause\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIPause toggle.\fP"
+.ti -1c
+.RI "void \fBxine_stop\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIStop playing.\fP"
+.ti -1c
+.RI "int \fBxine_eject\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIEject media.\fP"
+.ti -1c
+.RI "int \fBxine_get_status\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current xine status.\fP"
+.ti -1c
+.RI "int \fBxine_get_current_position\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current position.\fP"
+.ti -1c
+.RI "int \fBxine_get_audio_channel\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current audio channel.\fP"
+.ti -1c
+.RI "void \fBxine_select_audio_channel\fP (\fBxine_t\fP *self, int channel)"
+.br
+.RI "\fISet audio channel.\fP"
+.ti -1c
+.RI "int \fBxine_get_spu_channel\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current sub-title channel.\fP"
+.ti -1c
+.RI "void \fBxine_select_spu_channel\fP (\fBxine_t\fP *self, int channel)"
+.br
+.RI "\fISet sub-title channel.\fP"
+.ti -1c
+.RI "char** \fBxine_get_browsable_input_plugin_ids\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIRequest list of browsable featured plugins.\fP"
+.ti -1c
+.RI "\fBmrl_t\fP** \fBxine_get_browse_mrls\fP (\fBxine_t\fP *self, char *plugin_id, char *start_mrl, int *num_mrls)"
+.br
+.RI "\fIRequest available MRLs from plugins.\fP"
+.ti -1c
+.RI "char** \fBxine_get_autoplay_input_plugin_ids\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIRequest playlist from plugin.\fP"
+.ti -1c
+.RI "char** \fBxine_get_autoplay_mrls\fP (\fBxine_t\fP *self, char *plugin_id, int *num_mrls)"
+.br
+.RI "\fIRequest MRL list from plugin.\fP"
+.ti -1c
+.RI "char** \fBxine_list_video_output_plugins\fP (int visual_type)"
+.br
+.RI "\fIlist available video output plugins.\fP"
+.ti -1c
+.RI "\fBvo_driver_t\fP* \fBxine_load_video_output_plugin\fP (\fBconfig_values_t\fP *config, char *id, int visual_type, void *visual)"
+.br
+.RI "\fIload a specific video output plugin.\fP"
+.ti -1c
+.RI "char** \fBxine_list_audio_output_plugins\fP (void)"
+.br
+.RI "\fIgenerate a list of all available audio output plugins.\fP"
+.ti -1c
+.RI "\fBao_functions_t\fP* \fBxine_load_audio_output_plugin\fP (\fBconfig_values_t\fP *config, char *id)"
+.br
+.RI "\fIload a specific audio output plugin.\fP"
+.ti -1c
+.RI "int \fBxine_register_event_listener\fP (\fBxine_t\fP *self, \fBevent_listener_t\fP listener)"
+.br
+.RI "\fIregisters an event listener callback.\fP"
+.ti -1c
+.RI "int \fBxine_remove_event_listener\fP (\fBxine_t\fP *self, \fBevent_listener_t\fP listener)"
+.br
+.RI "\fIAttempts to remove a registered event listener.\fP"
+.ti -1c
+.RI "void \fBxine_send_event\fP (\fBxine_t\fP *self, \fBevent_t\fP *event, void *data)"
+.br
+.RI "\fIsends an event to all listeners.\fP"
+.in -1c
+.SH "DETAILED DESCRIPTION"
+.PP
+.PP
+\fBAuthor: \fP
+.in +1c
+Guenter Bartsch <guenter@users.sourceforge.net> , Siegfried Langauf <siggi@users.sourceforge.net> , Daniel Caujolle-Bert <f1rmb@users.sourceforge.net>
+.PP
+\fBDate: \fP
+.in +1c
+25/07/2001
+.PP
+API of XINE library.
+.PP
+.nf
+
+ Copyright (C) 2000-2001 the xine project
+
+ This file is part of xine, a unix video player.
+
+ xine 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.
+
+ xine is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+
+.fi
+.PP
+.SH "DEFINE DOCUMENTATION"
+.PP
+.SS "#define XINE_SKINDIR '/usr/local/share/xine/skins'"
+.PP
+Skin file location
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/xine_api.3 b/doc/man/en/man3/xine_api.3
new file mode 100644
index 000000000..805534f9b
--- /dev/null
+++ b/doc/man/en/man3/xine_api.3
@@ -0,0 +1,39 @@
+.TH "API functions" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+API functions \-
+.SS "Modules"
+
+.in +1c
+.ti -1c
+.RI "\fBSending events\fP"
+.br
+.ti -1c
+.RI "\fBLoading plugins\fP"
+.br
+.ti -1c
+.RI "\fBAutoplay support\fP"
+.br
+.ti -1c
+.RI "\fBBrowsing support\fP"
+.br
+.ti -1c
+.RI "\fBEngine management\fP"
+.br
+.ti -1c
+.RI "\fBInit functions\fP"
+.br
+.ti -1c
+.RI "\fBVideo.\fP"
+.br
+.ti -1c
+.RI "\fBVersion functions\fP"
+.br
+.ti -1c
+.RI "\fBVersion constants\fP"
+.br
+.ti -1c
+.RI "\fBPlayer status constants\fP"
+.br
+.in -1c \ No newline at end of file
diff --git a/doc/man/en/man3/xine_init.3 b/doc/man/en/man3/xine_init.3
new file mode 100644
index 000000000..5e7aa8a80
--- /dev/null
+++ b/doc/man/en/man3/xine_init.3
@@ -0,0 +1,149 @@
+.TH "Init functions" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Init functions \-
+.SS "Modules"
+
+.in +1c
+.ti -1c
+.RI "\fBPossible demuxer guessing strategy.\fP"
+.br
+.ti -1c
+.RI "\fBUI communication callbacks.\fP"
+.br
+.ti -1c
+.RI "\fBConfiguration structure type.\fP"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "\fBconfig_values_t\fP* \fBconfig_file_init\fP (char *filename)"
+.br
+.RI "\fIConfiguration file initialisation.\fP"
+.ti -1c
+.RI "\fBxine_t\fP* \fBxine_init\fP (\fBvo_driver_t\fP *vo, \fBao_functions_t\fP *ao, \fBconfig_values_t\fP *config, \fBgui_stream_end_cb_t\fP stream_end_cb, \fBgui_get_next_mrl_cb_t\fP get_next_mrl_cb, \fBgui_branched_cb_t\fP branched_cb)"
+.br
+.RI "\fIInitialisation of xine.\fP"
+.ti -1c
+.RI "void \fBxine_exit\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIDe-initialisation of xine.\fP"
+.in -1c
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "\fBconfig_values_t\fP * config_file_init (char * filename)"
+.PP
+Configuration file initialisation.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIfilename\fP\fP
+Pathname of configuration file.
+.PP
+\fBReturns: \fP
+.in +1c
+Current config
+.PP
+\fBSee also: \fP
+.in +1c
+\fBconfig_values_t\fP
+.PP
+\fBWarning: \fP
+.in +1c
+This function should be called at least one time before \fBxine_init\fP() call.
+.PP
+Read config file and init a config object of \fBconfig_values_t\fP type (if it exists)
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIfilename\fP\fP
+
+.SS "void xine_exit (\fBxine_t\fP * self)"
+.PP
+De-initialisation of xine.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration.
+.PP
+\fBReturns: \fP
+.in +1c
+Nothing
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_init\fP()
+.PP
+De-init xine engine.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "\fBxine_t\fP * xine_init (\fBvo_driver_t\fP * vo, \fBao_functions_t\fP * ao, \fBconfig_values_t\fP * config, \fBgui_stream_end_cb_t\fP stream_end_cb, \fBgui_get_next_mrl_cb_t\fP get_next_mrl_cb, \fBgui_branched_cb_t\fP branched_cb)"
+.PP
+Initialisation of xine.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIvo\fP\fP
+video driver ( see \fBxine_load_video_output_plugin\fP() )
+.TP
+\fB\fIao\fP\fP
+audio driver ( see \fBxine_load_audio_output_plugin\fP() )
+.TP
+\fB\fIconfig\fP\fP
+current configuration ( see \fBconfig_file_init\fP() )
+.TP
+\fB\fIstream_end\fP\fP
+cb called on stream end
+.TP
+\fB\fIget_next_mrl_cb\fP\fP
+called to find out next mrl for seamless branching
+.TP
+\fB\fIbranched_cb\fP\fP
+called if seamless branch was taken
+.PP
+\fBReturns: \fP
+.in +1c
+Current xine engine configuration
+.PP
+\fBSee also: \fP
+.in +1c
+\fBvo_driver_t\fP, \fBao_functions_t\fP, \fBconfig_values_t\fP, \fBgui_stream_end_cb_t\fP, \fBgui_get_next_mrl_cb_t\fP, \fBgui_branched_cb_t\fP
+.PP
+\fBWarning: \fP
+.in +1c
+This function should be called before any other xine_*() function.
+.PP
+Init of xine. It should called once at startup. all callbacks may be NULL if ui is not interested in them for whatever reason ao may be NULL for no audio playback
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIvo\fP\fP
+
+.TP
+\fB\fIao\fP\fP
+
+.TP
+\fB\fIconfig\fP\fP
+
+.TP
+\fB\fIstream_end_cb\fP\fP
+
+.TP
+\fB\fIget_next_mrl_cb\fP\fP
+
+.TP
+\fB\fIbranched_cb\fP\fP
+ \ No newline at end of file
diff --git a/doc/man/en/man3/xine_management.3 b/doc/man/en/man3/xine_management.3
new file mode 100644
index 000000000..874c926e1
--- /dev/null
+++ b/doc/man/en/man3/xine_management.3
@@ -0,0 +1,279 @@
+.TH "Engine management" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Engine management \-
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "void \fBxine_play\fP (\fBxine_t\fP *self, char *MRL, int pos)"
+.br
+.RI "\fIStart to play a stream.\fP"
+.ti -1c
+.RI "void \fBxine_pause\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIPause toggle.\fP"
+.ti -1c
+.RI "void \fBxine_stop\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIStop playing.\fP"
+.ti -1c
+.RI "int \fBxine_eject\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIEject media.\fP"
+.ti -1c
+.RI "int \fBxine_get_status\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current xine status.\fP"
+.ti -1c
+.RI "int \fBxine_get_current_position\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current position.\fP"
+.ti -1c
+.RI "int \fBxine_get_audio_channel\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current audio channel.\fP"
+.ti -1c
+.RI "void \fBxine_select_audio_channel\fP (\fBxine_t\fP *self, int channel)"
+.br
+.RI "\fISet audio channel.\fP"
+.ti -1c
+.RI "int \fBxine_get_spu_channel\fP (\fBxine_t\fP *self)"
+.br
+.RI "\fIGet current sub-title channel.\fP"
+.ti -1c
+.RI "void \fBxine_select_spu_channel\fP (\fBxine_t\fP *self, int channel)"
+.br
+.RI "\fISet sub-title channel.\fP"
+.in -1c
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "int xine_eject (\fBxine_t\fP * self)"
+.PP
+Eject media.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+1 on success, 0 on failure.
+.PP
+Tell current input plugin to eject media.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "int xine_get_audio_channel (\fBxine_t\fP * self)"
+.PP
+Get current audio channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Current audio chennel
+.PP
+Get current audio channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "int xine_get_current_position (\fBxine_t\fP * self)"
+.PP
+Get current position.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Current position ( 0..65535 )
+.PP
+Get current position in stream.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "int xine_get_spu_channel (\fBxine_t\fP * self)"
+.PP
+Get current sub-title channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Current sub-title channel
+.PP
+Get current sub-title channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "int xine_get_status (\fBxine_t\fP * self)"
+.PP
+Get current xine status.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Current status ( see Player status constants )
+.PP
+Return the current state of xine engine.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "void xine_pause (\fBxine_t\fP * self)"
+.PP
+Pause toggle.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Nothing
+.PP
+Toggle pause mode.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.SS "void xine_play (\fBxine_t\fP * self, char * MRL, int pos)"
+.PP
+Start to play a stream.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.TP
+\fB\fIMRL\fP\fP
+Media Resource Location to open
+.TP
+\fB\fIpos\fP\fP
+Start from position (0..65535)
+.PP
+\fBReturns: \fP
+.in +1c
+Nothing
+.PP
+Open a stream and play it
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIMRL\fP\fP
+
+.TP
+\fB\fIpos\fP\fP
+
+.SS "void xine_select_audio_channel (\fBxine_t\fP * self, int channel)"
+.PP
+Set audio channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Nothing
+.PP
+Set desired audio channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIchannel\fP\fP
+
+.SS "void xine_select_spu_channel (\fBxine_t\fP * self, int channel)"
+.PP
+Set sub-title channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Nothing
+.PP
+Set desired sub-title channel.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+
+.TP
+\fB\fIchannel\fP\fP
+
+.SS "void xine_stop (\fBxine_t\fP * self)"
+.PP
+Stop playing.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+Current xine engine configuration ( see \fBxine_init\fP() )
+.PP
+\fBReturns: \fP
+.in +1c
+Nothing
+.PP
+Stop the playback.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fIself\fP\fP
+ \ No newline at end of file
diff --git a/doc/man/en/man3/xine_t.3 b/doc/man/en/man3/xine_t.3
new file mode 100644
index 000000000..1501ba3e7
--- /dev/null
+++ b/doc/man/en/man3/xine_t.3
@@ -0,0 +1,23 @@
+.TH "xine_t" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+xine_t \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <xine.h>\fP
+.PP
+.SH "DETAILED DESCRIPTION"
+.PP
+Opaque data type.
+.PP
+\fBSee also: \fP
+.in +1c
+\fBxine_load_audio_output_plugin\fP
+.PP
+
+
+.SH "AUTHOR"
+.PP
+Generated automatically by Doxygen for XINE, A Free Video Player Project - API reference from the source code. \ No newline at end of file
diff --git a/doc/man/en/man3/xine_version.3 b/doc/man/en/man3/xine_version.3
new file mode 100644
index 000000000..6256448a0
--- /dev/null
+++ b/doc/man/en/man3/xine_version.3
@@ -0,0 +1,108 @@
+.TH "Version functions" 3 "26 Jul 2001" "XINE, A Free Video Player Project - API reference" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+Version functions \-
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "char* \fBxine_get_str_version\fP (void)"
+.br
+.RI "\fIreturn string version, like '0.5.0'.\fP"
+.ti -1c
+.RI "int \fBxine_get_major_version\fP (void)"
+.br
+.RI "\fIreturn version information.\fP"
+.ti -1c
+.RI "int \fBxine_get_minor_version\fP (void)"
+.br
+.RI "\fIreturn version information.\fP"
+.ti -1c
+.RI "int \fBxine_get_sub_version\fP (void)"
+.br
+.RI "\fIreturn version information.\fP"
+.ti -1c
+.RI "int \fBxine_check_version\fP (int major, int minor, int sub)"
+.br
+.RI "\fIcheck minimal version.\fP"
+.in -1c
+.SH "FUNCTION DOCUMENTATION"
+.PP
+.SS "int xine_check_version (int major, int minor, int sub)"
+.PP
+check minimal version.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fImajor\fP\fP
+major version wanted.
+.TP
+\fB\fIminorr\fP\fP
+minor version wanted.
+.TP
+\fB\fIsub\fP\fP
+sub version wanted.
+.PP
+\fBReturns: \fP
+.in +1c
+1 if installed version is >= to desired, otherwise 0
+.PP
+Compare version numbers with xine installed version.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fImajor\fP\fP
+
+.TP
+\fB\fIminor\fP\fP
+
+.TP
+\fB\fIsub\fP\fP
+
+.SS "int xine_get_major_version (void)"
+.PP
+return version information.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fINone.\fP\fP
+\fBReturns: \fP
+.in +1c
+major version.
+.SS "int xine_get_minor_version (void)"
+.PP
+return version information.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fINone.\fP\fP
+\fBReturns: \fP
+.in +1c
+minor version.
+.SS "char * xine_get_str_version (void)"
+.PP
+return string version, like '0.5.0'.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fINone.\fP\fP
+\fBReturns: \fP
+.in +1c
+string version
+.SS "int xine_get_sub_version (void)"
+.PP
+return version information.
+.PP
+\fBParameters: \fP
+.in +1c
+.TP
+\fB\fINone.\fP\fP
+\fBReturns: \fP
+.in +1c
+sub version. \ No newline at end of file