]> git.sesse.net Git - mlt/blobdiff - docs/services.txt
Set version to 0.5.6.
[mlt] / docs / services.txt
index 5b45ccb55b81c458da6048e9ecf53d02374d47a8..810eb5c10f9ff96bd9329722f36f499083776a74 100644 (file)
+Service Documentation
+
+Authors: Charles Yates <charles.yates@pandora.be>
+         Dan Dennedy <dan@dennedy.org>
+Last Revision: 2009-05-08
+
+
 SERVICES
 --------
 
-Services marked as "(Proprietary)" are not distributed with the GPL version
-of mlt.
+       Services marked as "(Proprietary)" are not distributed with the LGPL
+       version of mlt.
 
 Producers
 ---------
 
        avformat
 
-               Description
+           Description
 
-                       ffmpeg libavformat based producer for video and audio.
+               ffmpeg libavformat based producer for video and audio.
 
-               Constructor Argument
+           Constructor Argument
 
-                       'file' - a filename specification or URL in the form:
-                            [{protocol}|{format}]:{resource}[?{format-parameter}[&{format-parameter}...]]
-                                For example, video4linux:/dev/video1?width:320&height:240
-                                Note: on the bash command line, & must be escaped as '\&'.
-                                        Also, note the use of ':' instead of '=' for parameters.
-                                Use 'ffmpeg -formats' to see a list of supported protocols 
-                                and formats.
-                                        
-               Details
-               
-                       Format parameters only appear to be useful with 'video4linux' or
-                       'audio_device' formats. For 'video4linux' the parameters are
-                       width, height, frame_rate, frame_rate_base, and standard (ntsc|pal).
-                       For 'audio_device' the parameters are channels and sample_rate.
+               'file' - a filename specification or URL in the form:
+                        [{protocol}|{format}]:{resource}[?{format-parameter}[&{format-parameter}...]]
+                        For example, video4linux:/dev/video1?width:320&height:240
+                        Note: on the bash command line, & must be escaped as '\&'.
+                        Also, note the use of ':' instead of '=' for parameters.
+                        Use 'ffmpeg -formats' to see a list of supported protocols 
+                        and formats.
+                        
+           Details
+           
+               Format parameters only appear to be useful with 'video4linux' or
+               'audio_device' formats. For 'video4linux' the parameters are
+               width, height, frame_rate, frame_rate_base, and standard (ntsc|pal).
+               For 'audio_device' the parameters are channels and sample_rate.
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int video_index - index of video stream to use (-1 is off)
-                       int audio_index - index of audio stream to use (-1 is off)
-                       int in - in point
-                       int out - out point
+               int video_index - index of video stream to use (-1 is off)
+               int audio_index - index of audio stream to use (-1 is off)
+               int in - in point
+               int out - out point
 
-               Read Only Properties
+           Read Only Properties
 
-                       string resource - file location
-                       double fps - this is fixed at 25 for PAL currently
-                       double source_fps - the framerate of the resource
-                       double aspect_ratio - sample aspect ratio of the resource
-                                           - this is determined on every frame read
+               string resource - file location
+               double source_fps - the framerate of the resource
+               double aspect_ratio - sample aspect ratio of the resource
+                                   - this is determined on every frame read
 
-               Dependencies
+           Dependencies
 
-                       ffmpeg must be configured as --enable-shared and installed prior
-                       to compilation of mlt.
+               ffmpeg
 
-               Known Bugs
+           Known Bugs
 
-                       Audio sync discrepancy with some content.
-                       Not all libavformat supported formats are seekable.
-                       Ogg Vorbis is currently broken.
-                       MPEG seeking is inaccurate - doesn't seek to i-frames so you may
-                       get junk for a few frames.
-                       RAW DV seeking not supported.
-                       Fails to play beyond first frame of video of sources with PTS not
-                       starting at 0 (video4linux).
+               Audio sync discrepancy with some content.
+               Not all libavformat supported formats are seekable.
+               Fails to play beyond first frame of video of sources with PTS not
+               starting at 0 (video4linux).
 
-       fezzik
+       loader
 
-               Description
+           Description
 
-                       A friendly giant that likes to rhyme and throw rocks
+               A friendly giant that likes to rhyme and throw rocks
 
-               Constructor Argument
+           Constructor Argument
 
-                       'file'  - a filename specification:
-                                 [{mlt-service}:]{resource} | {mlt-service}
-                               - can also be the name of a producer service that can
-                                         accept the resource specified post construction.
+               'file'    - a filename specification:
+                         [{mlt-service}:]{resource} | {mlt-service}
+                       - can also be the name of a producer service that can
+                         accept the resource specified post construction.
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int in - in point
-                       int out - out point
-                       + all producer initialising properties
+               int in - in point
+               int out - out point
+               + all producer initialising properties
 
-               Read Only Properties
+           Read Only Properties
 
-                       string resource - file location
-                       + all producer read only properties
+               string resource - file location
+               + all producer read only properties
 
-               Details
+           Details
 
-                       This producer is has two roles:
+               This producer has two roles:
 
-                       1. it handles the mappings of all file names to the other
-                       producers;
-                       2. it attaches normalising filters (rescale, resize and resample)
-                       to the producers (when necessary).
+               1. it handles the mappings of all file names to the other
+               producers;
+               2. it attaches normalising filters (rescale, resize and resample)
+               to the producers (when necessary).
 
-                       This producer simplifies many aspects of use. Essentially, it
-                       ensures that a consumer will receive images and audio precisely as
-                       they request them. 
+               This producer simplifies many aspects of use. Essentially, it
+               ensures that a consumer will receive images and audio precisely as
+               they request them. 
 
-               Dependencies
+           Dependencies
 
-                       all.
+               all.
 
-               Known Bugs
+           Known Bugs
 
-                       None.
+               None.
 
        
        colour
        
-               Description
-               
-                       A simple colour generator.
-                       
-               Constructor Argument
-               
-                       colour - A colour value is a hexadecimal representation of RGB plus
-                                alpha channel as 0xrrggbbaa.
-                              - Also colours can be the words: white, black, red, green,
-                                or blue.
-                              - The default colour is black.
-                                  
-               Initialisation Properties
-               
-                       none
-                       
-               Read Only Properties
-               
-                       none
-                       
-               Dependencies
-               
-                       none
-                       
-               Known Bugs
-               
-                       none
+           Description
+           
+               A simple colour generator.
+               
+           Constructor Argument
+           
+               colour - A colour value is a hexadecimal representation of RGB plus
+                        alpha channel as 0xrrggbbaa.
+                      - Also colours can be the words: white, black, red, green,
+                        or blue.
+                      - The default colour is black.
+                      
+           Initialisation Properties
+           
+               none
+               
+           Read Only Properties
+           
+               none
+               
+           Dependencies
+           
+               none
+               
+           Known Bugs
+           
+               none
 
        
-       ffmpeg (DEPRECATED)
-
-               Description
+       libdv
 
-                       Test case pipe based producer for video and audio.
+           Description
 
-               Constructor Argument
+               libdv based decoder for video and audio.
 
-                       'file'  - produce a/v from file
-                       v4l             - produce a/v from video4linux and dsp device
+           Constructor Argument
 
-               Initialisation Properties
+               'file'    - produce a/v from file
 
-                       string video_type - "file" or "v4l"
-                       string video_file - file or v4l device
-                       string video_size - WxH of video to produce (default: "")
-                       int video_loop - loop video until audio exhausted (default: 0)
-                       string audio_type - "file" or "dsp"
-                       string audio_file - file or dsp device
-                       int audio_rate - audio frequency (default: 48000)
-                       int audio_channels - audio channels (default: 2)
-                       int audio_track - audio track to use (default: 0)
-                       int audio_loop - loop audio until video exhausted (default: 0)
-                       int in - in point
-                       int out - out point
-                       double fps - output frames per second (default: 25)
-                       double aspect_ratio - aspect ratio of video
+           Initialisation Properties
 
-               Read Only Properties
+               int in - in point
+               int out - out point
 
-                       string resource - file or "v4l"
-                       int end_of_clip - holds 1 when input is exhausted
+           Read Only Properties
 
-               Dependencies
+               string resource - file location
+               double fps - output frames per second
+               int length - duration of resource (in frames)
+               
+           Mutable Properties
+           
+               string quality - one of "best," "fast" or anything else chooses
+                                medium.
 
