]> git.sesse.net Git - mlt/blob - src/modules/avformat/consumer_avformat.yml
Fix encoding audio distortion for planar codecs (3576437)
[mlt] / src / modules / avformat / consumer_avformat.yml
1 schema_version: 0.1
2 type: consumer
3 identifier: avformat
4 title: FFmpeg Output
5 version: 2
6 copyright: Copyright (C) 2003-2011 Ushodaya Enterprises Limited
7 license: LGPL
8 language: en
9 url: http://www.ffmpeg.org/
10 creator: Charles Yates
11 contributor:
12   - Dan Dennedy
13 tags:
14   - Audio
15   - Video
16 description: Write or stream audio and/or video using FFmpeg
17 parameters:
18   - identifier: argument
19     title: File/URL
20     type: string
21     required: yes
22     widget: filesave
23   - identifier: target
24     title: File/URL
25     type: string
26     description: This is not the same thing as the ffmpeg -target option!
27     readonly: yes
28   - identifier: mlt_profile
29     title: MLT Profile
30     type: string
31     description: >
32       Choose a MLT basic video settings preset.
33       This overrides a profile that may have been set elsewhere.
34   - identifier: redirect
35     title: Redirect I/O
36     description: >
37       This option allows other services to encapsulate the avformat consumer and
38       do something different (not already available in a protocol) with its
39       output by listening to the avformat-write event.
40     type: integer
41     minimum: 0
42     maximum: 1
43     default: 0
44     widget: checkbox
45
46 # These override the MLT profile
47   - identifier: width
48     title: Width
49     type: integer
50     minimum: 0
51     unit: pixels
52   - identifier: height
53     title: Height
54     type: integer
55     minimum: 0
56     unit: pixels
57   - identifier: display_aspect_num
58     title: Display aspect ratio numerator
59     type: integer
60     minimum: 0
61   - identifier: display_aspect_den
62     title: Display aspect ratio denominator
63     type: integer
64     minimum: 0
65   - identifier: display_ratio
66     title: Display aspect ratio
67     readonly: yes
68   - identifier: sample_aspect_num
69     title: Sample aspect ratio numerator
70     type: integer
71     minimum: 0
72   - identifier: sample_aspect_den
73     title: Sample aspect ratio denominator
74     type: integer
75     minimum: 1
76   - identifier: progressive
77     title: Progressive
78     type: integer
79     minimum: 0
80     maximum: 1
81     widget: checkbox
82   - identifier: colorspace
83     title: Colorspace
84     type: integer
85     description: Set the video colorspace (Y'CbCr only).
86     values:
87       - 240 # SMPTE 240M
88       - 601 # ITU-R BT.601
89       - 709 # ITU-R BT.709
90   - identifier: frame_rate_num
91     title: Frame rate numerator
92     type: integer
93     minimum: 0
94     unit: frames/second
95   - identifier: frame_rate_den
96     title: Frame rate denominator
97     type: integer
98     minimum: 1
99     unit: frames/second
100   - identifier: fps
101     title: Frame rate
102     readonly: yes
103     unit: frames/second
104
105 # These are common to all consumers.
106   - identifier: deinterlace_method
107     title: Deinterlacer
108     type: string
109     default: yadif
110     values:
111       - greedy
112       - linearblend
113       - onefield
114       - yadif
115       - yadif-nospatial
116   - identifier: rescale
117     title: Image scaler
118     type: string
119     description: Set the pixel interpolation mode.
120     values:
121       - nearest
122       - bilinear
123       - bicubic
124       - bicublin
125       - gauss
126       - sinc
127       - lanczos
128       - spline
129   - identifier: frequency
130     title: Audio sample rate
131     type: integer
132     minimum: 0
133     maximum: 256000
134     default: 48000
135     unit: Hz
136   - identifier: channels
137     title: Audio channels
138     type: integer
139     minimum: 1
140     maximum: 16
141     default: 2
142   - identifier: channels.0
143     title: Channels on track 1
144     type: integer
145     description: Used to map a bundle of channels to multi-track audio.
146     minimum: 0
147     maximum: 16
148     default: 0
149   - identifier: channels.1
150     title: Channels on track 2
151     type: integer
152     description: Used to map a bundle of channels to multi-track audio.
153     minimum: 0
154     maximum: 16
155     default: 0
156   - identifier: channels.2
157     title: Channels on track 3
158     type: integer
159     description: Used to map a bundle of channels to multi-track audio.
160     minimum: 0
161     maximum: 16
162     default: 0
163   - identifier: channels.3
164     title: Channels on track 4
165     type: integer
166     description: Used to map a bundle of channels to multi-track audio.
167     minimum: 0
168     maximum: 16
169     default: 0
170   - identifier: channels.4
171     title: Channels on track 5
172     type: integer
173     description: Used to map a bundle of channels to multi-track audio.
174     minimum: 0
175     maximum: 16
176     default: 0
177   - identifier: channels.5
178     title: Channels on track 6
179     type: integer
180     description: Used to map a bundle of channels to multi-track audio.
181     minimum: 0
182     maximum: 16
183     default: 0
184   - identifier: channels.6
185     title: Channels on track 7
186     type: integer
187     description: Used to map a bundle of channels to multi-track audio.
188     minimum: 0
189     maximum: 16
190     default: 0
191   - identifier: channels.7
192     title: Channels on track 8
193     type: integer
194     description: Used to map a bundle of channels to multi-track audio.
195     minimum: 0
196     maximum: 16
197     default: 0
198
199 # These are common to all consumers and affect runtime behavior
200   - identifier: terminate_on_pause
201     title: File output
202     type: integer
203     description: Disable this for streaming.
204     minimum: 0
205     maximum: 1
206     default: 1
207     widget: checkbox
208   - identifier: real_time
209     title: Drop frames
210     type: integer
211     description: >
212       Set the number of processing threads and enable frame-dropping (positive)
213       or disable frame-dropping (negative).
214     default: -1
215     widget: spinner
216     unit: threads
217   - identifier: prefill
218     title: Pre-roll
219     type: integer
220     description: Set the number of frames to buffer before starting actual output.
221     minimum: 1
222     default: 1
223     unit: frames
224   - identifier: buffer
225     title: Buffer
226     type: integer
227     description: >
228       Set the maximum number of frames to buffer - process ahead of the output
229       position.
230     minimum: 1
231     default: 25
232     unit: frames
233
234 # These are ffmpeg-compatible aliases to MLT properties
235   - identifier: s
236     title: Size
237     type: string
238     description: >
239       This is a ffmpeg-compatible equivalent to the MLT profile and width and height parameters.
240     format: WxH
241     unit: pixels
242   - identifier: aspect
243     title: Aspect ratio
244     type: string
245     description: >
246       This is a ffmpeg-compatible equivalent to the MLT profile and other aspect ratio parameters.
247     format: numerator:denominator
248   - identifier: deinterlace
249     title: Deinterlace
250     type: integer
251     description: >
252       This is a ffmpeg-compatible equivalent to the MLT profile and progressive parameter.
253     minimum: 0
254     maximum: 1
255   - identifier: r
256     title: Frame rate
257     type: float
258     description: >
259       This is a ffmpeg-compatible equivalent to the MLT profile and frame rate parameters.
260     minimum: 5.0
261   - identifier: ac
262     title: Audio channels
263     type: integer
264     description: >
265       This is a ffmpeg-compatible equivalent to the channels parameter.
266     minimum: 1
267     maximum: 16
268     default: 2
269   - identifier: ar
270     title: Audio sample rate
271     type: integer
272     description: >
273       This is a ffmpeg-compatible equivalent to the frequency parameter.
274     minimum: 0
275     maximum: 256000
276     default: 48000
277     unit: Hz
278
279 # These are other non-AVOption parameters specific to FFmpeg.
280   - identifier: threads
281     title: Encoding threads
282     type: integer
283     minimum: 0
284     maximum: 16
285     default: 1
286     widget: spinner
287     unit: threads
288   - identifier: aq
289     title: Audio quality
290     type: integer
291     description: The meaning depends upon the codec.
292   - identifier: dc
293     title: Intra DC precision
294     type: integer
295     default: 8
296   - identifier: muxdelay
297     title: Muxer delay
298     type: float
299     description: Set the maximum demux-decode delay.
300     default: 0.7
301     unit: seconds
302   - identifier: muxpreload
303     title: Muxer preload
304     type: float
305     description: Set the initial demux-decode delay.
306     default: 0.5
307     unit: seconds
308   - identifier: f
309     title: Format
310     type: string
311     description: Use "list" to see the list of formats.
312     default: mpeg
313   - identifier: acodec
314     title: Audio codec
315     description: Use "list" to see the list of audio codecs.
316     default: mp2
317   - identifier: vcodec
318     title: Video codec
319     description: Use "list" to see the list of video codecs.
320     default: mpeg2video
321   - identifier: atag
322     title: Audio FourCC
323     type: string
324   - identifier: apre
325     title: Audio codec preset
326     type: string
327   - identifier: vpre
328     title: Video codec preset
329     type: string
330   - identifier: fpre
331     title: Format preset
332     type: string
333   - identifier: alang
334     title: Audio language
335     type: string
336     description: Set the 3-character ISO 639 language code of the current audio stream.
337   - identifier: pix_fmt
338     title: Pixel format
339     type: string
340     description: >
341       See 'ffmpeg -pix_fmt list' to see a list of values.
342       Normally, this is not required, but some codecs support multiple pixel
343       formats, especially chroma bit-depth.
344   - identifier: qscale
345     title: Video quantizer
346     type: float
347     description: Set a fixed video quantizer scale for constant quality VBR output.
348   - identifier: vtag
349     title: Video FourCC
350     type: string
351   - identifier: rc_override
352     title: Rate control
353     type: string
354     format: start_frame,end_frame,qscale/...
355     description: This is an override for specific intervals.
356   - identifier: pass
357     title: Pass
358     type: integer
359     description: Select the pass number for two-pass encoding.
360     minimum: 1
361     maximum: 2
362   - identifier: passlogfile
363     title: Two-pass log file
364     type: string
365   - identifier: vb
366     title: Video bitrate
367     type: string
368     unit: bits/second
369     description: >
370       Normally this is an integer, but you can append a K suffix for convenience.
371     minimum: 0
372   - identifier: ab
373     title: Audio bitrate
374     type: string
375     unit: bits/second
376     description: >
377       Normally this is an integer, but you can append a K suffix for convenience.
378   - identifier: an
379     title: Disable audio
380     type: integer
381     minimum: 0
382     maximum: 1
383     widget: checkbox
384   - identifier: vn
385     title: Disable video
386     type: integer
387     minimum: 0
388     maximum: 1
389     widget: checkbox