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 enum CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META = "meta:GstVideoAffineTransformation";
196 alias GST_CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META = CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META;
197 
198 enum CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META = "meta:GstVideoGLTextureUploadMeta";
199 alias GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META = CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META;
200 
201 enum CAPS_FEATURE_META_GST_VIDEO_META = "meta:GstVideoMeta";
202 alias GST_CAPS_FEATURE_META_GST_VIDEO_META = CAPS_FEATURE_META_GST_VIDEO_META;
203 
204 enum CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION = "meta:GstVideoOverlayComposition";
205 alias GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION = CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION;
206 
207 /**
208  * This metadata stays relevant as long as video colorspace is unchanged.
209  */
210 enum META_TAG_VIDEO_COLORSPACE_STR = "colorspace";
211 alias GST_META_TAG_VIDEO_COLORSPACE_STR = META_TAG_VIDEO_COLORSPACE_STR;
212 
213 /**
214  * This metadata stays relevant as long as video orientation is unchanged.
215  */
216 enum META_TAG_VIDEO_ORIENTATION_STR = "orientation";
217 alias GST_META_TAG_VIDEO_ORIENTATION_STR = META_TAG_VIDEO_ORIENTATION_STR;
218 
219 /**
220  * This metadata stays relevant as long as video size is unchanged.
221  */
222 enum META_TAG_VIDEO_SIZE_STR = "size";
223 alias GST_META_TAG_VIDEO_SIZE_STR = META_TAG_VIDEO_SIZE_STR;
224 
225 /**
226  * This metadata is relevant for video streams.
227  */
228 enum META_TAG_VIDEO_STR = "video";
229 alias GST_META_TAG_VIDEO_STR = META_TAG_VIDEO_STR;
230 
231 enum VIDEO_COLORIMETRY_BT2020 = "bt2020";
232 alias GST_VIDEO_COLORIMETRY_BT2020 = VIDEO_COLORIMETRY_BT2020;
233 
234 enum VIDEO_COLORIMETRY_BT601 = "bt601";
235 alias GST_VIDEO_COLORIMETRY_BT601 = VIDEO_COLORIMETRY_BT601;
236 
237 enum VIDEO_COLORIMETRY_BT709 = "bt709";
238 alias GST_VIDEO_COLORIMETRY_BT709 = VIDEO_COLORIMETRY_BT709;
239 
240 enum VIDEO_COLORIMETRY_SMPTE240M = "smpte240m";
241 alias GST_VIDEO_COLORIMETRY_SMPTE240M = VIDEO_COLORIMETRY_SMPTE240M;
242 
243 enum VIDEO_COLORIMETRY_SRGB = "sRGB";
244 alias GST_VIDEO_COLORIMETRY_SRGB = VIDEO_COLORIMETRY_SRGB;
245 
246 enum VIDEO_COMP_A = 3;
247 alias GST_VIDEO_COMP_A = VIDEO_COMP_A;
248 
249 enum VIDEO_COMP_B = 2;
250 alias GST_VIDEO_COMP_B = VIDEO_COMP_B;
251 
252 enum VIDEO_COMP_G = 1;
253 alias GST_VIDEO_COMP_G = VIDEO_COMP_G;
254 
255 enum VIDEO_COMP_INDEX = 0;
256 alias GST_VIDEO_COMP_INDEX = VIDEO_COMP_INDEX;
257 
258 enum VIDEO_COMP_PALETTE = 1;
259 alias GST_VIDEO_COMP_PALETTE = VIDEO_COMP_PALETTE;
260 
261 enum VIDEO_COMP_R = 0;
262 alias GST_VIDEO_COMP_R = VIDEO_COMP_R;
263 
264 enum VIDEO_COMP_U = 1;
265 alias GST_VIDEO_COMP_U = VIDEO_COMP_U;
266 
267 enum VIDEO_COMP_V = 2;
268 alias GST_VIDEO_COMP_V = VIDEO_COMP_V;
269 
270 enum VIDEO_COMP_Y = 0;
271 alias GST_VIDEO_COMP_Y = VIDEO_COMP_Y;
272 
273 /**
274  * #GST_TYPE_VIDEO_ALPHA_MODE, the alpha mode to use.
275  * Default is #GST_VIDEO_ALPHA_MODE_COPY.
276  */
277 enum VIDEO_CONVERTER_OPT_ALPHA_MODE = "GstVideoConverter.alpha-mode";
278 alias GST_VIDEO_CONVERTER_OPT_ALPHA_MODE = VIDEO_CONVERTER_OPT_ALPHA_MODE;
279 
280 /**
281  * #G_TYPE_DOUBLE, the alpha color value to use.
282  * Default to 1.0
283  */
284 enum VIDEO_CONVERTER_OPT_ALPHA_VALUE = "GstVideoConverter.alpha-value";
285 alias GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE = VIDEO_CONVERTER_OPT_ALPHA_VALUE;
286 
287 /**
288  * #G_TYPE_UINT, the border color to use if #GST_VIDEO_CONVERTER_OPT_FILL_BORDER
289  * is set to %TRUE. The color is in ARGB format.
290  * Default 0xff000000
291  */
292 enum VIDEO_CONVERTER_OPT_BORDER_ARGB = "GstVideoConverter.border-argb";
293 alias GST_VIDEO_CONVERTER_OPT_BORDER_ARGB = VIDEO_CONVERTER_OPT_BORDER_ARGB;
294 
295 /**
296  * #GST_TYPE_VIDEO_CHROMA_MODE, set the chroma resample mode subsampled
297  * formats. Default is #GST_VIDEO_CHROMA_MODE_FULL.
298  */
299 enum VIDEO_CONVERTER_OPT_CHROMA_MODE = "GstVideoConverter.chroma-mode";
300 alias GST_VIDEO_CONVERTER_OPT_CHROMA_MODE = VIDEO_CONVERTER_OPT_CHROMA_MODE;
301 
302 /**
303  * #GST_TYPE_RESAMPLER_METHOD, The resampler method to use for
304  * chroma resampling. Other options for the resampler can be used, see
305  * the #GstResampler. Default is #GST_RESAMPLER_METHOD_LINEAR
306  */
307 enum VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD = "GstVideoConverter.chroma-resampler-method";
308 alias GST_VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD = VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD;
309 
310 /**
311  * #G_TYPE_INT, height in the destination frame, default destination height
312  */
313 enum VIDEO_CONVERTER_OPT_DEST_HEIGHT = "GstVideoConverter.dest-height";
314 alias GST_VIDEO_CONVERTER_OPT_DEST_HEIGHT = VIDEO_CONVERTER_OPT_DEST_HEIGHT;
315 
316 /**
317  * #G_TYPE_INT, width in the destination frame, default destination width
318  */
319 enum VIDEO_CONVERTER_OPT_DEST_WIDTH = "GstVideoConverter.dest-width";
320 alias GST_VIDEO_CONVERTER_OPT_DEST_WIDTH = VIDEO_CONVERTER_OPT_DEST_WIDTH;
321 
322 /**
323  * #G_TYPE_INT, x position in the destination frame, default 0
324  */
325 enum VIDEO_CONVERTER_OPT_DEST_X = "GstVideoConverter.dest-x";
326 alias GST_VIDEO_CONVERTER_OPT_DEST_X = VIDEO_CONVERTER_OPT_DEST_X;
327 
328 /**
329  * #G_TYPE_INT, y position in the destination frame, default 0
330  */
331 enum VIDEO_CONVERTER_OPT_DEST_Y = "GstVideoConverter.dest-y";
332 alias GST_VIDEO_CONVERTER_OPT_DEST_Y = VIDEO_CONVERTER_OPT_DEST_Y;
333 
334 /**
335  * #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use when
336  * changing bit depth.
337  * Default is #GST_VIDEO_DITHER_BAYER.
338  */
339 enum VIDEO_CONVERTER_OPT_DITHER_METHOD = "GstVideoConverter.dither-method";
340 alias GST_VIDEO_CONVERTER_OPT_DITHER_METHOD = VIDEO_CONVERTER_OPT_DITHER_METHOD;
341 
342 /**
343  * #G_TYPE_UINT, The quantization amount to dither to. Components will be
344  * quantized to multiples of this value.
345  * Default is 1
346  */
347 enum VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION = "GstVideoConverter.dither-quantization";
348 alias GST_VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION = VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION;
349 
350 /**
351  * #G_TYPE_BOOLEAN, if the destination rectangle does not fill the complete
352  * destination image, render a border with
353  * #GST_VIDEO_CONVERTER_OPT_BORDER_ARGB. Otherwise the unusded pixels in the
354  * destination are untouched. Default %TRUE.
355  */
356 enum VIDEO_CONVERTER_OPT_FILL_BORDER = "GstVideoConverter.fill-border";
357 alias GST_VIDEO_CONVERTER_OPT_FILL_BORDER = VIDEO_CONVERTER_OPT_FILL_BORDER;
358 
359 /**
360  * #GST_TYPE_VIDEO_GAMMA_MODE, set the gamma mode.
361  * Default is #GST_VIDEO_GAMMA_MODE_NONE.
362  */
363 enum VIDEO_CONVERTER_OPT_GAMMA_MODE = "GstVideoConverter.gamma-mode";
364 alias GST_VIDEO_CONVERTER_OPT_GAMMA_MODE = VIDEO_CONVERTER_OPT_GAMMA_MODE;
365 
366 /**
367  * #GST_TYPE_VIDEO_MATRIX_MODE, set the color matrix conversion mode for
368  * converting between Y'PbPr and non-linear RGB (R'G'B').
369  * Default is #GST_VIDEO_MATRIX_MODE_FULL.
370  */
371 enum VIDEO_CONVERTER_OPT_MATRIX_MODE = "GstVideoConverter.matrix-mode";
372 alias GST_VIDEO_CONVERTER_OPT_MATRIX_MODE = VIDEO_CONVERTER_OPT_MATRIX_MODE;
373 
374 /**
375  * #GST_TYPE_VIDEO_PRIMARIES_MODE, set the primaries conversion mode.
376  * Default is #GST_VIDEO_PRIMARIES_MODE_NONE.
377  */
378 enum VIDEO_CONVERTER_OPT_PRIMARIES_MODE = "GstVideoConverter.primaries-mode";
379 alias GST_VIDEO_CONVERTER_OPT_PRIMARIES_MODE = VIDEO_CONVERTER_OPT_PRIMARIES_MODE;
380 
381 /**
382  * #GST_TYPE_RESAMPLER_METHOD, The resampler method to use for
383  * resampling. Other options for the resampler can be used, see
384  * the #GstResampler. Default is #GST_RESAMPLER_METHOD_CUBIC
385  */
386 enum VIDEO_CONVERTER_OPT_RESAMPLER_METHOD = "GstVideoConverter.resampler-method";
387 alias GST_VIDEO_CONVERTER_OPT_RESAMPLER_METHOD = VIDEO_CONVERTER_OPT_RESAMPLER_METHOD;
388 
389 /**
390  * #G_TYPE_UINT, The number of taps for the resampler.
391  * Default is 0: let the resampler choose a good value.
392  */
393 enum VIDEO_CONVERTER_OPT_RESAMPLER_TAPS = "GstVideoConverter.resampler-taps";
394 alias GST_VIDEO_CONVERTER_OPT_RESAMPLER_TAPS = VIDEO_CONVERTER_OPT_RESAMPLER_TAPS;
395 
396 /**
397  * #G_TYPE_INT, source height to convert, default source height
398  */
399 enum VIDEO_CONVERTER_OPT_SRC_HEIGHT = "GstVideoConverter.src-height";
400 alias GST_VIDEO_CONVERTER_OPT_SRC_HEIGHT = VIDEO_CONVERTER_OPT_SRC_HEIGHT;
401 
402 /**
403  * #G_TYPE_INT, source width to convert, default source width
404  */
405 enum VIDEO_CONVERTER_OPT_SRC_WIDTH = "GstVideoConverter.src-width";
406 alias GST_VIDEO_CONVERTER_OPT_SRC_WIDTH = VIDEO_CONVERTER_OPT_SRC_WIDTH;
407 
408 /**
409  * #G_TYPE_INT, source x position to start conversion, default 0
410  */
411 enum VIDEO_CONVERTER_OPT_SRC_X = "GstVideoConverter.src-x";
412 alias GST_VIDEO_CONVERTER_OPT_SRC_X = VIDEO_CONVERTER_OPT_SRC_X;
413 
414 /**
415  * #G_TYPE_INT, source y position to start conversion, default 0
416  */
417 enum VIDEO_CONVERTER_OPT_SRC_Y = "GstVideoConverter.src-y";
418 alias GST_VIDEO_CONVERTER_OPT_SRC_Y = VIDEO_CONVERTER_OPT_SRC_Y;
419 
420 /**
421  * #G_TYPE_UINT, maximum number of threads to use. Default 1, 0 for the number
422  * of cores.
423  */
424 enum VIDEO_CONVERTER_OPT_THREADS = "GstVideoConverter.threads";
425 alias GST_VIDEO_CONVERTER_OPT_THREADS = VIDEO_CONVERTER_OPT_THREADS;
426 
427 /**
428  * Default maximum number of errors tolerated before signaling error.
429  */
430 enum VIDEO_DECODER_MAX_ERRORS = 10;
431 alias GST_VIDEO_DECODER_MAX_ERRORS = VIDEO_DECODER_MAX_ERRORS;
432 
433 /**
434  * The name of the templates for the sink pad.
435  */
436 enum VIDEO_DECODER_SINK_NAME = "sink";
437 alias GST_VIDEO_DECODER_SINK_NAME = VIDEO_DECODER_SINK_NAME;
438 
439 /**
440  * The name of the templates for the source pad.
441  */
442 enum VIDEO_DECODER_SRC_NAME = "src";
443 alias GST_VIDEO_DECODER_SRC_NAME = VIDEO_DECODER_SRC_NAME;
444 
445 /**
446  * The name of the templates for the sink pad.
447  */
448 enum VIDEO_ENCODER_SINK_NAME = "sink";
449 alias GST_VIDEO_ENCODER_SINK_NAME = VIDEO_ENCODER_SINK_NAME;
450 
451 /**
452  * The name of the templates for the source pad.
453  */
454 enum VIDEO_ENCODER_SRC_NAME = "src";
455 alias GST_VIDEO_ENCODER_SRC_NAME = VIDEO_ENCODER_SRC_NAME;
456 
457 enum VIDEO_FORMATS_ALL = "{ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, 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, GBR_12BE, GBR_12LE, GBRA_12BE, GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE, Y444_12BE, Y444_12LE }";
458 alias GST_VIDEO_FORMATS_ALL = VIDEO_FORMATS_ALL;
459 
460 enum VIDEO_FPS_RANGE = "(fraction) [ 0, max ]";
461 alias GST_VIDEO_FPS_RANGE = VIDEO_FPS_RANGE;
462 
463 enum VIDEO_MAX_COMPONENTS = 4;
464 alias GST_VIDEO_MAX_COMPONENTS = VIDEO_MAX_COMPONENTS;
465 
466 enum VIDEO_MAX_PLANES = 4;
467 alias GST_VIDEO_MAX_PLANES = VIDEO_MAX_PLANES;
468 
469 /**
470  * Video formats supported by gst_video_overlay_composition_blend(), for
471  * use in overlay elements' pad template caps.
472  */
473 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 }";
474 alias GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS = VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS;
475 
476 /**
477  * G_TYPE_DOUBLE, B parameter of the cubic filter. The B
478  * parameter controls the bluriness. Values between 0.0 and
479  * 2.0 are accepted. 1/3 is the default.
480  *
481  * Below are some values of popular filters:
482  * B       C
483  * Hermite           0.0     0.0
484  * Spline            1.0     0.0
485  * Catmull-Rom       0.0     1/2
486  * Mitchell          1/3     1/3
487  * Robidoux          0.3782  0.3109
488  * Robidoux
489  * Sharp            0.2620  0.3690
490  * Robidoux
491  * Soft             0.6796  0.1602
492  */
493 enum VIDEO_RESAMPLER_OPT_CUBIC_B = "GstVideoResampler.cubic-b";
494 alias GST_VIDEO_RESAMPLER_OPT_CUBIC_B = VIDEO_RESAMPLER_OPT_CUBIC_B;
495 
496 /**
497  * G_TYPE_DOUBLE, C parameter of the cubic filter. The C
498  * parameter controls the Keys alpha value. Values between 0.0 and
499  * 2.0 are accepted. 1/3 is the default.
500  *
501  * See #GST_VIDEO_RESAMPLER_OPT_CUBIC_B for some more common values
502  */
503 enum VIDEO_RESAMPLER_OPT_CUBIC_C = "GstVideoResampler.cubic-c";
504 alias GST_VIDEO_RESAMPLER_OPT_CUBIC_C = VIDEO_RESAMPLER_OPT_CUBIC_C;
505 
506 /**
507  * G_TYPE_DOUBLE, specifies the size of filter envelope for
508  * @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
509  * 1.0 and 5.0. 2.0 is the default.
510  */
511 enum VIDEO_RESAMPLER_OPT_ENVELOPE = "GstVideoResampler.envelope";
512 alias GST_VIDEO_RESAMPLER_OPT_ENVELOPE = VIDEO_RESAMPLER_OPT_ENVELOPE;
513 
514 /**
515  * G_TYPE_INT, limits the maximum number of taps to use.
516  * 16 is the default.
517  */
518 enum VIDEO_RESAMPLER_OPT_MAX_TAPS = "GstVideoResampler.max-taps";
519 alias GST_VIDEO_RESAMPLER_OPT_MAX_TAPS = VIDEO_RESAMPLER_OPT_MAX_TAPS;
520 
521 /**
522  * G_TYPE_DOUBLE, specifies sharpening of the filter for
523  * @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
524  * 0.0 and 1.0. 0.0 is the default.
525  */
526 enum VIDEO_RESAMPLER_OPT_SHARPEN = "GstVideoResampler.sharpen";
527 alias GST_VIDEO_RESAMPLER_OPT_SHARPEN = VIDEO_RESAMPLER_OPT_SHARPEN;
528 
529 /**
530  * G_TYPE_DOUBLE, specifies sharpness of the filter for
531  * @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
532  * 0.5 and 1.5. 1.0 is the default.
533  */
534 enum VIDEO_RESAMPLER_OPT_SHARPNESS = "GstVideoResampler.sharpness";
535 alias GST_VIDEO_RESAMPLER_OPT_SHARPNESS = VIDEO_RESAMPLER_OPT_SHARPNESS;
536 
537 /**
538  * #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use for propagating
539  * quatization errors.
540  */
541 enum VIDEO_SCALER_OPT_DITHER_METHOD = "GstVideoScaler.dither-method";
542 alias GST_VIDEO_SCALER_OPT_DITHER_METHOD = VIDEO_SCALER_OPT_DITHER_METHOD;
543 
544 enum VIDEO_SIZE_RANGE = "(int) [ 1, max ]";
545 alias GST_VIDEO_SIZE_RANGE = VIDEO_SIZE_RANGE;
546 
547 enum VIDEO_TILE_TYPE_MASK = 0;
548 alias GST_VIDEO_TILE_TYPE_MASK = VIDEO_TILE_TYPE_MASK;
549 
550 enum VIDEO_TILE_TYPE_SHIFT = 16;
551 alias GST_VIDEO_TILE_TYPE_SHIFT = VIDEO_TILE_TYPE_SHIFT;
552 
553 enum VIDEO_TILE_X_TILES_MASK = 0;
554 alias GST_VIDEO_TILE_X_TILES_MASK = VIDEO_TILE_X_TILES_MASK;
555 
556 enum VIDEO_TILE_Y_TILES_SHIFT = 16;
557 alias GST_VIDEO_TILE_Y_TILES_SHIFT = VIDEO_TILE_Y_TILES_SHIFT;