-                       ffmpeg executable.
+           Dependencies
 
-               Known Bugs
+               libdv.
 
-                       in point setting is broken.
+           Known Bugs
 
-                       Implementation does not allow fast random access.
+               DVCPRO is incorrectly identified as 16:9 aspect ratio. You must use
+               libdv from CVS or a post 0.101 release. 
 
-       libdv
+       mcdv (Proprietary)
 
-               Description
+           Description
 
-                       libdv based decoder for video and audio.
+               MainConcept based dv decoder for video and audio.
 
-               Constructor Argument
+           Constructor Argument
 
-                       'file'  - produce a/v from file
+               'file'    - produce a/v from file
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int in - in point
-                       int out - out point
+               int in - in point
+               int out - out point
 
-               Read Only Properties
+           Read Only Properties
 
-                       string resource - file location
-                       double fps - output frames per second
-                       int length - duration of resource (in frames)
-                       
-               Mutable Properties
-               
-                       string quality - one of "best," "fast" or anything else chooses
-                                        medium.
+               string resource - file location
+               double fps - output frames per second
+               int length - duration of resource (in frames)
 
-               Dependencies
+           Dependencies
 
-                       libdv.
+               MainConcept DV or DVCPRO SDK, libdv.
+               "dv_sdk" installed parallel to mlt.
 
-               Known Bugs
+           Known Bugs
 
-                       DVCPRO is incorrectly identified as 16:9 aspect ratio. You must use
-                       libdv from CVS or a post 0.101 release. 
+               None
 
-       mcdv (Proprietary)
+       mcmpeg (Proprietary)
 
-               Description
+           Description
 
-                       MainConcept based dv decoder for video and audio.
+               MainConcept based mpeg decoder for video and audio.
 
-               Constructor Argument
+           Constructor Argument
 
-                       'file'  - produce a/v from file
+               'file'    - produce a/v from file
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int in - in point
-                       int out - out point
+               int in - in point
+               int out - out point
 
-               Read Only Properties
+           Read Only Properties
 
-                       string resource - file location
-                       double fps - output frames per second
-                       int length - duration of resource (in frames)
+               string resource - file location
+               double fps - output frames per second
+               double aspect_ratio - sample aspect ratio of video
+               int length - duration of resource (in frames)
+               
+           Dependencies
 
-               Dependencies
+               MainConcept MPEG SDK.
+               "mpeg_sdk_release" installed parallel to mlt.
 
-                       MainConcept DV or DVCPRO SDK, libdv.
-                       "dv_sdk" installed parallel to mlt.
+           Known Bugs
 
-               Known Bugs
+               None.
 
-                       None
+       noise
 
-       mcmpeg (Proprietary)
+           Description
 
-               Description
+               White noise producer
 
-                       MainConcept based mpeg decoder for video and audio.
+           Constructor Argument
 
-               Constructor Argument
+               none
 
-                       'file'  - produce a/v from file
+           Initialisation Properties
 
-               Initialisation Properties
+               int in - in point
+               int out - out point
 
-                       int in - in point
-                       int out - out point
+           Read Only Properties
 
-               Read Only Properties
+               string resource - file location
+               double fps - output frames per second
+               double aspect_ratio - sample aspect ratio of video
+               int length - duration of resource (in frames)
+               
+           Dependencies
 
-                       string resource - file location
-                       double fps - output frames per second
-                       double aspect_ratio - sample aspect ratio of video
-                       int length - duration of resource (in frames)
-                       
-               Dependencies
+               none
 
-                       MainConcept MPEG SDK.
-                       "mpeg_sdk_release" installed parallel to mlt.
+           Known Bugs
 
-               Known Bugs
-
-                       None.
+               none
 
        pango
 
-               Description
+           Description
+
+               A title generator that uses the Pango international text layout
+               and Freetype2 font renderer.
+
+           Constructor Argument
+
+               string file - a text file containing Pango markup, see:
+               http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
+                           - requires xml-like encoding special chars from: 
+                             <, >, &   -to-   &lt;, &gt;, &amp;
+                             
+           Details
+           
+               Supplying a filename with extension ".txt" causes the loader 
+               producer to load with pango. If the filename begins with "+" the 
+               pango producer interprets the filename as pango text. This is a
+               shortcut to embed titles in melt commands. For MLT XML, it is 
+               recommended that you embed the title text in the property value.
+               
+               Pango has builtin scaling. It will rescale the originally rendered
+               title to whatever the consumer requests. Therefore, it will lose
+               its aspect ratio if so requested, and it is up to the consumer to
+               request a proper width and height that maintains the image aspect.
+
+           Initialisation Properties
+
+               int in - in point
+               int out - out point
+
+           Mutable Properties
+
+               string markup - a string containing Pango markup see:
+               http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
+                             - requires xml-like encoding special chars from: 
+                               <, >, &   -to-   &lt;, &gt;, &amp;
+               string fgcolour - an RGBA colour specification of the text 
+                                 (i.e. 0xrrggbbaa)
+               string bgcolour - an RGBA colour of the background rectangle
+               string align - paragraph alignment: left, centre, right
+                            - also, numbers 0, 1 and 2 can be used respectively.
+               int pad - the number of pixels to pad the background rectangle 
+                         beyond edges of text. default 0.
+               string markup - see constructor argument
+               string text - non-markup string in UTF-8 encoding (can contain 
+                             markup chars un-encoded)
+               string font - the default typeface to use when not using markup.
+                             default "Sans 48". FreeType2 renders at 72 dpi.
+               string encoding - the text encoding type of the input if not UTF-8.
+                               - see 'iconv --list' for a list of possible inputs.
+                       int weight - the weight of the font (default is 400)
+
+           Read Only Properties
+
+               string resource - the text/markup file or "pango" if no file.
+               int real_width - the original, unscaled width of the rendered title.
+               int real_height - the original, unscaled height of the title.
+               int width - the last requested scaled image width.
+               int height - the last requested scaled image height.
+
+           Dependencies
+
+               libpango-1.0, libpangoft2-1.0, libfreetype, libgdk_pixbuf-2.0, 
+               libglib-2.0, libgobject-2.0, libgmodule-2.0, libfontconfig.
+
+           Known Bugs
+
+               The foreground and background Pango markup span attributes are not
+               supported.
+               Word wrapping is not supported.
 
-                       A title generator that uses the Pango international text layout
-                       and Freetype2 font renderer.
+       pixbuf
 
-               Constructor Argument
+           Description
 
-                       string file - a text file containing Pango markup, see:
-                       http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
-                                   - requires xml-like encoding special chars from: 
-                                     <, >, &   -to-   &lt;, &gt;, &amp;
-                                                 
-               Details
-               
-                       Supplying a filename with extension ".txt" causes the Fezzik 
-                       producer to load with pango. If the filename begins with "+" the 
-                       pango producer interprets the filename as pango text. This is a
-                       shortcut to embed titles in inigo commands. For westley, it is 
-                       recommended that you embed the title text in the property value.
-                       
-                       Pango has builtin scaling. It will rescale the originally rendered
-                       title to whatever the consumer requests. Therefore, it will lose
-                       its aspect ratio if so requested, and it is up to the consumer to
-                       request a proper width and height that maintains the image aspect.
-
-               Initialisation Properties
-
-                       int in - in point
-                       int out - out point
-
-               Mutable Properties
-
-                       string markup - a string containing Pango markup see:
-                       http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
-                                     - requires xml-like encoding special chars from: 
-                                       <, >, &   -to-   &lt;, &gt;, &amp;
-                       string fgcolour - an RGBA colour specification of the text 
-                                         (i.e. 0xrrggbbaa)
-                       string bgcolour - an RGBA colour of the background rectangle
-                       string align - paragraph alignment: left, centre, right
-                                    - also, numbers 0, 1 and 2 can be used respectively.
-                       int pad - the number of pixels to pad the background rectangle 
-                                 beyond edges of text. default 0.
-                       string markup - see constructor argument
-                       string text - non-markup string in UTF-8 encoding (can contain 
-                                     markup chars un-encoded)
-                       string font - the default typeface to use when not using markup.
-                                     default "Sans 48". FreeType2 renders at 72 dpi.
-                       string encoding - the text encoding type of the input if not UTF-8.
-                                       - see 'iconv --list' for a list of possible inputs.
-
-               Read Only Properties
-
-                       string resource - the text/markup file or "pango" if no file.
-                       int real_width - the original, unscaled width of the rendered title.
-                       int real_height - the original, unscaled height of the title.
-                       int width - the last requested scaled image width.
-                       int height - the last requested scaled image height.
-
-               Dependencies
-
-                       libpango-1.0, libpangoft2-1.0, libfreetype, libgdk_pixbuf-2.0, 
-                       libglib-2.0, libgobject-2.0, libgmodule-2.0, libfontconfig.
-
-               Known Bugs
-
-                       The foreground and background Pango markup span attributes are not
-                       supported.
-                       Word wrapping is not supported.
+               A still graphics to video generator using gdk-pixbuf
 
