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