1 /*
2  * This file is part of gtkD.
3  *
4  * gtkD is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License
6  * as published by the Free Software Foundation; either version 3
7  * of the License, or (at your option) any later version, with
8  * some exceptions, please read the COPYING file.
9  *
10  * gtkD is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with gtkD; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
18  */
19 
20 // generated automatically - do not change
21 // find conversion definition on APILookup.txt
22 // implement new conversion functionalities on the wrap.utils pakage
23 
24 
25 module gstinterfaces.c.types;
26 
27 public import gobject.c.types;
28 
29 
30 /**
31  * The different video orientation methods.
32  *
33  * Since: 1.10
34  */
35 public enum GstVideoOrientationMethod
36 {
37 	/**
38 	 * Identity (no rotation)
39 	 */
40 	IDENTITY = 0,
41 	/**
42 	 * Rotate clockwise 90 degrees
43 	 */
44 	_90R = 1,
45 	/**
46 	 * Rotate 180 degrees
47 	 */
48 	_180 = 2,
49 	/**
50 	 * Rotate counter-clockwise 90 degrees
51 	 */
52 	_90L = 3,
53 	/**
54 	 * Flip horizontally
55 	 */
56 	HORIZ = 4,
57 	/**
58 	 * Flip vertically
59 	 */
60 	VERT = 5,
61 	/**
62 	 * Flip across upper left/lower right diagonal
63 	 */
64 	UL_LR = 6,
65 	/**
66 	 * Flip across upper right/lower left diagonal
67 	 */
68 	UR_LL = 7,
69 	/**
70 	 * Select flip method based on image-orientation tag
71 	 */
72 	AUTO = 8,
73 	/**
74 	 * Current status depends on plugin internal setup
75 	 */
76 	CUSTOM = 9,
77 }
78 alias GstVideoOrientationMethod VideoOrientationMethod;
79 
80 /**
81  * Flags related to the time code information.
82  * For drop frame, only 30000/1001 and 60000/1001 frame rates are supported.
83  *
84  * Since: 1.10
85  */
86 public enum GstVideoTimeCodeFlags
87 {
88 	/**
89 	 * No flags
90 	 */
91 	NONE = 0,
92 	/**
93 	 * Whether we have drop frame rate
94 	 */
95 	DROP_FRAME = 1,
96 	/**
97 	 * Whether we have interlaced video
98 	 */
99 	INTERLACED = 2,
100 }
101 alias GstVideoTimeCodeFlags VideoTimeCodeFlags;
102 
103 /**
104  * #GstVideoDirectionInterface interface.
105  *
106  * Since: 1.10
107  */
108 struct GstVideoDirectionInterface
109 {
110 	/**
111 	 * parent interface type.
112 	 */
113 	GTypeInterface iface;
114 }
115 
116 struct GstVideoOverlay;
117 
118 /**
119  * #GstVideoOverlay interface
120  */
121 struct GstVideoOverlayInterface
122 {
123 	/**
124 	 * parent interface type.
125 	 */
126 	GTypeInterface iface;
127 	/** */
128 	extern(C) void function(GstVideoOverlay* overlay) expose;
129 	/** */
130 	extern(C) void function(GstVideoOverlay* overlay, int handleEvents) handleEvents;
131 	/** */
132 	extern(C) void function(GstVideoOverlay* overlay, int x, int y, int width, int height) setRenderRectangle;
133 	/** */
134 	extern(C) void function(GstVideoOverlay* overlay, size_t handle) setWindowHandle;
135 }
136 
137 /**
138  * Supported frame rates: 30000/1001, 60000/1001 (both with and without drop
139  * frame), and integer frame rates e.g. 25/1, 30/1, 50/1, 60/1.
140  *
141  * The configuration of the time code.
142  *
143  * Since: 1.10
144  */
145 struct GstVideoTimeCodeConfig
146 {
147 	/**
148 	 * Numerator of the frame rate
149 	 */
150 	uint fpsN;
151 	/**
152 	 * Denominator of the frame rate
153 	 */
154 	uint fpsD;
155 	/**
156 	 * the corresponding #GstVideoTimeCodeFlags
157 	 */
158 	GstVideoTimeCodeFlags flags;
159 	/**
160 	 * The latest daily jam information, if present, or NULL
161 	 */
162 	GDateTime* latestDailyJam;
163 }
164 
165 enum BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META = "GstBufferPoolOptionVideoAffineTransformation";
166 alias GST_BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META = BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META;
167 
168 /**
169  * A bufferpool option to enable extra padding. When a bufferpool supports this
170  * option, gst_buffer_pool_config_set_video_alignment() can be called.
171  *
172  * When this option is enabled on the bufferpool,
173  * #GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.
174  */
175 enum BUFFER_POOL_OPTION_VIDEO_ALIGNMENT = "GstBufferPoolOptionVideoAlignment";
176 alias GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT = BUFFER_POOL_OPTION_VIDEO_ALIGNMENT;
177 
178 /**
179  * An option that can be activated on a bufferpool to request gl texture upload
180  * meta on buffers from the pool.
181  *
182  * When this option is enabled on the bufferpool,
183  * @GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.
184  */
185 enum BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META = "GstBufferPoolOptionVideoGLTextureUploadMeta";
186 alias GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META = BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META;
187 
188 /**
189  * An option that can be activated on bufferpool to request video metadata
190  * on buffers from the pool.
191  */
192 enum BUFFER_POOL_OPTION_VIDEO_META = "GstBufferPoolOptionVideoMeta";
193 alias GST_BUFFER_POOL_OPTION_VIDEO_META = BUFFER_POOL_OPTION_VIDEO_META;
194 
195 /**
196  * Name of the caps feature indicating that the stream is interlaced. Currently
197  * it is only used for video.
198  */
199 enum CAPS_FEATURE_FORMAT_INTERLACED = "format:Interlaced";
200 alias GST_CAPS_FEATURE_FORMAT_INTERLACED = CAPS_FEATURE_FORMAT_INTERLACED;
201 
202 enum CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META = "meta:GstVideoAffineTransformation";
203 alias GST_CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META = CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META;
204 
205 enum CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META = "meta:GstVideoGLTextureUploadMeta";
206 alias GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META = CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META;
207 
208 enum CAPS_FEATURE_META_GST_VIDEO_META = "meta:GstVideoMeta";
209 alias GST_CAPS_FEATURE_META_GST_VIDEO_META = CAPS_FEATURE_META_GST_VIDEO_META;
210 
211 enum CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION = "meta:GstVideoOverlayComposition";
212 alias GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION = CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION;
213 
214 /**
215  * This metadata stays relevant as long as video colorspace is unchanged.
216  */
217 enum META_TAG_VIDEO_COLORSPACE_STR = "colorspace";
218 alias GST_META_TAG_VIDEO_COLORSPACE_STR = META_TAG_VIDEO_COLORSPACE_STR;
219 
220 /**
221  * This metadata stays relevant as long as video orientation is unchanged.
222  */
223 enum META_TAG_VIDEO_ORIENTATION_STR = "orientation";
224 alias GST_META_TAG_VIDEO_ORIENTATION_STR = META_TAG_VIDEO_ORIENTATION_STR;
225 
226 /**
227  * This metadata stays relevant as long as video size is unchanged.
228  */
229 enum META_TAG_VIDEO_SIZE_STR = "size";
230 alias GST_META_TAG_VIDEO_SIZE_STR = META_TAG_VIDEO_SIZE_STR;
231 
232 /**
233  * This metadata is relevant for video streams.
234  */
235 enum META_TAG_VIDEO_STR = "video";
236 alias GST_META_TAG_VIDEO_STR = META_TAG_VIDEO_STR;
237 
238 enum VIDEO_COLORIMETRY_BT2020 = "bt2020";
239 alias GST_VIDEO_COLORIMETRY_BT2020 = VIDEO_COLORIMETRY_BT2020;
240 
241 enum VIDEO_COLORIMETRY_BT601 = "bt601";
242 alias GST_VIDEO_COLORIMETRY_BT601 = VIDEO_COLORIMETRY_BT601;
243 
244 enum VIDEO_COLORIMETRY_BT709 = "bt709";
245 alias GST_VIDEO_COLORIMETRY_BT709 = VIDEO_COLORIMETRY_BT709;
246 
247 enum VIDEO_COLORIMETRY_SMPTE240M = "smpte240m";
248 alias GST_VIDEO_COLORIMETRY_SMPTE240M = VIDEO_COLORIMETRY_SMPTE240M;
249 
250 enum VIDEO_COLORIMETRY_SRGB = "sRGB";
251 alias GST_VIDEO_COLORIMETRY_SRGB = VIDEO_COLORIMETRY_SRGB;
252 
253 enum VIDEO_COMP_A = 3;
254 alias GST_VIDEO_COMP_A = VIDEO_COMP_A;
255 
256 enum VIDEO_COMP_B = 2;
257 alias GST_VIDEO_COMP_B = VIDEO_COMP_B;
258 
259 enum VIDEO_COMP_G = 1;
260 alias GST_VIDEO_COMP_G = VIDEO_COMP_G;
261 
262 enum VIDEO_COMP_INDEX = 0;
263 alias GST_VIDEO_COMP_INDEX = VIDEO_COMP_INDEX;
264 
265 enum VIDEO_COMP_PALETTE = 1;
266 alias GST_VIDEO_COMP_PALETTE = VIDEO_COMP_PALETTE;
267 
268 enum VIDEO_COMP_R = 0;
269 alias GST_VIDEO_COMP_R = VIDEO_COMP_R;
270 
271 enum VIDEO_COMP_U = 1;
272 alias GST_VIDEO_COMP_U = VIDEO_COMP_U;
273 
274 enum VIDEO_COMP_V = 2;
275 alias GST_VIDEO_COMP_V = VIDEO_COMP_V;
276 
277 enum VIDEO_COMP_Y = 0;
278 alias GST_VIDEO_COMP_Y = VIDEO_COMP_Y;
279 
280 /**
281  * #GST_TYPE_VIDEO_ALPHA_MODE, the alpha mode to use.
282  * Default is #GST_VIDEO_ALPHA_MODE_COPY.
283  */
284 enum VIDEO_CONVERTER_OPT_ALPHA_MODE = "GstVideoConverter.alpha-mode";
285 alias GST_VIDEO_CONVERTER_OPT_ALPHA_MODE = VIDEO_CONVERTER_OPT_ALPHA_MODE;
286 
287 /**
288  * #G_TYPE_DOUBLE, the alpha color value to use.
289  * Default to 1.0
290  */
291 enum VIDEO_CONVERTER_OPT_ALPHA_VALUE = "GstVideoConverter.alpha-value";
292 alias GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE = VIDEO_CONVERTER_OPT_ALPHA_VALUE;
293 
294 /**
295  * #G_TYPE_UINT, the border color to use if #GST_VIDEO_CONVERTER_OPT_FILL_BORDER
296  * is set to %TRUE. The color is in ARGB format.
297  * Default 0xff000000
298  */
299 enum VIDEO_CONVERTER_OPT_BORDER_ARGB = "GstVideoConverter.border-argb";
300 alias GST_VIDEO_CONVERTER_OPT_BORDER_ARGB = VIDEO_CONVERTER_OPT_BORDER_ARGB;
301 
302 /**
303  * #GST_TYPE_VIDEO_CHROMA_MODE, set the chroma resample mode subsampled
304  * formats. Default is #GST_VIDEO_CHROMA_MODE_FULL.
305  */
306 enum VIDEO_CONVERTER_OPT_CHROMA_MODE = "GstVideoConverter.chroma-mode";
307 alias GST_VIDEO_CONVERTER_OPT_CHROMA_MODE = VIDEO_CONVERTER_OPT_CHROMA_MODE;
308 
309 /**
310  * #GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for
311  * chroma resampling. Other options for the resampler can be used, see
312  * the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_LINEAR
313  */
314 enum VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD = "GstVideoConverter.chroma-resampler-method";
315 alias GST_VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD = VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD;
316 
317 /**
318  * #G_TYPE_INT, height in the destination frame, default destination height
319  */
320 enum VIDEO_CONVERTER_OPT_DEST_HEIGHT = "GstVideoConverter.dest-height";
321 alias GST_VIDEO_CONVERTER_OPT_DEST_HEIGHT = VIDEO_CONVERTER_OPT_DEST_HEIGHT;
322 
323 /**
324  * #G_TYPE_INT, width in the destination frame, default destination width
325  */
326 enum VIDEO_CONVERTER_OPT_DEST_WIDTH = "GstVideoConverter.dest-width";
327 alias GST_VIDEO_CONVERTER_OPT_DEST_WIDTH = VIDEO_CONVERTER_OPT_DEST_WIDTH;
328 
329 /**
330  * #G_TYPE_INT, x position in the destination frame, default 0
331  */
332 enum VIDEO_CONVERTER_OPT_DEST_X = "GstVideoConverter.dest-x";
333 alias GST_VIDEO_CONVERTER_OPT_DEST_X = VIDEO_CONVERTER_OPT_DEST_X;
334 
335 /**
336  * #G_TYPE_INT, y position in the destination frame, default 0
337  */
338 enum VIDEO_CONVERTER_OPT_DEST_Y = "GstVideoConverter.dest-y";
339 alias GST_VIDEO_CONVERTER_OPT_DEST_Y = VIDEO_CONVERTER_OPT_DEST_Y;
340 
341 /**
342  * #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use when
343  * changing bit depth.
344  * Default is #GST_VIDEO_DITHER_BAYER.
345  */
346 enum VIDEO_CONVERTER_OPT_DITHER_METHOD = "GstVideoConverter.dither-method";
347 alias GST_VIDEO_CONVERTER_OPT_DITHER_METHOD = VIDEO_CONVERTER_OPT_DITHER_METHOD;
348 
349 /**
350  * #G_TYPE_UINT, The quantization amount to dither to. Components will be
351  * quantized to multiples of this value.
352  * Default is 1
353  */
354 enum VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION = "GstVideoConverter.dither-quantization";
355 alias GST_VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION = VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION;
356 
357 /**
358  * #G_TYPE_BOOLEAN, if the destination rectangle does not fill the complete
359  * destination image, render a border with
360  * #GST_VIDEO_CONVERTER_OPT_BORDER_ARGB. Otherwise the unusded pixels in the
361  * destination are untouched. Default %TRUE.
362  */
363 enum VIDEO_CONVERTER_OPT_FILL_BORDER = "GstVideoConverter.fill-border";
364 alias GST_VIDEO_CONVERTER_OPT_FILL_BORDER = VIDEO_CONVERTER_OPT_FILL_BORDER;
365 
366 /**
367  * #GST_TYPE_VIDEO_GAMMA_MODE, set the gamma mode.
368  * Default is #GST_VIDEO_GAMMA_MODE_NONE.
369  */
370 enum VIDEO_CONVERTER_OPT_GAMMA_MODE = "GstVideoConverter.gamma-mode";
371 alias GST_VIDEO_CONVERTER_OPT_GAMMA_MODE = VIDEO_CONVERTER_OPT_GAMMA_MODE;
372 
373 /**
374  * #GST_TYPE_VIDEO_MATRIX_MODE, set the color matrix conversion mode for
375  * converting between Y'PbPr and non-linear RGB (R'G'B').
376  * Default is #GST_VIDEO_MATRIX_MODE_FULL.
377  */
378 enum VIDEO_CONVERTER_OPT_MATRIX_MODE = "GstVideoConverter.matrix-mode";
379 alias GST_VIDEO_CONVERTER_OPT_MATRIX_MODE = VIDEO_CONVERTER_OPT_MATRIX_MODE;
380 
381 /**
382  * #GST_TYPE_VIDEO_PRIMARIES_MODE, set the primaries conversion mode.
383  * Default is #GST_VIDEO_PRIMARIES_MODE_NONE.
384  */
385 enum VIDEO_CONVERTER_OPT_PRIMARIES_MODE = "GstVideoConverter.primaries-mode";
386 alias GST_VIDEO_CONVERTER_OPT_PRIMARIES_MODE = VIDEO_CONVERTER_OPT_PRIMARIES_MODE;
387 
388 /**
389  * #GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for
390  * resampling. Other options for the resampler can be used, see
391  * the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_CUBIC
392  */
393 enum VIDEO_CONVERTER_OPT_RESAMPLER_METHOD = "GstVideoConverter.resampler-method";
394 alias GST_VIDEO_CONVERTER_OPT_RESAMPLER_METHOD = VIDEO_CONVERTER_OPT_RESAMPLER_METHOD;
395 
396 /**
397  * #G_TYPE_UINT, The number of taps for the resampler.
398  * Default is 0: let the resampler choose a good value.
399  */
400 enum VIDEO_CONVERTER_OPT_RESAMPLER_TAPS = "GstVideoConverter.resampler-taps";
401 alias GST_VIDEO_CONVERTER_OPT_RESAMPLER_TAPS = VIDEO_CONVERTER_OPT_RESAMPLER_TAPS;
402 
403 /**
404  * #G_TYPE_INT, source height to convert, default source height
405  */
406 enum VIDEO_CONVERTER_OPT_SRC_HEIGHT = "GstVideoConverter.src-height";
407 alias GST_VIDEO_CONVERTER_OPT_SRC_HEIGHT = VIDEO_CONVERTER_OPT_SRC_HEIGHT;
408 
409 /**
410  * #G_TYPE_INT, source width to convert, default source width
411  */
412 enum VIDEO_CONVERTER_OPT_SRC_WIDTH = "GstVideoConverter.src-width";
413 alias GST_VIDEO_CONVERTER_OPT_SRC_WIDTH = VIDEO_CONVERTER_OPT_SRC_WIDTH;
414 
415 /**
416  * #G_TYPE_INT, source x position to start conversion, default 0
417  */
418 enum VIDEO_CONVERTER_OPT_SRC_X = "GstVideoConverter.src-x";
419 alias GST_VIDEO_CONVERTER_OPT_SRC_X = VIDEO_CONVERTER_OPT_SRC_X;
420 
421 /**
422  * #G_TYPE_INT, source y position to start conversion, default 0
423  */
424 enum VIDEO_CONVERTER_OPT_SRC_Y = "GstVideoConverter.src-y";
425 alias GST_VIDEO_CONVERTER_OPT_SRC_Y = VIDEO_CONVERTER_OPT_SRC_Y;
426 
427 /**
428  * #G_TYPE_UINT, maximum number of threads to use. Default 1, 0 for the number
429  * of cores.
430  */
431 enum VIDEO_CONVERTER_OPT_THREADS = "GstVideoConverter.threads";
432 alias GST_VIDEO_CONVERTER_OPT_THREADS = VIDEO_CONVERTER_OPT_THREADS;
433 
434 /**
435  * Default maximum number of errors tolerated before signaling error.
436  */
437 enum VIDEO_DECODER_MAX_ERRORS = 10;
438 alias GST_VIDEO_DECODER_MAX_ERRORS = VIDEO_DECODER_MAX_ERRORS;
439 
440 /**
441  * The name of the templates for the sink pad.
442  */
443 enum VIDEO_DECODER_SINK_NAME = "sink";
444 alias GST_VIDEO_DECODER_SINK_NAME = VIDEO_DECODER_SINK_NAME;
445 
446 /**
447  * The name of the templates for the source pad.
448  */
449 enum VIDEO_DECODER_SRC_NAME = "src";
450 alias GST_VIDEO_DECODER_SRC_NAME = VIDEO_DECODER_SRC_NAME;
451 
452 /**
453  * The name of the templates for the sink pad.
454  */
455 enum VIDEO_ENCODER_SINK_NAME = "sink";
456 alias GST_VIDEO_ENCODER_SINK_NAME = VIDEO_ENCODER_SINK_NAME;
457 
458 /**
459  * The name of the templates for the source pad.
460  */
461 enum VIDEO_ENCODER_SRC_NAME = "src";
462 alias GST_VIDEO_ENCODER_SRC_NAME = VIDEO_ENCODER_SRC_NAME;
463 
464 enum VIDEO_FORMATS_ALL = "{ I420, YV12, YUY2, UYVY, AYUV, VUYA, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, Y210, Y410, NV12, NV21, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10BE, I420_10LE, I422_10BE, I422_10LE, Y444_10BE, Y444_10LE, GBR, GBR_10BE, GBR_10LE, NV16, NV24, NV12_64Z32, A420_10BE, A420_10LE, A422_10BE, A422_10LE, A444_10BE, A444_10LE, NV61, P010_10BE, P010_10LE, IYU2, VYUY, GBRA, GBRA_10BE, GBRA_10LE, BGR10A2_LE, GBR_12BE, GBR_12LE, GBRA_12BE, GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE, Y444_12BE, Y444_12LE, GRAY10_LE32, NV12_10LE32, NV16_10LE32, NV12_10LE40 }";
465 alias GST_VIDEO_FORMATS_ALL = VIDEO_FORMATS_ALL;
466 
467 enum VIDEO_FPS_RANGE = "(fraction) [ 0, max ]";
468 alias GST_VIDEO_FPS_RANGE = VIDEO_FPS_RANGE;
469 
470 enum VIDEO_MAX_COMPONENTS = 4;
471 alias GST_VIDEO_MAX_COMPONENTS = VIDEO_MAX_COMPONENTS;
472 
473 enum VIDEO_MAX_PLANES = 4;
474 alias GST_VIDEO_MAX_PLANES = VIDEO_MAX_PLANES;
475 
476 /**
477  * Video formats supported by gst_video_overlay_composition_blend(), for
478  * use in overlay elements' pad template caps.
479  */
480 enum VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS = "{ BGRx, RGBx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, I420, YV12, AYUV, YUY2, UYVY, v308, Y41B, Y42B, Y444, NV12, NV21, A420, YUV9, YVU9, IYU1, GRAY8 }";
481 alias GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS = VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS;
482 
483 /**
484  * G_TYPE_DOUBLE, B parameter of the cubic filter. The B
485  * parameter controls the bluriness. Values between 0.0 and
486  * 2.0 are accepted. 1/3 is the default.
487  *
488  * Below are some values of popular filters:
489  * B       C
490  * Hermite           0.0     0.0
491  * Spline            1.0     0.0
492  * Catmull-Rom       0.0     1/2
493  * Mitchell          1/3     1/3
494  * Robidoux          0.3782  0.3109
495  * Robidoux
496  * Sharp            0.2620  0.3690
497  * Robidoux
498  * Soft             0.6796  0.1602
499  */
500 enum VIDEO_RESAMPLER_OPT_CUBIC_B = "GstVideoResampler.cubic-b";
501 alias GST_VIDEO_RESAMPLER_OPT_CUBIC_B = VIDEO_RESAMPLER_OPT_CUBIC_B;
502 
503 /**
504  * G_TYPE_DOUBLE, C parameter of the cubic filter. The C
505  * parameter controls the Keys alpha value. Values between 0.0 and
506  * 2.0 are accepted. 1/3 is the default.
507  *
508  * See #GST_VIDEO_RESAMPLER_OPT_CUBIC_B for some more common values
509  */
510 enum VIDEO_RESAMPLER_OPT_CUBIC_C = "GstVideoResampler.cubic-c";
511 alias GST_VIDEO_RESAMPLER_OPT_CUBIC_C = VIDEO_RESAMPLER_OPT_CUBIC_C;
512 
513 /**
514  * G_TYPE_DOUBLE, specifies the size of filter envelope for
515  * @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
516  * 1.0 and 5.0. 2.0 is the default.
517  */
518 enum VIDEO_RESAMPLER_OPT_ENVELOPE = "GstVideoResampler.envelope";
519 alias GST_VIDEO_RESAMPLER_OPT_ENVELOPE = VIDEO_RESAMPLER_OPT_ENVELOPE;
520 
521 /**
522  * G_TYPE_INT, limits the maximum number of taps to use.
523  * 16 is the default.
524  */
525 enum VIDEO_RESAMPLER_OPT_MAX_TAPS = "GstVideoResampler.max-taps";
526 alias GST_VIDEO_RESAMPLER_OPT_MAX_TAPS = VIDEO_RESAMPLER_OPT_MAX_TAPS;
527 
528 /**
529  * G_TYPE_DOUBLE, specifies sharpening of the filter for
530  * @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
531  * 0.0 and 1.0. 0.0 is the default.
532  */
533 enum VIDEO_RESAMPLER_OPT_SHARPEN = "GstVideoResampler.sharpen";
534 alias GST_VIDEO_RESAMPLER_OPT_SHARPEN = VIDEO_RESAMPLER_OPT_SHARPEN;
535 
536 /**
537  * G_TYPE_DOUBLE, specifies sharpness of the filter for
538  * @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
539  * 0.5 and 1.5. 1.0 is the default.
540  */
541 enum VIDEO_RESAMPLER_OPT_SHARPNESS = "GstVideoResampler.sharpness";
542 alias GST_VIDEO_RESAMPLER_OPT_SHARPNESS = VIDEO_RESAMPLER_OPT_SHARPNESS;
543 
544 /**
545  * #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use for propagating
546  * quatization errors.
547  */
548 enum VIDEO_SCALER_OPT_DITHER_METHOD = "GstVideoScaler.dither-method";
549 alias GST_VIDEO_SCALER_OPT_DITHER_METHOD = VIDEO_SCALER_OPT_DITHER_METHOD;
550 
551 enum VIDEO_SIZE_RANGE = "(int) [ 1, max ]";
552 alias GST_VIDEO_SIZE_RANGE = VIDEO_SIZE_RANGE;
553 
554 enum VIDEO_TILE_TYPE_MASK = 65535;
555 alias GST_VIDEO_TILE_TYPE_MASK = VIDEO_TILE_TYPE_MASK;
556 
557 enum VIDEO_TILE_TYPE_SHIFT = 16;
558 alias GST_VIDEO_TILE_TYPE_SHIFT = VIDEO_TILE_TYPE_SHIFT;
559 
560 enum VIDEO_TILE_X_TILES_MASK = 65535;
561 alias GST_VIDEO_TILE_X_TILES_MASK = VIDEO_TILE_X_TILES_MASK;
562 
563 enum VIDEO_TILE_Y_TILES_SHIFT = 16;
564 alias GST_VIDEO_TILE_Y_TILES_SHIFT = VIDEO_TILE_Y_TILES_SHIFT;