X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=docs%2Fservices.txt;h=6500f5ff831ca600b64f7a965812408c46a6986d;hb=386afac41d71e43fc7cb80cb5b34496b744f2fab;hp=37b3b9efc34245f591f135c09ad6b65311e11d9a;hpb=acebb83a8ead55799505891f9a95be4eead9eb49;p=melted diff --git a/docs/services.txt b/docs/services.txt index 37b3b9e..6500f5f 100644 --- a/docs/services.txt +++ b/docs/services.txt @@ -28,96 +28,98 @@ Producers ffmpeg must be configured as --enable-shared and installed prior to compilation of mlt. - Oddities - - There seems to be a discrepancy between audio and video pts (time - stamps) which causes audio seeking to be unreliable in some cases. - If audio playback is broken, try adding discrepancy=3 as a - property. - - Not sure of the exact reasons, but am investigating. - Known Bugs - Fixed frame rate. 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. - ffmpeg + fezzik Description - Test case pipe based producer for video and audio. + A friendly giant that likes to rhyme and throw rocks Constructor Argument 'file' - produce a/v from file - v4l - produce a/v from video4linux and dsp device Initialisation Properties - 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 + + all producer initialising properties Read Only Properties - string resource - file or "v4l" - int end_of_clip - holds 1 when input is exhausted + 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 - ffmpeg executable. + all. Known Bugs - in point setting is broken. - - Implementation does not allow fast random access. + None. - fezzik + ffmpeg Description - A freindly giant that likes to throw rocks + Test case pipe based producer for video and audio. Constructor Argument 'file' - produce a/v from file + v4l - produce a/v from video4linux and dsp device Initialisation Properties + 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 Read Only Properties - string resource - file location - double fps - output frames per second - double aspect_ratio - aspect ratio of video] - int length - duration of resource (in frames) + string resource - file or "v4l" + int end_of_clip - holds 1 when input is exhausted Dependencies - all. + ffmpeg executable. Known Bugs - None. + in point setting is broken. + + Implementation does not allow fast random access. libdv @@ -178,8 +180,7 @@ Producers 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 @@ -239,8 +240,8 @@ Producers 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 @@ -248,12 +249,6 @@ Producers 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 @@ -296,11 +291,6 @@ Producers 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 @@ -427,7 +417,7 @@ Filters Description - Use ffmpeg executable to substitute audio stream. + Use ffmpeg executable to substitute audio stream. Constructor Argument @@ -483,7 +473,7 @@ Filters Description - Convert color image to greyscale + Convert colour image to greyscale Constructor Argument @@ -563,6 +553,72 @@ Filters 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 @@ -600,6 +656,16 @@ Filters 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 @@ -609,59 +675,32 @@ Filters 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 - - 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 - Dependencies - libgdk_pixbuf-2.0, libglib-2.0, libgobject-2.0, libgmodule-2.0 + mlt core modules and optionally, fezzik Known Bugs @@ -746,7 +785,7 @@ Transitions Constructor Argument - mix - see below + start - see below Initalisation Properties @@ -755,8 +794,11 @@ Transitions 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