-       pixbuf
+           Constructor Argument
 
-               Description
-
-                       A still graphics to video generator using gdk-pixbuf
-
-               Constructor Argument
-
-                       'file' - The name of a graphics file loadable by
-                                a gdk-pixbuf loader. see /usr/lib/gdk-pixbuf/loaders
-                                definitely png, jpeg, tiff, pnm, and xpm
-                              - If "%" in filename, the filename is used with sprintf
-                                generate a filename from a counter for multi-file/flipbook 
-                                animation. The file sequence ends when numeric 
-                                discontinuity >100.
-                              - If filename contains "/.all.", suffix with an extension to 
-                                load all pictures with matching extension from a directory.
-                              - If filename contains the string "<svg", then pixbuf tries
-                                to load the filename as inline SVG XML, which is convenient
-                                for inigo commands.
-                                        
-               Details
-               
-                       Pixbuf has builtin scaling. It will rescale the originally rendered
-                       title to whatever the consumer requests. Therefore, it will lose
-                       its aspect ratio if so requested, and it is up to the consumer to
-                       request a proper width and height that maintains the image aspect.
+               'file' - The name of a graphics file loadable by
+                        a gdk-pixbuf loader. see /usr/lib/gdk-pixbuf/loaders
+                        definitely png, jpeg, tiff, pnm, and xpm
+                      - If "%" in filename, the filename is used with sprintf
+                        generate a filename from a counter for multi-file/flipbook 
+                        animation. The file sequence ends when numeric 
+                        discontinuity >100.
+                      - If filename contains "/.all.", suffix with an extension to 
+                        load all pictures with matching extension from a directory.
+                      - If filename contains the string "<svg", then pixbuf tries
+                        to load the filename as inline SVG XML, which is convenient
+                        for melt commands.
+                        
+           Details
+           
+               Pixbuf has builtin scaling. It will rescale the originally rendered
+               title to whatever the consumer requests. Therefore, it will lose
+               its aspect ratio if so requested, and it is up to the consumer to
+               request a proper width and height that maintains the image aspect.
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int in - in point
-                       int out - out point
+               int in - in point
+               int out - out point
+               int begin  - when using an image sequence, this sets the starting
+                            number.
 
-               Mutable Properties
+           Mutable Properties
 
-                       int ttl - how long (in frames) to repeat each picture in file 
-                                 sequences. default is 25.
+               int ttl - how long (in frames) to repeat each picture in file 
+                         sequences. default is 25.
 
-               Read Only Properties
+           Read Only Properties
 
-                       string resource - file location. See Constructor Argument above.
-                       int real_width - the original, unscaled width of the rendered title.
-                       int real_height - the original, unscaled height of the title.
-                       int width - the last requested scaled image width.
-                       int height - the last requested scaled image height.
+               string resource - file location. See Constructor Argument above.
+               int real_width - the original, unscaled width of the rendered title.
+               int real_height - the original, unscaled height of the title.
+               int width - the last requested scaled image width.
+               int height - the last requested scaled image height.
 
-               Dependencies
+           Dependencies
 
-                       libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
+               libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
 
-               Known Bugs
+           Known Bugs
 
-                       XXX: in/out settings are incorrectly handled.
+               XXX: in/out settings are incorrectly handled.
 
        ppm
        
-               Description
-
-                       Reads a stream of contiguous PPM images.
-                       
-               Constructor Argument
+           Description
 
-                       command - a shell command to run something that produces ppm
-                                 streams on stdout.
-                       
-               Initialisation Properties
+               Reads a stream of contiguous PPM images.
+               
+           Constructor Argument
 
-                       none
-                       
-               Read Only Properties
+               command - a shell command to run something that produces ppm
+                         streams on stdout.
+               
+           Initialisation Properties
 
-                       string resource - the command
-                       
-               Dependencies
+               none
+               
+           Read Only Properties
 
-                       none
-                       
-               Known Bugs
+               string resource - the command
+               
+           Dependencies
 
-                       Since it uses pipes, it is not compatible with bluefish.
+               none
+               
+           Known Bugs
 
-       westley
+               Since it uses pipes, it is not compatible with bluefish.
 
-               Description
+       xml
 
-                       Construct a service network from an XML description.
-                       See docs/westley.txt.
+           Description
 
-               Constructor Argument
+               Construct a service network from an XML description.
+               See docs/mlt-xml.txt.
 
-                       file - an XML text file containing westley XML (schema pending)
+           Constructor Argument
 
-               Read Only Properties
+               URL - an XML text file containing MLT XML
+                   - Since MLT XML files can be parameterised, the URL syntax is:
+                     {file-name}[?{param-name}{'='|':'}{param-value}[&{param-name}{'='|':'}{param-value}...]]
+                     A colon is allowed instead of an equal sign to pacify melt,
+                     who tokenises anything with an equal sign as a property 
+                     setting. Also, when running melt from the shell, beware of
+                     the '?' and shell filename expansion. You can surround the URL
+                     with single quotations to prevent expansion. Finally, the loader
+                     will fail to match the filename when you use parameters, so
+                     preface the url with 'xml:' to force the loader to load with
+                     the xml service.
+                     
+           Read Only Properties
 
-                       string resource - file location
+               string resource - file location
 
-               Dependencies
+           Dependencies
 
-                       libxml2
+               libxml2
 
-               Known Bugs
+           Known Bugs
 
-                       Non-referenced producers and playlists are not destroyed until the 
-                       network is destroyed.
-                       A referenced producer or playlist must appear before the reference.
-                       A filter that occurs before a producer has been defined causes a 
-                       segfault.
+               Non-referenced producers and playlists are not destroyed until the 
+               network is destroyed.
+               A referenced producer or playlist must appear before the reference.
+               A filter that occurs before a producer has been defined causes a 
+               segfault.
 
        vorbis
 
-               Description
+           Description
 
-                       OGG Vorbis file reader.
+               OGG Vorbis file reader.
 
-               Constructor Argument
+           Constructor Argument
 
-                       'file' - file to use (only .ogg supported at the moment)
+               'file' - file to use (only .ogg supported at the moment)
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int in - in point
-                       int out - out point
+               int in - in point
+               int out - out point
 
-               Read Only Properties
+           Read Only Properties
 
-                       double fps - this is fixed at 25 for PAL currently
+               double fps - this is fixed at 25 for PAL currently
 
-               Dependencies
+           Dependencies
 
-                       libvorbisfile
+               libvorbisfile
 
-               Known Bugs
+           Known Bugs
 
-                       Fixed frame size (PAL audio chunks).
-                       Doesn't cover ogg files with multiple, differing sections.
+               Fixed frame size (PAL audio chunks).
+               Doesn't cover ogg files with multiple, differing sections.
 
 Filters
 -------
 
        brightness
        
-               Description
-               
-                       Shift the luma component using a constant value.
-                       
-               Constructor Argument
-               
-                       start - the constant floating point numeric value to apply.
-                             - the default is 0.
-                       
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
-                       double start - see Constructor Argument above.
-                       double end - the ending adjustment value. the filter interpolates
-                                    between the start and end adjustments over the 
-                                    duration of the effect.
-                                                
-               Read Only Properties
-               
-                       none
-                       
-               Dependencies
-               
-                       none
-                       
-               Known Bugs
-               
-                       Does not go completely to black or white.
-                       
+           Description
+           
+               Shift the luma component using a constant value.
+               
+           Constructor Argument
+           
+               start - the constant floating point numeric value to apply.
+                     - the default is 0.
+               
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
+               double start - see Constructor Argument above.
+               double end - the ending adjustment value. the filter interpolates
+                            between the start and end adjustments over the 
+                            duration of the effect.
+                            
+           Read Only Properties
+           
+               none
+               
+           Dependencies
+           
+               none
+               
+           Known Bugs
+           
+               Does not go completely to black or white.
+               
        
        channelcopy
        
