Producers
---------
+ avformat
+
+ Description
+
+ ffmpeg libavformat based producer for video and audio.
+
+ Constructor Argument
+
+ 'file' - producer a/v from file
+
+ 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
+
+ Read Only Properties
+
+ double fps - this is fixed at 25 for PAL currently
+ double aspect_ratio - this is determined on the first frame read
+
+ Dependencies
+
+ ffmpeg must be configured as --enable-shared and installed prior
+ to compilation of mlt.
+
+ Known Bugs
+
+ Audio sync discrepancy with some content.
+ Not all libavformat supported formats are seekable.
+ ogg is currently broken.
+ mpeg seeking is inaccurate - doesn't seek to i-frames so you may
+ get junk for a few frames.
+
+ fezzik
+
+ Description
+
+ A friendly giant that likes to rhyme and throw rocks
+
+ Constructor Argument
+
+ 'file' - produce a/v from file
+
+ Initialisation Properties
+
+ int in - in point
+ int out - out point
+ + all producer initialising properties
+
+ Read Only Properties
+
+ string resource - file location
+ + all producer read only properties
+
+ Details
+
+ This producer is 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).
+
+ This producer simplifies many aspects of use. Essentially, it
+ ensures that a consumer will receive images and audio precisely as
+ they request them.
+
+ Dependencies
+
+ all.
+
+ Known Bugs
+
+ None.
+
ffmpeg
Description
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)
- intint in - in point
+ int in - in point
int out - out point
double fps - output frames per second (default: 25)
double aspect_ratio - aspect ratio of video
Known Bugs
- Can be problematic with source NTSC DV files? really? yes - try
- playing pond.dv...
+ Can be problematic with some NTSC DV files?
mcmpeg
http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
- requires xml-like encoding special chars: <, >, & to <, >, &
- int fgcolor - an rgba color specification of the text (i.e. 0xrrggbbaa)
- int bgcolor - an rgba color of the background rectangle
+ string fgcolour - an rgba colour specification of the text (i.e. 0xrrggbbaa)
+ string bgcolour - an rgba colour of the background rectangle
int align - paragraph alignment: 0 = left, 1 = center, 2 = right
int pad - the number of pixels to pad the background rectangle beyond edges of text
default 0
string text - non-markup text (can contain markup chars un-encoded)
string font - the default typeface to use when not using markup
default "Sans 48"
- int x - the horizontal position of the title on the frame
- default 0
- int y - the vertical position of the title on the frame
- default 0
- double mix - the overall opacity control of the generated title
- default 1.0
Read Only Properties
PAL = 0, NTSC = 1
this determines proper pixel aspect ratio
double ttl - how long (seconds) to repeat each picture in file sequences
- int x - the horizontal offset from the left edge of the frame
- int y - the vertical offset from the top edge of the frame
- double mix - the opacity factor to apply to the second frame
- (used in addition to alpha channel).
-
Read Only Properties
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
Since it uses pipes, it is not compatible with bluefish.
+ westley
+
+ Description
+
+ Construct a service network from an XML description.
+
+ Constructor Argument
+
+ file - an XML text file containing westley XML (schema pending)
+
+ Read Only Properties
+
+ string resource - file location
+
+ Dependencies
+
+ libxml2
+
+ Known Bugs
+
+ Non-referenced producers and playlists are not destroyed.
+ A referenced producer or playlist must appear before the reference.
+
+ vorbis
+
+ Description
+
+ OGG Vorbis file reader.
+
+ Constructor Argument
+
+ 'file' - file to use (only .ogg supported at the moment)
+
+ Initialisation Properties
+
+ int in - in point
+ int out - out point
+
+ Read Only Properties
+
+ double fps - this is fixed at 25 for PAL currently
+
+ Dependencies
+
+ libvorbisfile
+
+ Known Bugs
+
+ Fixed frame size (PAL audio chunks).
+ Doesn't cover ogg files with multiple, differing sections.
Filters
-------
Description
- Use ffmpeg executable to substitute audio stream.
+ Use ffmpeg executable to substitute audio stream.
Constructor Argument
Description
- Convert color image to greyscale
+ Convert colour image to greyscale
Constructor Argument
none
+ obscure
+
+ Description
+
+ Obscuring filter.
+
+ Constructor Argument
+
+ none
+
+ Initialisation Properties
+
+ string start - in the format X,Y:WxH[:PWxPY]
+ string end - in the format X,Y:WxH[:PWxPY]
+ int in - in point
+ int out - out point
+
+ Read Only Properties
+
+ none
+
+ Dependencies
+
+ none
+
+ Known Bugs
+
+ none
+
resize
Description
none
+ resample
+
+ Description
+
+ Adjust an audio stream's sampling rate
+
+ Constructor Argument
+
+ frequency - a numeric value for the new sample rate
+
+ Initialisation Properties
+
+ int in - in point
+ int out - out point
+
+ Mutable Properties
+
+ int frequency - the target sample rate
+
+ Dependencies
+
+ libresample
+
+ Known Bugs
+
+ none
+
+ rescale
+
+ Description
+
+ Scale the producer video frame size to match the consumer.
+
+ Constructor Argument
+
+ interpolation - the rescaling method, one of:
+ nearest (lowest quality, fastest),
+ tiles,
+ bilinear (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
+
+ libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
+
+ Known Bugs
+
+ none
+
volume
Description
Constructor Argument
- volume - a floating point value of the factor
+ 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
- double volume - the factor applied to each sample
+ 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 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
+
+ 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.
+
+ gain can be applied as a factor to the normalise amplitude!
Dependencies
none
- resample
+ watermark
Description
- Adjust an audio stream's sampling rate
+ Add a watermark to the frames.
Constructor Argument
- frequency - a numeric value for the new sample rate
+ resource - the producer to use (ie: a .png)
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
Mutable Properties
- int frequency - the target sample rate
+ none
Dependencies
- libresample
+ mlt core modules and optionally, fezzik
Known Bugs
Constructor Argument
- mix - see below
+ string start - X,Y:WxH[:mix]
Initialisation Properties
+ string end - X,Y:WxH[:mix]
int in - in point
int out - out point
-
- Mutable Properties
-
- int x - the horizontal offset from the left edge of the frame
- int y - the vertical offset from the top edge of the frame
- double mix - the opacity factor to apply to the second frame
- (used in addition to alpha channel).
- - any negative value causes an automatic dissolve
-
+
Read Only Properties
none
Constructor Argument
- string file - the luma map file name. If not supplied, a dissolve.
+ string resource - the luma map file name. If not supplied, a dissolve.
Initialisation Properties
Mutable Properties
- string filename - same as above
+ 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.
Constructor Argument
- mix - see below
+ start - see below
Initalisation Properties
Mutable Properties
- double mix - the mix level to apply to the second frame.
- - any negative value causes an automatic crossfade.
+ 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
NTSC handling needs tightening up - sdl:NTSC is the only valid
constructor for NTSC playback at the moment.
+ westley
+
+ Description
+
+ Serialise the service network to XML.
+
+ Constructor Argument
+
+ resource - the name of a file in which to store the XML.
+ stdout is used if not supplied.
+
+ 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.
+