]> git.sesse.net Git - mlt/blob - src/modules/vid.stab/filter_transform.yml
Mark vid.stab module as GPL
[mlt] / src / modules / vid.stab / filter_transform.yml
1 schema_version: 0.1
2 type: filter
3 identifier: videostab2
4 title: Videostab2
5 copyright: Copyright (C) 2011 Marco Gittler
6 creator: Marco Gittler <g.marco@freenet.de>
7 version: 0.1
8 license: GPL
9 language: en
10 url: http://public.hronopik.de/vid.stab/
11 tags:
12   - Video
13 description: Stabilize Video (for wiggly/rolling video)
14 notes: >
15   This filter requires two passes. The first pass performs analysis and stores
16   the result in the vectors property. The second pass applies the vectors to
17   the image.
18   To use with melt, use 'melt ... -consumer xml:output.mlt all=1' for the
19   first pass. For the second pass, use output.mlt as the input.
20
21 parameters:
22   - identifier: vectors (transform)
23     title: Vectors
24     type: geometry
25     description: >
26       A set of X/Y coordinates by which to adjust the image.
27       When this is not supplied, the filter computes the vectors and stores
28       them in this property when the last frame has been processed.
29
30   - identifier: shakiness
31     title: Shakiness
32     type: integer
33     description: How shaky is the video (analysis)
34     readonly: no
35     required: no
36     minimum: 1
37     maximum: 10
38     default: 4
39     mutable: yes
40     widget: spinner
41
42   - identifier: accuracy
43     title: Accuracy
44     type: integer
45     description: Accuracy of shakiness detection (analysis)
46     readonly: no
47     required: no
48     minimum: 1
49     maximum: 15
50     default: 4
51     mutable: yes
52     widget: spinner
53
54   - identifier: stepsize
55     title: Stepsize
56     type: integer
57     description: Step size of search process (analysis)
58     readonly: no
59     required: no
60     minimum: 0
61     maximum: 100
62     default: 6
63     mutable: yes
64     widget: spinner
65
66   - identifier: algo
67     title: Algorithm
68     type: integer
69     description: 0 = brute force (translation only), 1 = small measurement fields (analysis)
70     readonly: no
71     required: no
72     minimum: 0
73     maximum: 1
74     default: 1
75     mutable: yes
76     widget: spinner
77
78   - identifier: mincontrast
79     title: Minimum Contrast
80     type: float
81     description: Below this contrast, a field is discarded (analysis)
82     readonly: no
83     required: no
84     minimum: 0
85     maximum: 1
86     default: 0.3
87     mutable: yes
88     widget: spinner
89
90   - identifier: show
91     title: Show
92     type: integer
93     description: 0 = draw nothing, 1 or 2 = show fields and transforms (analysis)
94     readonly: no
95     required: no
96     minimum: 0
97     maximum: 2
98     default: 0
99     mutable: yes
100     widget: spinner
101
102   - identifier: smoothing
103     title: Smoothing
104     type: integer
105     description: number of frames for lowpass filtering (2N + 1 frames) (transform)
106     readonly: no
107     required: no
108     minimum: 0
109     maximum: 100
110     default: 10
111     mutable: yes
112     widget: spinner
113
114   - identifier: maxshift
115     title: Maxshift
116     type: integer
117     description: maximum translation, -1 = no limit (transform)
118     unit: pixels
119     readonly: no
120     required: no
121     minimum: -1
122     maximum: 1000
123     default: -1
124     mutable: yes
125     widget: spinner
126
127   - identifier: maxangle
128     title: Maxangle
129     type: float
130     description: max angle to rotate, -1 = no limit (transform)
131     unit: radians
132     readonly: no
133     required: no
134     minimum: -1
135     maximum: 3.142
136     default: -1
137     mutable: yes
138     widget: spinner
139
140   - identifier: crop
141     title: Crop
142     type: integer
143     description: 0 = keep border, 1 = black background (transform)
144     readonly: no
145     required: no
146     minimum: 0
147     maximum: 1
148     default: 0
149     mutable: yes
150     widget: spinner
151
152   - identifier: invert
153     title: Invert
154     type: integer
155     description: Invert transforms (transform)
156     readonly: no
157     required: no
158     minimum: 0
159     maximum: 1
160     default: 0
161     mutable: yes
162     widget: spinner
163
164   - identifier: relative
165     title: Relative Transform
166     type: integer
167     description: 0 = absolute, 1 = relative (transform)
168     readonly: no
169     required: no
170     minimum: 0
171     maximum: 1
172     default: 1
173     mutable: yes
174     widget: spinner
175
176   - identifier: zoom
177     title: Zoom
178     type: integer
179     description: additional zoom amount (transform)
180     unit: percent
181     readonly: no
182     required: no
183     minimum: -500
184     maximum: 500
185     default: 0
186     mutable: yes
187     widget: spinner
188
189   - identifier: optzoom
190     title: Optimal Zoom
191     type: integer
192     description: automatically determine optimal zoom. 1 - static zoom, 2 - adaptive zoom (transform)
193     readonly: no
194     required: no
195     minimum: 0
196     maximum: 2
197     default: 1
198     mutable: yes
199     widget: spinner
200
201   - identifier: zoomspeed
202     title: Optimal Zoom Speed
203     type: float
204     description: zoom per frame in percent, (used when optzoom = 2) (transform)
205     readonly: no
206     required: no
207     minimum: 0
208     maximum: 1
209     default: 0.25
210     mutable: yes
211     widget: spinner
212
213   - identifier: refresh
214     description: >
215       Applications should set this when it updates a transform parameter.
216     type: integer
217     minimum: 0
218     maximum: 1