-               Description
-               
-                       Copy audio from one channel to another channel.
-                       
-               Constructor Argument
-               
-                       to - the 0-indexed channel to copy into, default is 1.
-                       
-               Mutable Properties
-               
-                       int to - see above
-                       int from - the channel from which to copy, default is 0.
-                       
-               Dependencies
-               
-                       none
-                       
-               Known Bugs
-               
-                       none
-                       
+           Description
+           
+               Copy audio from one channel to another channel.
+               
+           Constructor Argument
+           
+               to - the 0-indexed channel to copy into, default is 1.
+               
+           Mutable Properties
+           
+               int to - see above
+               int from - the channel from which to copy, default is 0.
+               
+           Dependencies
+           
+               none
+               
+           Known Bugs
+           
+               none
+               
 
 
        deinterlace
        
-               Description
-
-                       Deinterlace a frame consisting of two fields using bob, weave,
-                       greedy, one-field, and linear blend methods. This code is 
-                       appropriated from the Xine XV video output plugin.
-               
-               Constructor Argument
+           Description
+
+               Deinterlace a frame consisting of two fields using bob, weave,
+               greedy, one-field, and linear blend methods. This code is 
+               appropriated from the Xine XV video output plugin.
+           
+           Constructor Argument
+
+               method - a string containing the deinterlace method: bob, weave,
+                        greedy, onefield, or linearblend. The default is
+                        linearblend.
+           
+           Initialisation Properties
+
+               int in - in point
+               int out - out point
+               
+           Read Only Properties
+
+               none
+           
+           Mutable Properties
+           
+               string method
+               
+           Details
+           
+               If the frame properties "progressive" or "consumer_progressive"
+               are non-zero, then the filter is not applied. Also, if applied,
+               this sets the frame property "progressive" to 1.
+
+           Dependencies
+
+               none
+               
+           Known Bugs
+
+               Not a bug, but it only provides fair quality.
+               
+           
+       gamma
+       
+           Description
 
-                       method - a string containing the deinterlace method: bob, weave,
-                                greedy, onefield, or linearblend. The default is
-                                        linearblend.
-               
-               Initialisation Properties
+               Adjust image luma using a non-linear power-law curve
+               
+           Constructor Argument
 
-                       int in - in point
-                       int out - out point
-                       
-               Read Only Properties
+               gamma - a floating point value. The default is 1.0, or none.
+           
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
 
-                       none
-               
-               Mutable Properties
-               
-                       string method
-                       
-               Details
-               
-                       If the frame properties "progressive" or "consumer_progressive"
-                       are non-zero, then the filter is not applied. Also, if applied,
-                       this sets the frame property "progressive" to 1.
+           Mutable Properties
 
-               Dependencies
+               double gamma - the exponential factor of the power-law curve
+               
+           Dependencies
 
-                       none
-                       
-               Known Bugs
+               none
+               
+           Known Bugs
 
-                       Not a bug, but it only provides fair quality.
-                       
-               
-       ffmpeg_dub
+               none
+               
+       
+       greyscale
        
-               Description
+           Description
 
-                   Use ffmpeg executable to substitute audio stream.
-               
-               Constructor Argument
+               Convert colour image to greyscale
+               
+           Constructor Argument
 
-                       file - filename of a WAV, Ogg Vorbis (--enable-vorbis),
-                              MP3 (--enable-mp3lame), or AC-3 (--enable-a52) audio file.
-               
-               Initialisation Properties
+               none
+               
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
 
-                       int in - in point
-                       int out - out point
-               
-               Read Only Properties
-               
-                       string resource - file
-                       
-               Dependencies
+           Read Only Properties
 
-                       ffmpeg plus for ffmpeg:
-                       libogg and libvorbis for Ogg Vorbis, libmp3lame for MP3, liba52 for AC-3.
-                       
-               Known Bugs
+               none
+               
+           Dependencies
 
-                       Uses pipes and is therefore not compatible with bluefish.
-                       
+               none
+               
+           Known Bugs
 
-       gamma
-       
-               Description
+               none
+           
+       gtkrescale
 
-                       Adjust image luma using a non-linear power-law curve
-                       
-               Constructor Argument
+           Description
 
-                       gamma - a floating point value. The default is 1.0, or none.
-               
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
+               Scale the producer video frame size to match the consumer.
+               This filter is designed for use as a normaliser for the loader producer.
 
-               Mutable Properties
+           Constructor Argument
 
-                       double gamma - the exponential factor of the power-law curve
-                       
-               Dependencies
+               interpolation - the rescaling method, one of:
+                   nearest (lowest quality, fastest),
+                   tiles,
+                   bilinear (default; good quality, moderate speed),
+                   hyper (best quality, slowest).
 
-                       none
-                       
-               Known Bugs
+           Initialisation Properties
 
-                       none
-                       
-       
-       greyscale
-       
-               Description
+               int in - in point
+               int out - out point
 
-                       Convert colour image to greyscale
-                       
-               Constructor Argument
+           Mutable Properties
 
-                       none
-                       
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
+               string interpolation - see constructor argument above
 
-               Read Only Properties
+               If a property "consumer_aspect_ratio" exists on the frame, then
+               rescaler normalises the producer's aspect ratio and maximises the
+               size of the frame, but may not produce the consumer's requested
+               dimension. Therefore, this option works best in conjunction with the
+               resize filter. This behavior can be disabled by another service by
+               either removing the property, setting it to zero, or setting
+               frame property "distort" to 1.
 
-                       none
-                       
-               Dependencies
+           Dependencies
 
-                       none
-                       
-               Known Bugs
+               libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
 
-                       none
-               
-       luma
+           Known Bugs
+
+               none
+
+       jackrack
        
-               Description
-               
-                       Applies a luma transition between the current and next frames.
-                       Useful for transitions from a slideshow created using producer
-                       pixbuf.
-                       
-               Constructor Argument
-               
-                       file - a luma wipe
-                       
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
+           Description
+           
+               Creates Jack ports and runs a JackRack project to process audio
+                       through a stack of LADSPA filters.
+               
+           Constructor Argument
+           
+               src - a JackRack file
                        
-               Read Only Properties
+               Details
                
+                       If you are using a consumer that uses ALSA, then you should start
+                       jackd with the dummy driver: jackd -d dummy.
+                       I also recommend using a period size of 2048: -p 2048.
+                       
+                       jackd -ddummy -r48000 -p2048
+               
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
+                       
+                       The following can be used without a rack file in order to connect
+                       filter_jackrack to a running instance of JackRack:
+                       string out_1 - Jack port to connect MLT's output port (JackRack's input)
+                       string out_2 - Jack port to connect MLT's output port (JackRack's input)
+                       string in_1 - Jack port to connect MLT's input port (JackRack's output)
+                       string in_2 - Jack port to connect MLT's input port (JackRack's output)
+               
+           Read Only Properties
+           
+               none
+               
+           Mutable Properties
+
                        none
+               
+           Dependencies
+           
+               Jack, LADSPA, glib-2.0, libxml2
+               
+           Known Bugs
+           
+                       Currently, due to timing and synchronisation issues, the audio
+                       is distorted with repeated samples and latency clicks.
+               no encapsulated resampling and jack runs at a fixed frequency
+           
+       ladspa
+       
+           Description
+           
+               Runs a JackRack project to process audio through a stack of
+                       LADSPA filters without using Jack.
+               
+           Constructor Argument
+           
+               src - a JackRack file
                        
-               Mutable Properties
-               
-                       int period - how long to wait between success iterations of the
-                                    transition. For best results set this to a multiple
-                                    of ttl used in pixbuf. The default is 24.
-                                                
-                       luma. - all properties beginning with "luma." are passed to the
-                               encapsulated luma transition. For example, luma.out controls
-                               the duration of the wipe.
-                       
-               Dependencies
+               Details
+
+                       Due to audio integrity issues with the jackrack filter, this
+                       filter is better for runtime, while jackrack is more suitable
+                       for prototyping a rack file using the Jack Rack GUI.
                
-                       transition_luma and its dependencies
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
                        
-               Known Bugs
-               
+           Read Only Properties
+           
+               none
+               
+           Mutable Properties
+
                        none
