3 Copyright (C) 2004-2005 Ushodaya Enterprises Limited
4 Authors: Charles Yates <charles.yates@pandora.be>
5 Dan Dennedy <dan@dennedy.org>
6 Last Revision: 2005-04-22
12 Services marked as "(Proprietary)" are not distributed with the GPL version
22 ffmpeg libavformat based producer for video and audio.
26 'file' - a filename specification or URL in the form:
27 [{protocol}|{format}]:{resource}[?{format-parameter}[&{format-parameter}...]]
28 For example, video4linux:/dev/video1?width:320&height:240
29 Note: on the bash command line, & must be escaped as '\&'.
30 Also, note the use of ':' instead of '=' for parameters.
31 Use 'ffmpeg -formats' to see a list of supported protocols
36 Format parameters only appear to be useful with 'video4linux' or
37 'audio_device' formats. For 'video4linux' the parameters are
38 width, height, frame_rate, frame_rate_base, and standard (ntsc|pal).
39 For 'audio_device' the parameters are channels and sample_rate.
41 Initialisation Properties
43 int video_index - index of video stream to use (-1 is off)
44 int audio_index - index of audio stream to use (-1 is off)
50 string resource - file location
51 double fps - this is fixed at 25 for PAL currently
52 double source_fps - the framerate of the resource
53 double aspect_ratio - sample aspect ratio of the resource
54 - this is determined on every frame read
58 ffmpeg must be configured as --enable-shared and installed prior
59 to compilation of mlt.
63 Audio sync discrepancy with some content.
64 Not all libavformat supported formats are seekable.
65 Ogg Vorbis is currently broken.
66 MPEG seeking is inaccurate - doesn't seek to i-frames so you may
67 get junk for a few frames.
68 RAW DV seeking not supported.
69 Fails to play beyond first frame of video of sources with PTS not
70 starting at 0 (video4linux).
76 A friendly giant that likes to rhyme and throw rocks
80 'file' - a filename specification:
81 [{mlt-service}:]{resource} | {mlt-service}
82 - can also be the name of a producer service that can
83 accept the resource specified post construction.
85 Initialisation Properties
89 + all producer initialising properties
93 string resource - file location
94 + all producer read only properties
98 This producer has two roles:
100 1. it handles the mappings of all file names to the other
102 2. it attaches normalising filters (rescale, resize and resample)
103 to the producers (when necessary).
105 This producer simplifies many aspects of use. Essentially, it
106 ensures that a consumer will receive images and audio precisely as
122 A simple colour generator.
126 colour - A colour value is a hexadecimal representation of RGB plus
127 alpha channel as 0xrrggbbaa.
128 - Also colours can be the words: white, black, red, green,
130 - The default colour is black.
132 Initialisation Properties
153 libdv based decoder for video and audio.
157 'file' - produce a/v from file
159 Initialisation Properties
166 string resource - file location
167 double fps - output frames per second
168 int length - duration of resource (in frames)
172 string quality - one of "best," "fast" or anything else chooses
181 DVCPRO is incorrectly identified as 16:9 aspect ratio. You must use
182 libdv from CVS or a post 0.101 release.
188 MainConcept based dv decoder for video and audio.
192 'file' - produce a/v from file
194 Initialisation Properties
201 string resource - file location
202 double fps - output frames per second
203 int length - duration of resource (in frames)
207 MainConcept DV or DVCPRO SDK, libdv.
208 "dv_sdk" installed parallel to mlt.
218 MainConcept based mpeg decoder for video and audio.
222 'file' - produce a/v from file
224 Initialisation Properties
231 string resource - file location
232 double fps - output frames per second
233 double aspect_ratio - sample aspect ratio of video
234 int length - duration of resource (in frames)
238 MainConcept MPEG SDK.
239 "mpeg_sdk_release" installed parallel to mlt.
255 Initialisation Properties
262 string resource - file location
263 double fps - output frames per second
264 double aspect_ratio - sample aspect ratio of video
265 int length - duration of resource (in frames)
279 A title generator that uses the Pango international text layout
280 and Freetype2 font renderer.
284 string file - a text file containing Pango markup, see:
285 http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
286 - requires xml-like encoding special chars from:
287 <, >, & -to- <, >, &
291 Supplying a filename with extension ".txt" causes the Fezzik
292 producer to load with pango. If the filename begins with "+" the
293 pango producer interprets the filename as pango text. This is a
294 shortcut to embed titles in inigo commands. For westley, it is
295 recommended that you embed the title text in the property value.
297 Pango has builtin scaling. It will rescale the originally rendered
298 title to whatever the consumer requests. Therefore, it will lose
299 its aspect ratio if so requested, and it is up to the consumer to
300 request a proper width and height that maintains the image aspect.
302 Initialisation Properties
309 string markup - a string containing Pango markup see:
310 http://developer.gnome.org/doc/API/2.0/pango/PangoMarkupFormat.html
311 - requires xml-like encoding special chars from:
312 <, >, & -to- <, >, &
313 string fgcolour - an RGBA colour specification of the text
315 string bgcolour - an RGBA colour of the background rectangle
316 string align - paragraph alignment: left, centre, right
317 - also, numbers 0, 1 and 2 can be used respectively.
318 int pad - the number of pixels to pad the background rectangle
319 beyond edges of text. default 0.
320 string markup - see constructor argument
321 string text - non-markup string in UTF-8 encoding (can contain
322 markup chars un-encoded)
323 string font - the default typeface to use when not using markup.
324 default "Sans 48". FreeType2 renders at 72 dpi.
325 string encoding - the text encoding type of the input if not UTF-8.
326 - see 'iconv --list' for a list of possible inputs.
327 int weight - the weight of the font (default is 400)
331 string resource - the text/markup file or "pango" if no file.
332 int real_width - the original, unscaled width of the rendered title.
333 int real_height - the original, unscaled height of the title.
334 int width - the last requested scaled image width.
335 int height - the last requested scaled image height.
339 libpango-1.0, libpangoft2-1.0, libfreetype, libgdk_pixbuf-2.0,
340 libglib-2.0, libgobject-2.0, libgmodule-2.0, libfontconfig.
344 The foreground and background Pango markup span attributes are not
346 Word wrapping is not supported.
352 A still graphics to video generator using gdk-pixbuf
356 'file' - The name of a graphics file loadable by
357 a gdk-pixbuf loader. see /usr/lib/gdk-pixbuf/loaders
358 definitely png, jpeg, tiff, pnm, and xpm
359 - If "%" in filename, the filename is used with sprintf
360 generate a filename from a counter for multi-file/flipbook
361 animation. The file sequence ends when numeric
363 - If filename contains "/.all.", suffix with an extension to
364 load all pictures with matching extension from a directory.
365 - If filename contains the string "<svg", then pixbuf tries
366 to load the filename as inline SVG XML, which is convenient
371 Pixbuf has builtin scaling. It will rescale the originally rendered
372 title to whatever the consumer requests. Therefore, it will lose
373 its aspect ratio if so requested, and it is up to the consumer to
374 request a proper width and height that maintains the image aspect.
376 Initialisation Properties
380 int begin - when using an image sequence, this sets the starting
385 int ttl - how long (in frames) to repeat each picture in file
386 sequences. default is 25.
390 string resource - file location. See Constructor Argument above.
391 int real_width - the original, unscaled width of the rendered title.
392 int real_height - the original, unscaled height of the title.
393 int width - the last requested scaled image width.
394 int height - the last requested scaled image height.
398 libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
402 XXX: in/out settings are incorrectly handled.
408 Reads a stream of contiguous PPM images.
412 command - a shell command to run something that produces ppm
415 Initialisation Properties
421 string resource - the command
429 Since it uses pipes, it is not compatible with bluefish.
435 Construct a service network from an XML description.
436 See docs/westley.txt.
440 URL - an XML text file containing westley XML (schema/DTD pending)
441 - Since westley files can be parameterised, the URL syntax is:
442 {file-name}[?{param-name}{'='|':'}{param-value}[&{param-name}{'='|':'}{param-value}...]]
443 A colon is allowed instead of an equal sign to pacify inigo,
444 who tokenises anything with an equal sign as a property
445 setting. Also, when running inigo from the shell, beware of
446 the '?' and shell filename expansion. You can surround the URL
447 with single quotations to prevent expansion. Finally, fezzik
448 will fail to match the filename when you use parameters, so
449 preface the url with 'westley:' to force fezzik to load with
454 string resource - file location
462 Non-referenced producers and playlists are not destroyed until the
463 network is destroyed.
464 A referenced producer or playlist must appear before the reference.
465 A filter that occurs before a producer has been defined causes a
472 OGG Vorbis file reader.
476 'file' - file to use (only .ogg supported at the moment)
478 Initialisation Properties
485 double fps - this is fixed at 25 for PAL currently
493 Fixed frame size (PAL audio chunks).
494 Doesn't cover ogg files with multiple, differing sections.
503 Shift the luma component using a constant value.
507 start - the constant floating point numeric value to apply.
510 Initialisation Properties
514 double start - see Constructor Argument above.
515 double end - the ending adjustment value. the filter interpolates
516 between the start and end adjustments over the
517 duration of the effect.
529 Does not go completely to black or white.
536 Copy audio from one channel to another channel.
540 to - the 0-indexed channel to copy into, default is 1.
545 int from - the channel from which to copy, default is 0.
561 Deinterlace a frame consisting of two fields using bob, weave,
562 greedy, one-field, and linear blend methods. This code is
563 appropriated from the Xine XV video output plugin.
567 method - a string containing the deinterlace method: bob, weave,
568 greedy, onefield, or linearblend. The default is
571 Initialisation Properties
586 If the frame properties "progressive" or "consumer_progressive"
587 are non-zero, then the filter is not applied. Also, if applied,
588 this sets the frame property "progressive" to 1.
596 Not a bug, but it only provides fair quality.
603 Adjust image luma using a non-linear power-law curve
607 gamma - a floating point value. The default is 1.0, or none.
609 Initialisation Properties
616 double gamma - the exponential factor of the power-law curve
631 Convert colour image to greyscale
637 Initialisation Properties
658 Scale the producer video frame size to match the consumer.
659 This filter is designed for use as a Fezzik normaliser.
663 interpolation - the rescaling method, one of:
664 nearest (lowest quality, fastest),
666 bilinear (default; good quality, moderate speed),
667 hyper (best quality, slowest).
669 Initialisation Properties
676 string interpolation - see constructor argument above
678 If a property "consumer_aspect_ratio" exists on the frame, then
679 rescaler normalises the producer's aspect ratio and maximises the
680 size of the frame, but may not produce the consumer's requested
681 dimension. Therefore, this option works best in conjunction with the
682 resize filter. This behavior can be disabled by another service by
683 either removing the property, setting it to zero, or setting
684 frame property "distort" to 1.
688 libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0
698 Creates Jack ports and runs a JackRack project to process audio
699 through a stack of LADSPA filters.
703 src - a JackRack file
707 If you are using a consumer that uses ALSA, then you should start
708 jacks with the dummy driver: jackd -d dummy.
709 I also recommend using a period size of 2048: -p 2048.
711 jackd -ddummy -r48000 -p2048
713 Initialisation Properties
718 The following can be used without a rack file in order to connect
719 filter_jackrack to a running instance of JackRack:
720 string out_1 - Jack port to connect MLT's output port (JackRack's input)
721 string out_2 - Jack port to connect MLT's output port (JackRack's input)
722 string in_1 - Jack port to connect MLT's input port (JackRack's output)
723 string in_2 - Jack port to connect MLT's input port (JackRack's output)
735 Jack, LADSPA, glib-2.0, libxml2
739 Currently, due to timing and synchronisation issues, the audio
740 is distorted with repeated samples and latency clicks.
741 no encapsulated resampling and jack runs at a fixed frequency
747 Runs a JackRack project to process audio through a stack of
748 LADSPA filters without using Jack.
752 src - a JackRack file
756 Due to audio integrity issues with the jackrack filter, this
757 filter is better for runtime, while jackrack is more suitable
758 for prototyping a rack file using the Jack Rack GUI.
760 Initialisation Properties
775 Jack, LADSPA, glib-2.0, libxml2
776 Jack is still required because this coexists with the jackrack
781 no encapsulated resampling and jack runs at a fixed frequency
787 Applies a luma transition between the current and next frames.
788 Useful for transitions from a slideshow created using producer
795 Initialisation Properties
806 int period - how long to wait between success iterations of the
807 transition. For best results set this to a multiple
808 of ttl used in pixbuf. The default is 24.
810 luma. - all properties beginning with "luma." are passed to the
811 encapsulated luma transition. For example, luma.out controls
812 the duration of the wipe.
816 transition_luma and its dependencies
826 Scale the producer video frame size to match the consumer.
827 This filter is designed for use as a Fezzik normaliser.
831 interpolation - the rescaling method, one of:
832 nearest (lowest quality, fastest),
833 bilinear (default; good quality, moderate speed),
834 hyper (best quality, slowest).
836 Initialisation Properties
843 string interpolation - see constructor argument above
845 If a property "consumer_aspect_ratio" exists on the frame, then
846 rescaler normalises the producer's aspect ratio and maximises the
847 size of the frame, but may not produce the consumer's requested
848 dimension. Therefore, this option works best in conjunction with the
849 resize filter. This behavior can be disabled by another service by
850 either removing the property, setting it to zero, or setting
851 frame property "distort" to 1.
855 the mainconcept rescaling sdk.
865 Provides various mirror and image reversing effects.
869 mirror - horizontal, vertical, diagonal, flip, flop
871 Initialisation Properties
873 int reverse - being 0 or 1
898 Mix all channels of audio into a mono signal and output it as
903 channels - the number of output channels (default 2)
905 Initialisation Properties
936 Initialisation Properties
938 string start - in the format X,Y:WxH[:PWxPY]
939 - PWxPY is the size of the averaging region in pixels.
940 string end - in the format X,Y:WxH[:PWxPY]
960 Apply one or more filters to a region of the video image. The region
961 can be shaped as well using the alpha channel of another producer.
965 resource - A file whose alpha channel will "shape" the region.
966 - The string "circle" is a shortcut but it requires pixbuf with
967 the librsvg loader. The circle is automatically stretched
968 to the region to create an ellipse.
970 Initialisation Properties
974 plus and region transition properties
978 see the region transition
986 "circle" is unpredictable in the absence of the librsvg pixbuf loader.
993 Adjust an audio stream's sampling rate, and duplicate channels if
994 producer provides less than consumer requested.
996 This filter is automatically invoked by Fezzik for the sake of
997 normalisation over inputs and with the consumer.
1001 frequency - a numeric value for the new sample rate
1003 Initialisation Properties
1010 int frequency - the target sample rate
1018 Assumes 2 channels during libsamplerate initialisation. Untested
1025 Scale the producer video frame size to match the consumer.
1026 This filter is designed for use as a Fezzik normaliser.
1028 Constructor Argument
1032 Initialisation Properties
1039 If a property "consumer_aspect_ratio" exists on the frame, then
1040 rescaler normalises the producer's aspect ratio and maximises the
1041 size of the frame, but may not produce the consumer's requested
1042 dimension. Therefore, this option works best in conjunction with the
1043 resize filter. This behavior can be disabled by another service by
1044 either removing the property, setting it to zero, or setting
1045 frame property "distort" to 1.
1053 none but... it only implements a nearest neighbour scaling - it is
1054 used as the base class for the gtkrescale and mcrescale filters.
1060 Image scaling and padding and field order adjustment.
1064 Normally resize is used to pad the producer's
1065 output to what the consumer has requested after an upstream rescale
1066 filter first scales the image to maximise usage of the image area.
1067 This filter also adjusts the field order to lower field first
1068 if the frame property "top_field_first" has been set to 1.
1069 Therefore, when done, it sets the top_field_first to 0.
1070 This filter is automatically invoked by Fezzik as part of image
1071 sample aspect ratio normalisation.
1073 Constructor Argument
1075 scale - "affine" to use affine transform scaling, otherwise
1078 Initialisation Properties
1083 Read Only Properties
1093 Assumes lower field first output.
1099 Adjust an audio stream's volume level
1100 - based on the 'normalize' utility
1102 Constructor Argument
1104 gain - a string containing one of:
1105 - a floating point value of the gain adjustment
1106 - a numeric value with the suffix "dB" to adjust in terms of decibels
1107 - "normalise" to normalise the volume to the target amplitude -12dBFS
1109 Initialisation Properties
1113 int window - the number of video frames over which to smooth normalisation.
1118 string gain - same as constructor argument above
1120 string normalise - normalise the volume to the amplitude:
1121 - a numeric value with the suffix "dB" to set amplitude in decibels
1122 - a floating point value of the relative volume
1123 - an unspecified value uses the default -12dBFS
1125 string limiter - limit all samples above:
1126 - a numeric value with the suffix "dB"
1127 - a floating point value ( dB = 20 * log10(x) )
1128 - an unspecified value uses the default -6dBFS
1130 double max_gain - a floating point or decibel value of the maximum gain that
1131 can be applied during normalisation.
1132 - an unspecified value uses the default 20dB
1134 string end - a gain value just like the gain property above.
1135 This causes the gain to be interpolated from 'gain' to 'end'
1138 int window - the size of the normalising smoothing buffer in video frame units.
1139 - the smoothing buffer prevents erratic gain changes.
1140 - the default value is 75 video frames.
1142 gain can be applied as a factor to the normalise amplitude!
1156 Add a watermark to the frames.
1158 Constructor Argument
1160 resource - the producer to use (ie: a .png)
1162 Initialisation Properties
1164 string resource - the producer to use
1165 string factory - producer required for the resource ('fezzik')
1166 string geometry - composite geometry
1167 string distort - control scaling
1177 mlt core modules and optionally, fezzik
1190 A key-framable alpha-channel compositor for two frames.
1194 Performs dissolves and luma wipes in addition to alpha compositing.
1196 By default, the aspect ratio of the B frame is respected and the
1197 size portion of the geometry specification simply defines a
1200 This performs field-based rendering unless the A frame property
1201 "progressive" or "consumer_progressive" or the transition property
1202 "progressive" is set to 1.
1204 Constructor Argument
1208 Initialisation Properties
1212 string factory - The name of a factory service used as a non-PGM
1213 producer loader. The default is fezzik.
1215 Read Only Properties
1222 string geometry - key frame specification
1223 - this is a ; delimited form of the deprecated start,
1224 key[n], end properties
1225 int progressive - set to 1 to disable field-based rendering.
1226 string distort - when set, causes the B frame image to fill the WxH
1227 completely with no regard to B's aspect ratio.
1228 string halign - when not distorting, set the horizontal alignment
1229 of B within the geometry rectangle.
1230 - one of: left (0), centre (1), or right (2).
1231 - the default is left.
1232 string valign - when not distorting, set the vertical alignment of
1233 B within the geometry rectangle.
1234 - one of: top (0), middle (1), or bottom (2).
1235 - the default is top.
1236 string luma - the luma map file name. If not supplied, a dissolve.
1237 double softness - only when using a luma map, how soft to make the
1238 edges between A and B. 0.0 = no softness. 1.0 =
1240 Any property starting with "luma." is passed to the non-PGM luma
1243 Deprecated Properties
1245 string start - a geometry specification as X,Y:WxH[!][:mix]
1246 - X, Y, W, H are assumed to pixel units unless they
1248 - '!' is a shortcut to specify distort, see below.
1249 - mix is always a 2 digit percentage, defaults to 100.
1250 - default is "85%,5%:10%x10%"
1251 string end - the ending size and position.
1252 string key[F] - X,Y:WxH[:mix] - set a key frame for geometry between
1253 the in and out. F is a frame number and can be
1254 negative to make it relative to the out point.
1262 Assumes lower field first during field rendering.
1268 A generic dissolve and wipe transition processor.
1273 from how it uses a grayscale "map" file. As the luma value varies
1274 over time, a threshold filter is applied to the map to determine
1275 what parts of frame A vs. frame B to show. It reads PGM files
1276 up to 16 bits! Alternatively, it can use the first frame from any
1277 producer that outputs yuv, but it will be limited to the luma
1278 gamut of 220 values.
1279 This performs field-based rendering unless the A frame property
1280 "progressive" or "consumer_progressive" or the transition property
1281 "progressive" is set to 1.
1283 Constructor Argument
1285 string resource - the luma map file name - either PGM or any other
1287 - If not supplied, a dissolve.
1289 Initialisation Properties
1293 string factory - The name of a factory service used as a non-PGM
1294 producer loader. The default is Fezzik.
1298 string resource - same as above
1299 double softness - only when using a luma map, how soft to make the
1300 edges between A and B. 0.0 = no softness. 1.0 =
1302 int reverse - reverse the direction of the transition.
1303 Any property starting with "producer." is passed to the non-PGM luma
1306 Read Only Properties
1316 Assumes lower field first output.
1322 An two stream audio mixer.
1324 Constructor Argument
1328 Initalisation Properties
1335 double start - the mix level to apply to the second frame.
1336 - any negative value causes an automatic crossfade from 0 to 1.
1337 double end - the ending value of the mix level. mix level will be interpolated
1338 from start to end over the in-out range.
1339 int reverse - set to 1 to reverse the direction of the mix.
1341 Read Only Properties
1351 Samples from the longer of the two frames are discarded.
1358 Apply zero or more filters to B frame as it is composited onto
1359 a region of the A frame. The "shape" of the region can be defined
1360 by the alpha channel of a third producer.
1362 Constructor Argument
1364 resource - a shape producer
1366 Initialisation Properties
1368 string resource - nothing is rectangle, "circle" is a pixbuf-
1369 generated SVG circle, anything else is loaded by the factory.
1370 string factory - the service that creates the shape producer.
1371 - the default is fezzik.
1372 string filter[N] - one or more filters to apply. All filter
1373 properties are passed using the same filter "key"
1374 Any property starting with "composite." is passed to the
1375 encapsulated composite transition.
1377 Read Only Properties
1383 transition_composite
1397 Multiformat transcoding consumer.
1399 Constructor Argument
1401 string target - the filename to write to, e.g. test.mpeg.
1403 Initialisation Properties
1405 int buffer - the number of frames to buffer, minimum 1, default 25.
1406 string rescale - a rescale method, see the Filters/rescale.
1407 int progressive - indicates whether to use progressive or field-
1408 based rendering, default 0 (off).
1410 Read Only Properties
1422 bluefish (Proprietary)
1426 BlueFish444 audio and video output module.
1428 Constructor Argument
1430 card - a numeric card id starting at 1, default is 1.
1432 Initialisation Properties
1434 string standard - "PAL" (default) or "NTSC"
1435 - default is based upon MLT_NORMALISATION
1436 environment variable, which defaults to PAL.
1437 int frames - the number of DMA video frames. default is 8.
1438 minimum is 2. maximum on my system is 11.
1439 int buffer - the number of frames to buffer within MLT, minimum 1,
1441 string rescale - a rescale method, see the Filters/rescale.
1443 Read Only Properties
1449 BlueVelvet SDK installed parallel to mlt in "bluefish."
1453 Does not work with any service that uses pipes!
1455 If mlt crashes, you might need to reload the BlueDriver kernel
1456 module due to unreleased DMA buffers.
1458 Only supports 2 channel audio at the moment.
1466 Constructor Argument
1468 string target - the filename to write to, e.g. /dev/dv1394.
1470 Initialisation Properties
1472 int buffer - the number of frames to buffer, minimum 1, default 25.
1473 string rescale - a rescale method, see the Filters/rescale.
1477 int progressive - indicates whether to use progressive or field-
1478 based rendering, default 0 (off).
1480 Read Only Properties
1496 Mainconcept MPEG encoder.
1498 Constructor Argument
1500 string target - the filename to write to.
1502 Initialisation Properties
1504 int buffer - the number of frames to buffer, minimum 1, default 25.
1505 string rescale - a rescale method, see the Filters/rescale.
1506 string format - vcd [default], svcd or dvd provide base settings
1507 int motion_search_type - 0 to 16 - reduces quality/cpu usage
1508 int gop - group of picture size (default: format dependent)
1512 int progressive - indicates whether to use progressive or field-
1513 based rendering, default 0 (off).
1515 Read Only Properties
1521 Mainconcept MPEG SDK
1531 Simple DirectMedia Layer audio and video output module.
1533 Constructor Argument
1535 string video_standard - "PAL" (default), "NTSC", or "WxH"
1537 Initialisation Properties
1539 int buffer - the number of frames to buffer, minimum 1, default 25.
1540 string rescale - a rescale method, see the Filters/rescale.
1541 - Hint: "none" works very good with SDL output.
1545 double volume - audio level factor
1546 int video_off - if 1, disable video output
1547 int audio_off - if 1, disable audio output
1549 int progressive - indicates whether to use progressive or field-
1550 based rendering, default 0 (off).
1551 int audio_buffer - size of the sdl audio buffer (default: 1024)
1553 Read Only Properties
1559 libSDL-1.2, libasound, libaudio, libXt, libX11, libXext, libSM, libICE
1569 Serialise the service network to XML.
1570 See docs/westley.txt for more information.
1572 Constructor Argument
1574 resource - the name of a file in which to store the XML.
1575 - stdout is default.
1577 Initialisation Properties
1579 string resource - same as above.
1587 Untested arbitrary nesting of multitracks and playlists.
1588 Property "id" is generated as service type followed by number if
1589 no property named "id" exists, but it fails to guarantee uniqueness.