.PU
.TH mozplugger 7
.SH NAME
mozplugger \- a streaming multimedia plugin for UNIX mozilla
.br
mozpluggerrc \- configure file for mozplugger

.SH DESCRIPTION
.I MozPlugger
is a  Mozilla plugin which can show many types of multimedia
inside your Mozilla. To accomplish this, MozPlugger uses external
programs such as mplayer, xanim, mtv, timidity and tracker.

.SH CONFIGURE FILE
You can configure mozplugger by changing the file
.I mozpluggerrc
which can be located in any of the following directories:

	$HOME/.netscape/
.br
	$HOME/.opera/
.br
	$MOZILLA_HOME/
.br
	$OPERA_HOME/
.br
	/usr/local/netscape/mozpluggerrc
.br
	/etc/mozpluggerrc
.br
	/usr/etc/mozpluggerrc
.br
	/usr/local/etc/mozpluggerrc


The format of
.I mozpluggerrc
is very simple. The general layout is to have one or more lines
describing mime-types followed by one or more lines describing
commands used to handle those mime-types. Lines beginning with
# are considered comments and are ignored. Here is a simple example:

	video/mpeg; mpeg; Mpeg video
.br
	video/quicktime; qt; Mpeg video
.br
		: xanim +W$window -Zr +q +Ze +f $file

Each line describing a mime type has three fields:

	
.B mime type
;
.B extensions
;
.B description

.TP
.B mime type
The mime type is the standardized name for the content type you want
MozPlugger to handle. This must be the same type as the web server claims
the file to be, or MozPlugger will not be used for that file, regardless
of the extension.
.TP
.B extensions
This is a comma separated list of extensions that should be associated
with this particular mime type. The extensions are only used when a web
server does not report what type of file it is, or when loading files
directly from disk.
.TP
.B description
This is the description that shows up in about:plugins and in the
application preferences section in Mozilla.


Lines that describe what command to use for a mime type must begin
with a whitespace and have two fields:

	
.B flags
:
.B command

.TP
.B flags
This is a comma-separated list of flags which tells mozplugger how to
handle this particular application. See below for further details.
.TP
.B command
This is a command which is sent to /bin/sh when handling this mime
type.


.SH FINDING THE RIGHT COMMAND

When MozPlugger is called from your browser, it looks through the
configuration file and tries to find a matching mime type.
For an application to be chosen it has to fulfill certain criteria, it
has to exist, and it must match the flags given to mozplugger.

When it does, it tries to figure out which command to use.
First, it looks through all the commands for that
particular mime type to see if it can find an application that has the
.B stream
flag. If it cannot find a streaming application it downloads the file
and tries again. Note that MozPlugger will check the first word of the command
and search your $PATH for that command. If that command is not found
MozPlugger will go to the next line in your mozpluggerrc.

.SH FLAGS
.TP
.B repeat
This indicates that the command uses the $repeat variable.
.TP
.B loop
This indicates that the application loops forever. If the <EMBED>
tag used to start MozPlugger indicated that the file should not
loop forever, the command on this line will not be used.
.TP
.B stream
This indicates that this application can take an url. In this case, the
variable $file contains the URL of the file to play and the browser
does not download it.
.TP
.B ignore_errors
This flag tells MozPlugger to ignore the exit status of the application.
.TP
.B noisy
This flag tells MozPlugger to redirect the stdout and stderr of the application to /dev/null.
.TP
.B nokill
This will tell MozPlugger not to try to kill the application when
leaving the page. This is normally used for programs which start
in their own window and can play multiple files, such as xmms.
.TP
.B swallow ( name )
This is the only flag that takes an argument so far. It will tell
mozplugger that the application will open a window with the specified
name and that this window will then be moved to inside your browser.
.TP
.B event_swallow ( name )
This flag is a lighter swallow() that uses X11 events.
.TP
.B fill
This keyword is used to maximize an swallowed window.
.TP
.B maxaspect
This keyword is used to maximize an swallowed window while keeping the
width/height ratio constant.
.TP
.B controls
This flag is typically used with audio files to display a controller
with the buttons play, pause and stop while playing. It only works
with EMBED tags.
.TP
.B embed, noembed
These flags can be used to define embed-only or full-window-only commands.

.SH VARIABLES
MozPlugger gives some variables to /bin/sh when starting the application,
these variables are:

.TP
.B $repeat
This variable contains how many times the file should be played.
Applications which use this variable should also set the
.B repeat
flag.
.TP
.B $window
This is the X window Mozilla has given the plugin. This can be used
with applications such as MPlayer to display graphics inside the netscape
window.
.TP
.B $width
This is the horizontal resolution in pixels.
.TP
.B $height
This is the vertical resolution in pixels.
.TP
.B $file
This is the file to play.
If the application uses the
.B stream
flag, this this variable contains the URL of the file to play.
.TP
.B $mimetype
This variable contains the mime type of $file.
.TP
.B $VAR_<parameter_name>
All the parameters of the <EMBED> tags are made avalable in
mozpluggerrc through environment variables.  For example the parameter
loop="1" in an <EMBED> tag defines the varibale VAR_loop=1.

.SH BUGS
You have to remove ~/.netscape/plugin-list or ~/.mozilla/pluginreg.dat
after changing the configuration, or nothing will happen. This is a
Netscape/Mozilla bug, not a MozPlugger bug.

Netscape 3.x will not play anything for <EMBED> tags for which height or
width are zero. This too is a Netscape bug.

.SH AUTHORS
Fredrik Hübinette, hubbe@hubbe.net
.br
Louis Bavoil, louis@bavoil.net