-               
+               
+           Dependencies
+           
+               Jack, LADSPA, glib-2.0, libxml2
+                       Jack is still required because this coexists with the jackrack 
+                       filter.
+               
+           Known Bugs
+           
+               no encapsulated resampling and jack runs at a fixed frequency
+           
+       luma
+       
+           Description
+           
+               Applies a luma transition between the current and next frames.
+               Useful for transitions from a slideshow created using producer
+               pixbuf.
+               
+           Constructor Argument
+           
+               file - a luma wipe
+               
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
+               
+           Read Only Properties
+           
+               none
+               
+           Mutable Properties
+           
+               int period - how long to wait between success iterations of the
+                            transition. For best results set this to a multiple
+                            of ttl used in pixbuf. The default is 24.
+                            
+               luma. - all properties beginning with "luma." are passed to the
+                       encapsulated luma transition. For example, luma.out controls
+                       the duration of the wipe.
+               
+           Dependencies
+           
+               transition_luma and its dependencies
+               
+           Known Bugs
+           
+               none
+           
+       mcrescale
+
+           Description
+
+               Scale the producer video frame size to match the consumer.
+               This filter is designed for use as a normaliser for the loader producer.
+
+           Constructor Argument
+
+               interpolation - the rescaling method, one of:
+                   nearest (lowest quality, fastest),
+                   bilinear (default; good quality, moderate speed),
+                   hyper (best quality, slowest).
+
+           Initialisation Properties
+
+               int in - in point
+               int out - out point
+
+           Mutable Properties
+
+               string interpolation - see constructor argument above
+
+               If a property "consumer_aspect_ratio" exists on the frame, then
+               rescaler normalises the producer's aspect ratio and maximises the
+               size of the frame, but may not produce the consumer's requested
+               dimension. Therefore, this option works best in conjunction with the
+               resize filter. This behavior can be disabled by another service by
+               either removing the property, setting it to zero, or setting
+               frame property "distort" to 1.
+
+           Dependencies
+
+               the mainconcept rescaling sdk.
+
+           Known Bugs
+
+               none
        
        mirror
        
-               Description
-               
-                       Provides various mirror and image reversing effects.
-
-               Constructor Argument
-               
-                       mirror - horizontal, vertical, diagonal, flip, flop
-                       
-               Initialisation Properties
-               
-                       int reverse - being 0 or 1
-                       int in - in point
-                       int out - out point
-                       
-               Read Only Properties
-               
-                       none
-                       
-               Mutable Properties
-               
-                       none
-
-               Dependencies
-               
-                       none
-                       
-               Known Bugs
-               
-                       none
+           Description
+           
+               Provides various mirror and image reversing effects.
+
+           Constructor Argument
+           
+               mirror - horizontal, vertical, diagonal, flip, flop
+               
+           Initialisation Properties
+           
+               int reverse - being 0 or 1
+               int in - in point
+               int out - out point
+               
+           Read Only Properties
+           
+               none
+               
+           Mutable Properties
+           
+               none
+
+           Dependencies
+           
+               none
+               
+           Known Bugs
+           
+               none
+
+
+       mono
+       
+           Description
+           
+               Mix all channels of audio into a mono signal and output it as
+                       N channels.
+
+           Constructor Argument
+           
+               channels - the number of output channels (default 2)
+               
+           Initialisation Properties
+           
+               none
+               
+           Read Only Properties
+           
+               none
+               
+           Mutable Properties
+           
+               none
+
+           Dependencies
+           
+               none
+               
+           Known Bugs
+           
+               none
 
 
        obscure
        
-               Description
+           Description
 
-                       Obscuring filter.
-                       
-               Constructor Argument
+               Obscuring filter.
+               
+           Constructor Argument
 
-                       none
-                       
-               Initialisation Properties
-               
-                       string start - in the format X,Y:WxH[:PWxPY]
-                                    - PWxPY is the size of the averaging region in pixels.
-                       string end - in the format X,Y:WxH[:PWxPY]
-                       int in - in point
-                       int out - out point
+               none
+               
+           Initialisation Properties
+           
+               string start - in the format X,Y:WxH[:PWxPY]
+                            - PWxPY is the size of the averaging region in pixels.
+               string end - in the format X,Y:WxH[:PWxPY]
+               int in - in point
+               int out - out point
 
-               Read Only Properties
+           Read Only Properties
 
-                       none
-                       
-               Dependencies
+               none
+               
+           Dependencies
 
-                       none
+               none
 
-               Known Bugs
+           Known Bugs
 
-                       none
+               none
 
        region
        
-               Description
-               
-                       Apply one or filters to a region of the video image. The region
-                       can be shaped as well using the alpha channel of another producer.
-                       
-               Constructor Argument
-               
-                       file - A file whose alpha channel will "shape"  the region.
-                            - The string "circle" is a shortcut but it requires pixbuf with
-                              the librsvg loader. The circle is automatically stretched
-                              to the region to create an ellipse.
+           Description
+           
+               Apply one or more filters to a region of the video image. The region
+               can be shaped as well using the alpha channel of another producer.
+               
+           Constructor Argument
+           
+               resource - A file whose alpha channel will "shape"  the region.
+                    - The string "circle" is a shortcut but it requires pixbuf with
+                      the librsvg loader. The circle is automatically stretched
+                      to the region to create an ellipse.
        
-               Initialisation Properties
-
-                       int in - in point
-                       int out - out point
-                       plus and region transition properties
-                       
-               Read Only Properties
-               
-                       see the region transition
-                       
-               Dependencies
-               
-                       transition_region
-                       
-               Known Bugs
-               
-                       "circle" is unpredictable in the absence of the librsvg pixbuf loader.
-                       
+           Initialisation Properties
+
+               int in - in point
+               int out - out point
+               plus and region transition properties
+               
+           Read Only Properties
+           
+               see the region transition
+               
+           Dependencies
+           
+               transition_region
+               
+           Known Bugs
+           
+               "circle" is unpredictable in the absence of the librsvg pixbuf loader.
+               
 
        resample
 
-               Description
+           Description
 
-                       Adjust an audio stream's sampling rate, and duplicate channels if 
-                       producer provides less than consumer requested.
-                       
-                       This filter is automatically invoked by Fezzik for the sake of
-                       normalisation over inputs and with the consumer.
+               Adjust an audio stream's sampling rate, and duplicate channels if 
+               producer provides less than consumer requested.
+               
+               This filter is automatically invoked by the loader producer for the
+               sake of normalisation over inputs and with the consumer.
 
-               Constructor Argument
+           Constructor Argument
 
-                       frequency - a numeric value for the new sample rate
+               frequency - a numeric value for the new sample rate
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       int in - in point
-                       int out - out point
+               int in - in point
+               int out - out point
 
-               Mutable Properties
+           Mutable Properties
 
-                       int frequency - the target sample rate
+               int frequency - the target sample rate
 
-               Dependencies
+           Dependencies
 
-                       libresample
+               libresample
 
-               Known Bugs
+           Known Bugs
 
-                       Assumes 2 channels during libsamplerate initialisation. Untested
-                       with >2 channels.
+               Assumes 2 channels during libsamplerate initialisation. Untested
+               with >2 channels.
 
        rescale
 
-               Description
-
-                       Scale the producer video frame size to match the consumer.
-                       This filter is automatically invoked by Fezzik in order to normalise
-                       sample aspect ratio.
+           Description
 
-               Constructor Argument
+               Scale the producer video frame size to match the consumer.
+               This filter is designed for use as a normaliser for the loader producer.
 
-                       interpolation - the rescaling method, one of:
-                               nearest (lowest quality, fastest),
-                               tiles,
-                               bilinear (default; good quality, moderate speed),
-                               hyper (best quality, slowest).
+           Constructor Argument
 
-               Initialisation Properties
+               None.
 
-                       int in - in point
-                       int out - out point
+           Initialisation Properties
 
-               Mutable Properties
+               int in - in point
+               int out - out point
 
-                       string interpolation - see constructor argument above
+           Mutable Properties
 
