From e3d5835f3a976c0d68f3af9f91b4a888294b3ebc Mon Sep 17 00:00:00 2001 From: Brian Matherly Date: Tue, 19 Jul 2011 22:36:14 -0500 Subject: [PATCH] Transcribe service metadata from services.txt to corresponding yml files. --- src/modules/core/filter_mirror.yml | 12 +++++ src/modules/core/filter_mono.yml | 8 +++ src/modules/core/filter_obscure.yml | 15 ++++++ src/modules/core/filter_region.yml | 17 +++++++ src/modules/core/transition_luma.yml | 44 ++++++++++++++++ src/modules/core/transition_mix.yml | 24 +++++++++ src/modules/core/transition_region.yml | 32 ++++++++++++ src/modules/dv/consumer_libdv.yml | 43 ++++++++++++++++ src/modules/jackrack/filter_ladspa.yml | 3 -- src/modules/normalize/filter_volume.yml | 67 +++++++++++++++++++++++++ src/modules/sdl/consumer_sdl.yml | 55 ++++++++++++++++++++ src/modules/xml/consumer_xml.yml | 17 +++++++ 12 files changed, 334 insertions(+), 3 deletions(-) diff --git a/src/modules/core/filter_mirror.yml b/src/modules/core/filter_mirror.yml index 1b8013ef..af60464b 100644 --- a/src/modules/core/filter_mirror.yml +++ b/src/modules/core/filter_mirror.yml @@ -9,3 +9,15 @@ license: LGPLv2.1 language: en tags: - Video +description: > + Provides various mirror and image reversing effects. +parameters: + - identifier: argument + title: File + type: string + description: one of: horizontal, vertical, diagonal, xdiagonal, flip, flop + - identifier: reverse + title: Reverse + type: integer + mutable: no + default: 0 diff --git a/src/modules/core/filter_mono.yml b/src/modules/core/filter_mono.yml index aed5ae82..b0cc48d5 100644 --- a/src/modules/core/filter_mono.yml +++ b/src/modules/core/filter_mono.yml @@ -9,3 +9,11 @@ license: LGPLv2.1 language: en tags: - Audio +description: > + Mix all channels of audio into a mono signal and output it as N channels. +parameters: + - identifier: argument + title: channels + type: integer + description: the number of output channels (default 2) + \ No newline at end of file diff --git a/src/modules/core/filter_obscure.yml b/src/modules/core/filter_obscure.yml index 6fbe30bf..c2edae80 100644 --- a/src/modules/core/filter_obscure.yml +++ b/src/modules/core/filter_obscure.yml @@ -9,3 +9,18 @@ license: LGPLv2.1 language: en tags: - Video +description: > + Obscuring filter. +parameters: + - identifier: argument + title: Start + type: string + description: > + The starting rectangle is given in the format X/Y:WxH[:PWxPY] where + PWxPY is the size of the averaging region in pixels. + - identifier: end + title: End + type: string + description: > + The ending rectangle is given in the format X/Y:WxH[:PWxPY] where + PWxPY is the size of the averaging region in pixels. diff --git a/src/modules/core/filter_region.yml b/src/modules/core/filter_region.yml index 24aa9fe3..5916b0d7 100644 --- a/src/modules/core/filter_region.yml +++ b/src/modules/core/filter_region.yml @@ -9,3 +9,20 @@ license: LGPLv2.1 language: en tags: - Video +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. +bugs: "circle" is unpredictable in the absence of the librsvg pixbuf loader. +parameters: + - identifier: argument + title: File + type: string + description: > + 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. + - identifier: region.* + title: Region + description: > + Properties may be set on the encapsulated region transition.See "region" + transition for details. diff --git a/src/modules/core/transition_luma.yml b/src/modules/core/transition_luma.yml index 5ad9cf38..cdbc04af 100644 --- a/src/modules/core/transition_luma.yml +++ b/src/modules/core/transition_luma.yml @@ -9,3 +9,47 @@ license: LGPLv2.1 language: en tags: - Video +description: > + A generic dissolve and wipe transition processor. + + "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. +bugs: Assumes lower field first output. +parameters: + - identifier: argument + title: Luma map file + type: string + description: > + Either PGM or any other producable video. If not supplied, a dissolve. + - identifier: factory + title: Factory + type: string + description: > + The name of a factory service used as a non-PGM producer loader. + default: 'loader' + - identifier: softness + title: Softness + type: double + mutable: yes + description: > + Only when using a luma map, how soft to make the edges between A and B. + 0.0 = no softness. 1.0 = too soft. + - identifier: reverse + title: Reverse + type: int + mutable: yes + description: > + Reverse the direction of the transition. + default: 0 + - identifier: producer.* + title: Producer + mutable: yes + description: > + Properties may be set on the encapsulated producer. Any property starting + with "producer." is passed to the non-PGM luma producer. + readonly: no diff --git a/src/modules/core/transition_mix.yml b/src/modules/core/transition_mix.yml index 9c0cd376..fb978620 100644 --- a/src/modules/core/transition_mix.yml +++ b/src/modules/core/transition_mix.yml @@ -9,3 +9,27 @@ license: LGPLv2.1 language: en tags: - Audio +description: An two stream audio mixer. +bugs: Samples from the longer of the two frames are discarded. +parameters: + - identifier: start + title: Start + type: double + mutable: yes + description: > + The mix level to apply to the second frame. Any negative value causes an + automatic crossfade from 0 to 1. + - identifier: end + title: End + type: double + mutable: yes + description: > + The ending value of the mix level. Mix level will be interpolated from + start to end over the in-out range. + - identifier: reverse + title: Reverse + type: integer + mutable: yes + description: > + Set to 1 to reverse the direction of the mix. + default: 0 diff --git a/src/modules/core/transition_region.yml b/src/modules/core/transition_region.yml index acfa024d..aea23243 100644 --- a/src/modules/core/transition_region.yml +++ b/src/modules/core/transition_region.yml @@ -9,3 +9,35 @@ license: LGPLv2.1 language: en tags: - Video +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. +parameters: + - identifier: argument + title: Shape producer + type: string + description: > + Nothing (unspecified) is rectangle, "circle" is a pixbuf-generated SVG + circle, anything else is loaded by the factory. + - identifier: factory + title: Factory + type: string + description: > + The service that creates the shape producer. + default: 'loader' + - identifier: filter[N] + title: Filter + type: string + description: > + One or more filters to apply. All filter properties are passed using the + same filter "key". + - identifier: composite.* + title: Composite + description: > + Properties may be set on the encapsulated composite transition. + + e.g.: composite.valign=c + + See "composite" transition for details. + readonly: no diff --git a/src/modules/dv/consumer_libdv.yml b/src/modules/dv/consumer_libdv.yml index 4bff1cc1..ae91fb0d 100644 --- a/src/modules/dv/consumer_libdv.yml +++ b/src/modules/dv/consumer_libdv.yml @@ -10,3 +10,46 @@ language: en tags: - Audio - Video +description: > + DV consumer using libdv. +parameters: + - identifier: argument + title: File + type: string + description: > + The filename to write to. + + e.g. /dev/dv1394 + required: yes + widget: filesave + - identifier: buffer + title: Buffer + type: integer + description: > + Set the maximum number of frames to buffer - process ahead of the output + position. + minimum: 1 + default: 25 + unit: frames + - identifier: rescale + title: Image scaler + type: string + description: Set the pixel interpolation mode. + values: + - nearest + - bilinear + - bicubic + - bicublin + - gauss + - sinc + - lanczos + - spline + - identifier: progressive + title: Progressive + type: integer + description: indicates whether to use progressive or field-based rendering. + minimum: 0 + maximum: 1 + default: 0 + mutable: yes + widget: checkbox diff --git a/src/modules/jackrack/filter_ladspa.yml b/src/modules/jackrack/filter_ladspa.yml index 7792eeb5..9c4ebf50 100644 --- a/src/modules/jackrack/filter_ladspa.yml +++ b/src/modules/jackrack/filter_ladspa.yml @@ -23,6 +23,3 @@ parameters: description: > Runs a JACK Rack project to process audio through a stack of LADSPA filters without using JACK. - - identifier: resource - title: JACK Rack XML file - type: string diff --git a/src/modules/normalize/filter_volume.yml b/src/modules/normalize/filter_volume.yml index cd6ccb6d..68110ddb 100644 --- a/src/modules/normalize/filter_volume.yml +++ b/src/modules/normalize/filter_volume.yml @@ -9,3 +9,70 @@ license: GPLv2 language: en tags: - Audio +description: > + Adjust an audio stream's volume level. This filter is based on the + 'normalize' utility +parameters: + - identifier: argument + title: Gain + type: string + description: > + The gain may be indicated as a floating point value of the gain + adjustment. + + The gain may also be indicated as a numeric value with the suffix "dB" + to adjust in terms of decibels. + + The gain may also be set to "normalise" to normalise the volume to the + target amplitude -12dBFS. + - identifier: window + title: Window + type: integer + description: > + The number of video frames over which to smooth normalisation. + default: 75 + mutable: yes + - identifier: normalise + title: Normalise + type: string + description: > + Normalise the volume to the specified amplitude. + + The normalization may be indicated as a floating point value of the + relative volume + + The normalisation may also be indicated as a numeric value with the + suffix "dB" to set the amplitude in decibels. + default: -12dBFS + mutable: yes + - identifier: limiter + title: Limiter + type: string + description: > + Limit all samples above the specified amplitude. + + The limiting may be indicated as a floating point value of the + relative volume + + The limiting may also be indicated as a numeric value with the suffix + "dB" to set the limiting amplitude in decibels. + default: -6dBFS + mutable: yes + - identifier: max_gain + title: Max gain + type: double + description: > + A floating point or decibel value of the maximum gain that can be + applied during normalisation. + default: 20dB + mutable: yes + - identifier: end + title: End gain + type: string + description: > + A gain value just like the Gain property. This causes the gain to be + interpolated from 'gain' to 'end' over the duration. + mutable: yes + + + diff --git a/src/modules/sdl/consumer_sdl.yml b/src/modules/sdl/consumer_sdl.yml index 44ea82d6..a2537ef5 100644 --- a/src/modules/sdl/consumer_sdl.yml +++ b/src/modules/sdl/consumer_sdl.yml @@ -10,3 +10,58 @@ language: en tags: - Audio - Video +description: > + Simple DirectMedia Layer audio and video output module. +parameters: + - identifier: argument + title: Video Standard + type: string + description: > + "PAL" (default), "NTSC", or "WxH" + required: yes + - identifier: buffer + title: Buffer + type: integer + description: > + Set the maximum number of frames to buffer - process ahead of the output + position. + minimum: 1 + default: 25 + unit: frames + - identifier: rescale + title: Image scaler + type: string + description: > + A rescale method, see the Filters/rescale. + + Hint: "none" works very good with SDL output. + - identifier: volume + title: Volume + type: double + description: Audio level factor. + mutable: yes + - identifier: video_off + title: Video off + type: integer + description: If 1, disable video output + mutable: yes + - identifier: audio_off + title: Audio off + type: integer + description: If 1, disable audio output + mutable: yes + - identifier: progressive + title: Progressive + type: integer + description: indicates whether to use progressive or field-based rendering. + minimum: 0 + maximum: 1 + default: 0 + mutable: yes + widget: checkbox + - identifier: audio_buffer + title: Audio buffer + type: integer + description: Size of the sdl audio buffer. + mutable: yes + default: 1024 diff --git a/src/modules/xml/consumer_xml.yml b/src/modules/xml/consumer_xml.yml index 1047b20e..5046dde7 100644 --- a/src/modules/xml/consumer_xml.yml +++ b/src/modules/xml/consumer_xml.yml @@ -10,3 +10,20 @@ language: en tags: - Audio - Video +description: > + Serialise the service network to XML. See docs/mlt-xml.txt for more + information. +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. +parameters: + - identifier: argument + title: File + type: string + description: The name of a file in which to store the XML. + readonly: no + required: yes + mutable: no + default: stdout + widget: fileopen -- 2.39.2