-                       If a property "consumer_aspect_ratio" exists on the frame, then
-                       rescaler normalises the producer's aspect ratio and maximises the
-                       size of the frame, but may not produce the consumer's requested
-                       dimension. Therefore, this option works best in conjunction with the
-                       resize filter. This behavior can be disabled by another service by
-                       either removing the property, setting it to zero, or setting
-                       frame property "distort" to 1.
+               If a property "consumer_aspect_ratio" exists on the frame, then
+               rescaler normalises the producer's aspect ratio and maximises the
+               size of the frame, but may not produce the consumer's requested
+               dimension. Therefore, this option works best in conjunction with the
+               resize filter. This behavior can be disabled by another service by
+               either removing the property, setting it to zero, or setting
+               frame property "distort" to 1.
 
-               Dependencies
+           Dependencies
 
-                       libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
+               none
 
-               Known Bugs
+           Known Bugs
 
-                       none
+               none but... it only implements a nearest neighbour scaling - it is
+                       used as the base class for the gtkrescale and mcrescale filters.
 
        resize
        
-               Description
-
-                       Image scaling and padding and field order adjustment.
-                               
-               Details
-               
-                       Normally resize is used to pad the producer's
-                       output to what the consumer has requested after an upstream rescale
-                       filter first scales the image to maximise usage of the image area.
-                       This filter also adjusts the field order to lower field first
-                       if the frame property "top_field_first" has been set to 1.
-                       Therefore, when done, it sets the top_field_first to 0.
-                       This filter is automatically invoked by Fezzik as part of image
-                       sample aspect ratio normalisation.
-                       
-               Constructor Argument
-
-                       scale - "affine" to use affine transform scaling, otherwise
-                                center and pad.
-                       
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
-
-               Read Only Properties
-
-                       none
-                       
-               Dependencies
-
-                       none
-                       
-               Known Bugs
-
-                       Assumes lower field first output.
+           Description
+
+               Image scaling and padding and field order adjustment.
+                   
+           Details
+           
+               Normally resize is used to pad the producer's
+               output to what the consumer has requested after an upstream rescale
+               filter first scales the image to maximise usage of the image area.
+               This filter also adjusts the field order to lower field first
+               if the frame property "top_field_first" has been set to 1.
+               Therefore, when done, it sets the top_field_first to 0.
+               This filter is automatically invoked by the loader as part of image
+               sample aspect ratio normalisation.
+               
+           Constructor Argument
+
+               scale - "affine" to use affine transform scaling, otherwise
+                        center and pad.
+               
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
+
+           Read Only Properties
+
+               none
+               
+           Dependencies
+
+               none
+               
+           Known Bugs
+
+               Assumes lower field first output.
 
        volume
 
-               Description
+           Description
 
-                       Adjust an audio stream's volume level
-                       
-               Constructor Argument
+               Adjust an audio stream's volume level 
+                               - based on the 'normalize' utility
+               
+           Constructor Argument
 
-                       gain - a string containing one of:
-                                - a floating point value of the gain adjustment
-                                - a numeric value with the suffix "dB" to adjust in terms of decibels
-                                - "normalise" to normalise the volume to the target amplitude -12dBFS
-                       
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
-                       int window - the number of video frames over which to smooth normalisation.
-                                    defaults to 75.
+               gain - a string containing one of:
+                    - a floating point value of the gain adjustment
+                    - a numeric value with the suffix "dB" to adjust in terms of decibels
+                    - "normalise" to normalise the volume to the target amplitude -12dBFS
+               
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
+               int window - the number of video frames over which to smooth normalisation.
+                            defaults to 75.
 
-               Mutable Properties
+           Mutable Properties
 
-                       string gain - same as constructor argument above
+               string gain - same as constructor argument above
 
-                       string normalise - normalise the volume to the amplitude:
-                               - a numeric value with the suffix "dB" to set amplitude in decibels
-                               - a floating point value of the relative volume
-                               - an unspecified value uses the default -12dBFS
+               string normalise - normalise the volume to the amplitude:
+                   - a numeric value with the suffix "dB" to set amplitude in decibels
+                   - a floating point value of the relative volume
+                   - an unspecified value uses the default -12dBFS
 
-                       string limiter - limit all samples above:
-                               - a numeric value with the suffix "dB"
-                               - a floating point value ( dB = 20 * log10(x) )
-                               - an unspecified value uses the default -6dBFS
+               string limiter - limit all samples above:
+                   - a numeric value with the suffix "dB"
+                   - a floating point value ( dB = 20 * log10(x) )
+                   - an unspecified value uses the default -6dBFS
 
-                       double max_gain - a floating point or decibel value of the maximum gain that
-                               can be applied during normalisation.
-                               - an unspecified value uses the default 20dB
+               double max_gain - a floating point or decibel value of the maximum gain that
+                   can be applied during normalisation.
+                   - an unspecified value uses the default 20dB
 
-                       string end - a gain value just like the gain property above.
-                                    This causes the gain to be interpolated from 'gain' to 'end'
-                                    over the duration.
+               string end - a gain value just like the gain property above.
+                            This causes the gain to be interpolated from 'gain' to 'end'
+                            over the duration.
 
-                       int window - the size of the normalising smoothing buffer in video frame units.
-                                  - the smoothing buffer prevents erratic gain changes.
-                                  - the default value is 75 video frames. 
+               int window - the size of the normalising smoothing buffer in video frame units.
+                          - the smoothing buffer prevents erratic gain changes.
+                          - the default value is 75 video frames. 
 
-                       gain can be applied as a factor to the normalise amplitude!
-                       
-               Dependencies
+               gain can be applied as a factor to the normalise amplitude!
+               
+           Dependencies
 
-                       none
-                       
-               Known Bugs
+               none
+               
+           Known Bugs
 
-                       none
+               none
 
        watermark
 
-               Description
+           Description
 
-                       Add a watermark to the frames.
+               Add a watermark to the frames.
 
-               Constructor Argument
+           Constructor Argument
 
-                       resource - the producer to use (ie: a .png)
+               resource - the producer to use (ie: a .png)
 
-               Initialisation Properties
+           Initialisation Properties
 
-                       string resource - the producer to use
-                       string factory - producer required for the resource ('fezzik')
-                       string geometry - composite geometry
-                       string distort - control scaling
-                       int in - in point
-                       int out - out point
+               string resource - the producer to use
+               string factory - producer required for the resource (default: 'loader')
+               string geometry - composite geometry
+               string distort - control scaling
+               int in - in point
+               int out - out point
 
-               Mutable Properties
+           Mutable Properties
 
-                       none
+               none
 
-               Dependencies
+           Dependencies
 
-                       mlt core modules and optionally, fezzik
+               mlt core modules and optionally, loader
 
-               Known Bugs
+           Known Bugs
 
-                       none
+               none
 
 Transitions
 -----------
 
        composite
        
-               Description
-
-                       A key-framable alpha-channel compositor for two frames.
-                       
-               Details
-               
-                       Performs dissolves and luma wipes in addition to alpha compositing.
-                       
-                       By default, the aspect ratio of the B frame is respected and the
-                       size portion of the geometry specification simply defines a 
-                       bounding rectangle.
-               
-                       This performs field-based rendering unless the A frame property
-                       "progressive" or "consumer_progressive" or the transition property
-                       "progressive" is set to 1.
-                       
-               Constructor Argument
-
-                       string start - a geometry specification as X,Y:WxH[!][:mix]
-                                    - X, Y, W, H are assumed to pixel units unless they
-                                      have the suffix '%'
-                                    - '!' is a shortcut to specify distort, see below.
-                                    - mix is always a 2 digit percentage, defaults to 100.
-                                                - default is "85%,5%:10%x10%"
-
-               Initialisation Properties
-                       
-                       string end - the ending size and position.
-                       string key[F] - X,Y:WxH[:mix] - set a key frame for geometry between
-                                       the in and out. F is a frame number and can be
-                                       negative to make it relative to the out point.
-                       int in - in point
-                       int out - out point
-                       string factory - The name of a factory service used as a non-PGM
-                                        producer loader. The default is fezzik.
+           Description
+
+               A key-framable alpha-channel compositor for two frames.
+               
+           Details
+           
+               Performs dissolves and luma wipes in addition to alpha compositing.
+               
+               By default, the aspect ratio of the B frame is respected and the
+               size portion of the geometry specification simply defines a 
+               bounding rectangle.
+           
+               This performs field-based rendering unless the A frame property
+               "progressive" or "consumer_progressive" or the transition property
+               "progressive" is set to 1.
+               
+           Constructor Argument
+
+                       none[*]
+
+           Initialisation Properties
+               
+               int in - in point
+               int out - out point
+               string factory - The name of a factory service used as a non-PGM
+                                producer loader. The default is 'loader'.
        
-               Read Only Properties
-
-                       none
-
-               Mutable Properties
-                       
-                       int progressive - set to 1 to disable field-based rendering.
-                       string distort - when set, causes the B frame image to fill the WxH
-                                        completely with no regard to B's aspect ratio.
-                       string halign - when not distorting, set the horizontal alignment
-                                       of B within the geometry rectangle.
-                                     - one of: left (0), centre (1), or right (2).
-                                     - the default is left.
-                       string valign - when not distorting, set the vertical alignment of 
-                                       B within the geometry rectangle.
-                                     - one of: top (0), middle (1), or bottom (2).
-                                     - the default is top.
-                       string luma - the luma map file name. If not supplied, a dissolve.
-                       double softness - only when using a luma map, how soft to make the
-                                         edges between A and B. 0.0 = no softness. 1.0 =
-                                         too soft.
-                       Any property starting with "luma." is passed to the non-PGM luma
-                           producer.
-
-               Dependencies
-
-                       none
-               
-               Known Bugs
-
-                       Assumes lower field first during field rendering.
+           Read Only Properties
+
+               none
+
+           Mutable Properties
+
+
+                       string geometry - key frame specification
+                                                       - this is a ; delimited form of the deprecated start,
+                                                         key[n], end properties
+               int progressive - set to 1 to disable field-based rendering.
+               string distort - when set, causes the B frame image to fill the WxH
+                                completely with no regard to B's aspect ratio.
+               string halign - when not distorting, set the horizontal alignment
+                               of B within the geometry rectangle.
+                             - one of: left (0), centre (1), or right (2).
+                             - the default is left.
+               string valign - when not distorting, set the vertical alignment of 
+                               B within the geometry rectangle.
+                             - one of: top (0), middle (1), or bottom (2).
+                             - the default is top.
+               string luma - the luma map file name. If not supplied, a dissolve.
+               double softness - only when using a luma map, how soft to make the
+                                 edges between A and B. 0.0 = no softness. 1.0 =
+                                 too soft.
+               Any property starting with "luma." is passed to the non-PGM luma
+                   producer.
+
+               Deprecated Properties
+
+               string start - a geometry specification as X,Y:WxH[!][:mix]
+                            - X, Y, W, H are assumed to pixel units unless they
+                              have the suffix '%'
+                            - '!' is a shortcut to specify distort, see below.
+                            - mix is always a 2 digit percentage, defaults to 100.
+                            - default is "85%,5%:10%x10%"
+               string end - the ending size and position.
+               string key[F] - X,Y:WxH[:mix] - set a key frame for geometry between
+                               the in and out. F is a frame number and can be
+                               negative to make it relative to the out point.
+
+           Dependencies
+
+               none
+           
+           Known Bugs
+
+               Assumes lower field first during field rendering.
 
        luma
        
-               Description
-
-                       A generic dissolve and wipe transition processor.
-
-               Details
-
-                       luma gets its name
-                       from how it uses a grayscale "map" file. As the luma value varies
-                       over time, a threshold filter is applied to the map to determine
-                       what parts of frame A vs. frame B to show. It reads PGM files
-                       up to 16 bits! Alternatively, it can use the first frame from any
-                       producer that outputs yuv, but it will be limited to the luma
-                       gamut of 220 values.
-                       This performs field-based rendering unless the A frame property
-                       "progressive" or "consumer_progressive" or the transition property
-                       "progressive" is set to 1.
-               
-               Constructor Argument
-
-                       string resource - the luma map file name - either PGM or any other
-                                         producable video. 
-                                       - If not supplied, a dissolve.
-
-               Initialisation Properties
-               
-                       int in - in point
-                       int out - out point
-                       string factory - The name of a factory service used as a non-PGM
-                                        producer loader. The default is Fezzik.
-
-               Mutable Properties
-
-                       string resource - same as above
-                       double softness - only when using a luma map, how soft to make the
-                                         edges between A and B. 0.0 = no softness. 1.0 =
-                                         too soft.
-                       Any property starting with "producer." is passed to the non-PGM luma
-                           producer.
-                       
-               Read Only Properties
-
-                       none
-                       
-               Dependencies
-
-                       none
-                       
-               Known Bugs
-                       
-                       Assumes lower field first output.
+           Description
+
+               A generic dissolve and wipe transition processor.
+
+           Details
+
+               luma gets its name
+               from how it uses a grayscale "map" file. As the luma value varies
+               over time, a threshold filter is applied to the map to determine
+               what parts of frame A vs. frame B to show. It reads PGM files
+               up to 16 bits! Alternatively, it can use the first frame from any
+               producer that outputs yuv, but it will be limited to the luma
+               gamut of 220 values.
+               This performs field-based rendering unless the A frame property
+               "progressive" or "consumer_progressive" or the transition property
+               "progressive" is set to 1.
+           
+           Constructor Argument
+
+               string resource - the luma map file name - either PGM or any other
+                                 producable video. 
+                               - If not supplied, a dissolve.
+
+           Initialisation Properties
+           
+               int in - in point
+               int out - out point
+               string factory - The name of a factory service used as a non-PGM
+                                producer loader. The default is 'loader'.
+
+           Mutable Properties
+
+               string resource - same as above
+               double softness - only when using a luma map, how soft to make the
+                                 edges between A and B. 0.0 = no softness. 1.0 =
+                                 too soft.
+               int reverse - reverse the direction of the transition.
+               Any property starting with "producer." is passed to the non-PGM luma
+                   producer.
+               
+           Read Only Properties
+
+               none
+               
+           Dependencies
+
+               none
+               
+           Known Bugs
+               
+               Assumes lower field first output.
 
        mix
 
-               Description
+           Description
 
-                       An two stream audio mixer.
+               An two stream audio mixer.
 
-               Constructor Argument
+           Constructor Argument
 
-                       start - see below
+               start - see below
 
-               Initalisation Properties
+           Initalisation Properties
 
-                       int in - in point
-                       int out - out point
+               int in - in point
+               int out - out point
 
-               Mutable Properties
+           Mutable Properties
 
-                       double start - the mix level to apply to the second frame.
-                                    - any negative value causes an automatic crossfade from 0 to 1.
-                       double end - the ending value of the mix level. mix level will be interpolated
-                                    from start to end over the in-out range.
-                       int reverse - set to 1 to reverse the direction of the mix.
+               double start - the mix level to apply to the second frame.
+                            - any negative value causes an automatic crossfade from 0 to 1.
+               double end - the ending value of the mix level. mix level will be interpolated
+                            from start to end over the in-out range.
+               int reverse - set to 1 to reverse the direction of the mix.
 
-               Read Only Properties
+           Read Only Properties
 
-                       none
+               none
 
-               Dependencies
+           Dependencies
 
-                       none
+               none
 
-               Known Bugs
+           Known Bugs
 
-                       Samples from the longer of the two frames are discarded.
-                       
+               Samples from the longer of the two frames are discarded.
+               
        
        region
        
-               Description
-               
-                       Apply zero or more filters to B frame as it is composited onto
-                       a region of the A frame. The "shape" of the region can be defined
-                       by the alpha channel of a third producer.
-                       
-               Constructor Argument
-
-                       resource - a shape producer
-               
-               Initialisation Properties
-               
-                       string resource - nothing is rectangle, "circle" is a pixbuf-
-                           generated SVG circle, anything else is loaded by the factory.
-                       string factory - the service that creates the shape producer.
-                                      - the default is fezzik.
-                       string filter[N] - one or more filters to apply. All filter
-                                          properties are passed using the same filter "key"
-                       Any property starting with "composite." is passed to the 
-                           encapsulated composite transition.
-                       
-               Read Only Properties
-               
-                       none
-                       
-               Dependencies
-               
-                       transition_composite
-                       
-               Known Bugs
-               
-                       none
-                       
+           Description
+           
+               Apply zero or more filters to B frame as it is composited onto
+               a region of the A frame. The "shape" of the region can be defined
+               by the alpha channel of a third producer.
+               
+           Constructor Argument
+
+               resource - a shape producer
+           
+           Initialisation Properties
+           
+               string resource - nothing is rectangle, "circle" is a pixbuf-
+                   generated SVG circle, anything else is loaded by the factory.
+               string factory - the service that creates the shape producer.
+                              - the default is 'loader'.
+               string filter[N] - one or more filters to apply. All filter
+                                  properties are passed using the same filter "key"
+               Any property starting with "composite." is passed to the 
+                   encapsulated composite transition.
+               
+           Read Only Properties
+           
+               none
+               
+           Dependencies
+           
+               transition_composite
+               
+           Known Bugs
+           
+               none
+               
 
 Consumers
 ---------
 
-       bluefish (Proprietary)
+       avformat
        
-               Description
-
-                       BlueFish444 audio and video output module.
-               
-               Constructor Argument
-
-                       card - a numeric card id starting at 1, default is 1.
-                       
-               Initialisation Properties
-
-                       string standard - "PAL" (default) or "NTSC"
-                                       - default is based upon MLT_NORMALISATION 
-                                                         environment variable, which defaults to PAL.
-                       int frames - the number of DMA video frames. default is 4.
-                                    minimum is 2. maximum on my system is 11.
-                       int buffer - the number of frames to buffer within MLT, minimum 1, 
-                                    default 25.
-                       string rescale - a rescale method, see the Filters/rescale.
-                       
-               Read Only Properties
-
-                       none
-               
-               Dependencies
+           Description
+           
+               Multiformat transcoding consumer.
+
+           Constructor Argument
+
+               string target - the filename to write to, e.g. test.mpeg.
+
+           Initialisation Properties
+           
+               int buffer - the number of frames to buffer, minimum 1, default 25.
+               string rescale - a rescale method, see the Filters/rescale.
+               int progressive - indicates whether to use progressive or field-
+                                 based rendering, default 0 (off).
+               
+           Read Only Properties
+           
+               none
+               
+           Dependencies
+           
+               libavformat
+               
+           Known Bugs
+           
+               Plenty.
 
-                       BlueVelvet SDK installed parallel to mlt in "bluefish."
-               
-               Known Bugs
-
-                       Does not work with any service that uses pipes!
-                       
-                       If mlt crashes, you might need to reload the BlueDriver kernel 
-                       module due to unreleased DMA buffers.
-                       
-                       Only supports 2 channel audio at the moment.
-               
+       bluefish (Proprietary)
+       
+           Description
+
+               BlueFish444 audio and video output module.
+           
+           Constructor Argument
+
+               card - a numeric card id starting at 1, default is 1.
+               
+           Initialisation Properties
+
+               string standard - "PAL" (default) or "NTSC"
+                               - default is based upon MLT_NORMALISATION 
+                                 environment variable, which defaults to PAL.
+               int frames - the number of DMA video frames. default is 8.
+                            minimum is 2. maximum on my system is 11.
+               int buffer - the number of frames to buffer within MLT, minimum 1, 
+                            default 25.
+               string rescale - a rescale method, see the Filters/rescale.
+               
+           Read Only Properties
+
+               none
+           
+           Dependencies
+
+               BlueVelvet SDK installed parallel to mlt in "bluefish."
+           
+           Known Bugs
+
+               Does not work with any service that uses pipes!
+               
+               If mlt crashes, you might need to reload the BlueDriver kernel 
+               module due to unreleased DMA buffers.
+               
+               Only supports 2 channel audio at the moment.
+           
        libdv
        
-               Description
-               
-                       libdv dv producer.
-
-               Constructor Argument
-
-                       string target - the filename to write to, e.g. /dev/dv1394.
-
-               Initialisation Properties
-               
-                       int buffer - the number of frames to buffer, minimum 1, default 25.
-                       string rescale - a rescale method, see the Filters/rescale.
-               
-               Mutable Properties
-               
-                       int progressive - indicates whether to use progressive or field-
-                                         based rendering, default 0 (off).
-                       
-               Read Only Properties
-               
-                       none
-                       
-               Dependencies
-               
-                       libdv
-                       
-               Known Bugs
-               
-                       none
+           Description
+           
+               libdv dv producer.
+
+           Constructor Argument
+
+               string target - the filename to write to, e.g. /dev/dv1394.
+
+           Initialisation Properties
+           
+               int buffer - the number of frames to buffer, minimum 1, default 25.
+               string rescale - a rescale method, see the Filters/rescale.
+           
+           Mutable Properties
+           
+               int progressive - indicates whether to use progressive or field-
+                                 based rendering, default 0 (off).
+               
+           Read Only Properties
+           
+               none
+               
+           Dependencies
+           
+               libdv
+               
+           Known Bugs
+           
+               none
+
+       mcmpeg
+       
+           Description
+           
+               Mainconcept MPEG encoder.
+
+           Constructor Argument
+
+               string target - the filename to write to.
+
+           Initialisation Properties
+           
+               int buffer - the number of frames to buffer, minimum 1, default 25.
+               string rescale - a rescale method, see the Filters/rescale.
+               string format - vcd [default], svcd or dvd provide base settings
+               int motion_search_type - 0 to 16 - reduces quality/cpu usage
+               int gop - group of picture size (default: format dependent)
+
+           Mutable Properties
+           
+               int progressive - indicates whether to use progressive or field-
+                                 based rendering, default 0 (off).
+               
+           Read Only Properties
+           
+               none
+               
+           Dependencies
+           
+               Mainconcept MPEG SDK
+               
+           Known Bugs
+           
+               none
 
        sdl
 
-               Description
-
-                       Simple DirectMedia Layer audio and video output module.
-                       
-               Constructor Argument
-
-                       string video_standard - "PAL" (default), "NTSC", or "WxH"
-                       
-               Initialisation Properties
-               
-                       int buffer - the number of frames to buffer, minimum 1, default 25.
-                       string rescale - a rescale method, see the Filters/rescale.
-                                      - Hint: "none" works very good with SDL output.
-                       
-               Mutable Properties
-
-                       double volume - audio level factor
-                       int video_off - if 1, disable video output
-                       int audio_off - if 1, disable audio output
-                       int scale_overlay - if 1, resample video from source pixel aspect
-                                           ratio to square pixels.
-                       int progressive - indicates whether to use progressive or field-
-                                         based rendering, default 0 (off).
-                       
-               Read Only Properties
-
-                       none
-                       
-               Dependencies
-
-                       libSDL-1.2, libasound, libaudio, libXt, libX11, libXext, libSM, libICE
-               
-               Known Bugs
-
-                       none
-
-       westley
-
-               Description
-
-                       Serialise the service network to XML.
-                       See docs/westley.txt for more information.
-                       
-               Constructor Argument
-
-                       resource - the name of a file in which to store the XML.
-                                 - stdout is default.
-                       
-               Initialisation Properties
-
-                       string resource - same as above.
-                       
-               Dependencies
-               
-                       libxml2
-                       
-               Known Bugs
-
-                       Untested arbitrary nesting of multitracks and playlists.
-                       Property "id" is generated as service type followed by number if
-                       no property named "id" exists, but it fails to guarantee uniqueness.
+           Description
+
+               Simple DirectMedia Layer audio and video output module.
+               
+           Constructor Argument
+
+               string video_standard - "PAL" (default), "NTSC", or "WxH"
+               
+           Initialisation Properties
+           
+               int buffer - the number of frames to buffer, minimum 1, default 25.
+               string rescale - a rescale method, see the Filters/rescale.
+                              - Hint: "none" works very good with SDL output.
+               
+           Mutable Properties
+
+               double volume - audio level factor
+               int video_off - if 1, disable video output
+               int audio_off - if 1, disable audio output
+                       int resize - TODO
+               int progressive - indicates whether to use progressive or field-
+                                 based rendering, default 0 (off).
+               int audio_buffer - size of the sdl audio buffer (default: 1024)
+               
+           Read Only Properties
+
+               none
+               
+           Dependencies
+
+               libSDL-1.2, libasound, libaudio, libXt, libX11, libXext, libSM, libICE
+           
+           Known Bugs
+
+               none
+
+       xml
+
+           Description
+
+               Serialise the service network to XML.
+               See docs/mlt-xml.txt for more information.
+               
+           Constructor Argument
+
+               resource - the name of a file in which to store the XML.
+                         - stdout is default.
+               
+           Initialisation Properties
+
+               string resource - same as above.
+               
+           Dependencies
+           
+               libxml2
+               
+           Known Bugs
+
+               Untested arbitrary nesting of multitracks and playlists.
+               Property "id" is generated as service type followed by number if
+               no property named "id" exists, but it fails to guarantee uniqueness.