{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}


-- | Copyright  : Will Thompson and Iñaki García Etxebarria
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.GstVideo.Constants
    ( 
    pattern VIDEO_TILE_Y_TILES_SHIFT        ,
    pattern VIDEO_TILE_X_TILES_MASK         ,
    pattern VIDEO_TILE_TYPE_SHIFT           ,
    pattern VIDEO_TILE_TYPE_MASK            ,
    pattern VIDEO_SIZE_RANGE                ,
    pattern VIDEO_SCALER_OPT_DITHER_METHOD  ,
    pattern VIDEO_RESAMPLER_OPT_SHARPNESS   ,
    pattern VIDEO_RESAMPLER_OPT_SHARPEN     ,
    pattern VIDEO_RESAMPLER_OPT_MAX_TAPS    ,
    pattern VIDEO_RESAMPLER_OPT_ENVELOPE    ,
    pattern VIDEO_RESAMPLER_OPT_CUBIC_C     ,
    pattern VIDEO_RESAMPLER_OPT_CUBIC_B     ,
    pattern VIDEO_MAX_PLANES                ,
    pattern VIDEO_MAX_COMPONENTS            ,
    pattern VIDEO_FPS_RANGE                 ,
    pattern VIDEO_FORMATS_ALL               ,
    pattern VIDEO_ENCODER_SRC_NAME          ,
    pattern VIDEO_ENCODER_SINK_NAME         ,
    pattern VIDEO_DECODER_SRC_NAME          ,
    pattern VIDEO_DECODER_SINK_NAME         ,
    pattern VIDEO_DECODER_MAX_ERRORS        ,
    pattern VIDEO_CONVERTER_OPT_THREADS     ,
    pattern VIDEO_CONVERTER_OPT_SRC_Y       ,
    pattern VIDEO_CONVERTER_OPT_SRC_X       ,
    pattern VIDEO_CONVERTER_OPT_SRC_WIDTH   ,
    pattern VIDEO_CONVERTER_OPT_SRC_HEIGHT  ,
    pattern VIDEO_CONVERTER_OPT_RESAMPLER_TAPS,
    pattern VIDEO_CONVERTER_OPT_RESAMPLER_METHOD,
    pattern VIDEO_CONVERTER_OPT_PRIMARIES_MODE,
    pattern VIDEO_CONVERTER_OPT_MATRIX_MODE ,
    pattern VIDEO_CONVERTER_OPT_GAMMA_MODE  ,
    pattern VIDEO_CONVERTER_OPT_FILL_BORDER ,
    pattern VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION,
    pattern VIDEO_CONVERTER_OPT_DITHER_METHOD,
    pattern VIDEO_CONVERTER_OPT_DEST_Y      ,
    pattern VIDEO_CONVERTER_OPT_DEST_X      ,
    pattern VIDEO_CONVERTER_OPT_DEST_WIDTH  ,
    pattern VIDEO_CONVERTER_OPT_DEST_HEIGHT ,
    pattern VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD,
    pattern VIDEO_CONVERTER_OPT_CHROMA_MODE ,
    pattern VIDEO_CONVERTER_OPT_BORDER_ARGB ,
    pattern VIDEO_CONVERTER_OPT_ASYNC_TASKS ,
    pattern VIDEO_CONVERTER_OPT_ALPHA_VALUE ,
    pattern VIDEO_CONVERTER_OPT_ALPHA_MODE  ,
    pattern VIDEO_COMP_Y                    ,
    pattern VIDEO_COMP_V                    ,
    pattern VIDEO_COMP_U                    ,
    pattern VIDEO_COMP_R                    ,
    pattern VIDEO_COMP_PALETTE              ,
    pattern VIDEO_COMP_INDEX                ,
    pattern VIDEO_COMP_G                    ,
    pattern VIDEO_COMP_B                    ,
    pattern VIDEO_COMP_A                    ,
    pattern VIDEO_COLORIMETRY_SRGB          ,
    pattern VIDEO_COLORIMETRY_SMPTE240M     ,
    pattern VIDEO_COLORIMETRY_BT709         ,
    pattern VIDEO_COLORIMETRY_BT601         ,
    pattern VIDEO_COLORIMETRY_BT2100_PQ     ,
    pattern VIDEO_COLORIMETRY_BT2100_HLG    ,
    pattern VIDEO_COLORIMETRY_BT2020_10     ,
    pattern VIDEO_COLORIMETRY_BT2020        ,
    pattern META_TAG_VIDEO_STR              ,
    pattern META_TAG_VIDEO_SIZE_STR         ,
    pattern META_TAG_VIDEO_ORIENTATION_STR  ,
    pattern META_TAG_VIDEO_COLORSPACE_STR   ,
    pattern CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION,
    pattern CAPS_FEATURE_META_GST_VIDEO_META,
    pattern CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META,
    pattern CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META,
    pattern CAPS_FEATURE_FORMAT_INTERLACED  ,
    pattern BUFFER_POOL_OPTION_VIDEO_META   ,
    pattern BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META,
    pattern BUFFER_POOL_OPTION_VIDEO_ALIGNMENT,
    pattern BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META,

    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R


-- | /No description available in the introspection data./
pattern $bVIDEO_TILE_Y_TILES_SHIFT :: Int32
$mVIDEO_TILE_Y_TILES_SHIFT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_TILE_Y_TILES_SHIFT = 16 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_TILE_X_TILES_MASK :: Int32
$mVIDEO_TILE_X_TILES_MASK :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_TILE_X_TILES_MASK = 65535 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_TILE_TYPE_SHIFT :: Int32
$mVIDEO_TILE_TYPE_SHIFT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_TILE_TYPE_SHIFT = 16 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_TILE_TYPE_MASK :: Int32
$mVIDEO_TILE_TYPE_MASK :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_TILE_TYPE_MASK = 65535 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_SIZE_RANGE :: Text
$mVIDEO_SIZE_RANGE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_SIZE_RANGE = "(int) [ 1, max ]" :: T.Text

-- | t'GI.GstVideo.Enums.VideoDitherMethod', The dither method to use for propagating
-- quatization errors.
pattern $bVIDEO_SCALER_OPT_DITHER_METHOD :: Text
$mVIDEO_SCALER_OPT_DITHER_METHOD :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_SCALER_OPT_DITHER_METHOD = "GstVideoScaler.dither-method" :: T.Text

-- | G_TYPE_DOUBLE, specifies sharpness of the filter for
-- /@gSTVIDEORESAMPLERMETHODLANCZOS@/. values are clamped between
-- 0.5 and 1.5. 1.0 is the default.
pattern $bVIDEO_RESAMPLER_OPT_SHARPNESS :: Text
$mVIDEO_RESAMPLER_OPT_SHARPNESS :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_RESAMPLER_OPT_SHARPNESS = "GstVideoResampler.sharpness" :: T.Text

-- | G_TYPE_DOUBLE, specifies sharpening of the filter for
-- /@gSTVIDEORESAMPLERMETHODLANCZOS@/. values are clamped between
-- 0.0 and 1.0. 0.0 is the default.
pattern $bVIDEO_RESAMPLER_OPT_SHARPEN :: Text
$mVIDEO_RESAMPLER_OPT_SHARPEN :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_RESAMPLER_OPT_SHARPEN = "GstVideoResampler.sharpen" :: T.Text

-- | G_TYPE_INT, limits the maximum number of taps to use.
-- 16 is the default.
pattern $bVIDEO_RESAMPLER_OPT_MAX_TAPS :: Text
$mVIDEO_RESAMPLER_OPT_MAX_TAPS :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_RESAMPLER_OPT_MAX_TAPS = "GstVideoResampler.max-taps" :: T.Text

-- | G_TYPE_DOUBLE, specifies the size of filter envelope for
-- /@gSTVIDEORESAMPLERMETHODLANCZOS@/. values are clamped between
-- 1.0 and 5.0. 2.0 is the default.
pattern $bVIDEO_RESAMPLER_OPT_ENVELOPE :: Text
$mVIDEO_RESAMPLER_OPT_ENVELOPE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_RESAMPLER_OPT_ENVELOPE = "GstVideoResampler.envelope" :: T.Text

-- | G_TYPE_DOUBLE, C parameter of the cubic filter. The C
-- parameter controls the Keys alpha value. Values between 0.0 and
-- 2.0 are accepted. 1\/3 is the default.
-- 
-- See 'GI.GstVideo.Constants.VIDEO_RESAMPLER_OPT_CUBIC_B' for some more common values
pattern $bVIDEO_RESAMPLER_OPT_CUBIC_C :: Text
$mVIDEO_RESAMPLER_OPT_CUBIC_C :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_RESAMPLER_OPT_CUBIC_C = "GstVideoResampler.cubic-c" :: T.Text

-- | G_TYPE_DOUBLE, B parameter of the cubic filter. The B
-- parameter controls the bluriness. Values between 0.0 and
-- 2.0 are accepted. 1\/3 is the default.
-- 
-- Below are some values of popular filters:
--                    B       C
-- Hermite           0.0     0.0
-- Spline            1.0     0.0
-- Catmull-Rom       0.0     1\/2
-- Mitchell          1\/3     1\/3
-- Robidoux          0.3782  0.3109
-- Robidoux
--  Sharp            0.2620  0.3690
-- Robidoux
--  Soft             0.6796  0.1602
pattern $bVIDEO_RESAMPLER_OPT_CUBIC_B :: Text
$mVIDEO_RESAMPLER_OPT_CUBIC_B :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_RESAMPLER_OPT_CUBIC_B = "GstVideoResampler.cubic-b" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_MAX_PLANES :: Int32
$mVIDEO_MAX_PLANES :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_MAX_PLANES = 4 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_MAX_COMPONENTS :: Int32
$mVIDEO_MAX_COMPONENTS :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_MAX_COMPONENTS = 4 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_FPS_RANGE :: Text
$mVIDEO_FPS_RANGE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_FPS_RANGE = "(fraction) [ 0, max ]" :: T.Text

-- | List of all video formats, for use in template caps strings.
-- 
-- Formats are sorted by decreasing \"quality\", using these criteria by priority:
--   - number of components
--   - depth
--   - subsampling factor of the width
--   - subsampling factor of the height
--   - number of planes
--   - native endianness preferred
--   - pixel stride
--   - poffset
--   - prefer non-complex formats
--   - prefer YUV formats over RGB ones
--   - prefer I420 over YV12
--   - format name
pattern $bVIDEO_FORMATS_ALL :: Text
$mVIDEO_FORMATS_ALL :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_FORMATS_ALL = "{ AYUV64, ARGB64, GBRA_12BE, GBRA_12LE, Y412_BE, Y412_LE, A444_10BE, GBRA_10BE, A444_10LE, GBRA_10LE, A422_10BE, A422_10LE, A420_10BE, A420_10LE, Y410, RGB10A2_LE, BGR10A2_LE, GBRA, ABGR, VUYA, BGRA, AYUV, ARGB, RGBA, A420, AV12, Y444_16BE, Y444_16LE, v216, P016_BE, P016_LE, Y444_12BE, GBR_12BE, Y444_12LE, GBR_12LE, I422_12BE, I422_12LE, Y212_BE, Y212_LE, I420_12BE, I420_12LE, P012_BE, P012_LE, Y444_10BE, GBR_10BE, Y444_10LE, GBR_10LE, r210, I422_10BE, I422_10LE, NV16_10LE32, Y210, v210, UYVP, I420_10BE, I420_10LE, P010_10BE, P010_10LE, NV12_10LE32, NV12_10LE40, Y444, RGBP, GBR, BGRP, NV24, xBGR, BGRx, xRGB, RGBx, BGR, IYU2, v308, RGB, Y42B, NV61, NV16, VYUY, UYVY, YVYU, YUY2, I420, YV12, NV21, NV12, NV12_64Z32, NV12_4L4, NV12_32L32, Y41B, IYU1, YVU9, YUV9, RGB16, BGR16, RGB15, BGR15, RGB8P, GRAY16_BE, GRAY16_LE, GRAY10_LE32, GRAY8 }" :: T.Text

-- | The name of the templates for the source pad.
pattern $bVIDEO_ENCODER_SRC_NAME :: Text
$mVIDEO_ENCODER_SRC_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_ENCODER_SRC_NAME = "src" :: T.Text

-- | The name of the templates for the sink pad.
pattern $bVIDEO_ENCODER_SINK_NAME :: Text
$mVIDEO_ENCODER_SINK_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_ENCODER_SINK_NAME = "sink" :: T.Text

-- | The name of the templates for the source pad.
pattern $bVIDEO_DECODER_SRC_NAME :: Text
$mVIDEO_DECODER_SRC_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_DECODER_SRC_NAME = "src" :: T.Text

-- | The name of the templates for the sink pad.
pattern $bVIDEO_DECODER_SINK_NAME :: Text
$mVIDEO_DECODER_SINK_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_DECODER_SINK_NAME = "sink" :: T.Text

-- | Default maximum number of errors tolerated before signaling error.
pattern $bVIDEO_DECODER_MAX_ERRORS :: Int32
$mVIDEO_DECODER_MAX_ERRORS :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_DECODER_MAX_ERRORS = 10 :: Int32

-- | @/G_TYPE_UINT/@, maximum number of threads to use. Default 1, 0 for the number
-- of cores.
pattern $bVIDEO_CONVERTER_OPT_THREADS :: Text
$mVIDEO_CONVERTER_OPT_THREADS :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_THREADS = "GstVideoConverter.threads" :: T.Text

-- | @/G_TYPE_INT/@, source y position to start conversion, default 0
pattern $bVIDEO_CONVERTER_OPT_SRC_Y :: Text
$mVIDEO_CONVERTER_OPT_SRC_Y :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_SRC_Y = "GstVideoConverter.src-y" :: T.Text

-- | @/G_TYPE_INT/@, source x position to start conversion, default 0
pattern $bVIDEO_CONVERTER_OPT_SRC_X :: Text
$mVIDEO_CONVERTER_OPT_SRC_X :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_SRC_X = "GstVideoConverter.src-x" :: T.Text

-- | @/G_TYPE_INT/@, source width to convert, default source width
pattern $bVIDEO_CONVERTER_OPT_SRC_WIDTH :: Text
$mVIDEO_CONVERTER_OPT_SRC_WIDTH :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_SRC_WIDTH = "GstVideoConverter.src-width" :: T.Text

-- | @/G_TYPE_INT/@, source height to convert, default source height
pattern $bVIDEO_CONVERTER_OPT_SRC_HEIGHT :: Text
$mVIDEO_CONVERTER_OPT_SRC_HEIGHT :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_SRC_HEIGHT = "GstVideoConverter.src-height" :: T.Text

-- | @/G_TYPE_UINT/@, The number of taps for the resampler.
-- Default is 0: let the resampler choose a good value.
pattern $bVIDEO_CONVERTER_OPT_RESAMPLER_TAPS :: Text
$mVIDEO_CONVERTER_OPT_RESAMPLER_TAPS :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_RESAMPLER_TAPS = "GstVideoConverter.resampler-taps" :: T.Text

-- | t'GI.GstVideo.Enums.VideoResamplerMethod', The resampler method to use for
-- resampling. Other options for the resampler can be used, see
-- the t'GI.GstVideo.Structs.VideoResampler.VideoResampler'. Default is @/GST_VIDEO_RESAMPLER_METHOD_CUBIC/@
pattern $bVIDEO_CONVERTER_OPT_RESAMPLER_METHOD :: Text
$mVIDEO_CONVERTER_OPT_RESAMPLER_METHOD :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_RESAMPLER_METHOD = "GstVideoConverter.resampler-method" :: T.Text

-- | t'GI.GstVideo.Enums.VideoPrimariesMode', set the primaries conversion mode.
-- Default is @/GST_VIDEO_PRIMARIES_MODE_NONE/@.
pattern $bVIDEO_CONVERTER_OPT_PRIMARIES_MODE :: Text
$mVIDEO_CONVERTER_OPT_PRIMARIES_MODE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_PRIMARIES_MODE = "GstVideoConverter.primaries-mode" :: T.Text

-- | t'GI.GstVideo.Enums.VideoMatrixMode', set the color matrix conversion mode for
-- converting between Y\'PbPr and non-linear RGB (R\'G\'B\').
-- Default is @/GST_VIDEO_MATRIX_MODE_FULL/@.
pattern $bVIDEO_CONVERTER_OPT_MATRIX_MODE :: Text
$mVIDEO_CONVERTER_OPT_MATRIX_MODE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_MATRIX_MODE = "GstVideoConverter.matrix-mode" :: T.Text

-- | t'GI.GstVideo.Enums.VideoGammaMode', set the gamma mode.
-- Default is @/GST_VIDEO_GAMMA_MODE_NONE/@.
pattern $bVIDEO_CONVERTER_OPT_GAMMA_MODE :: Text
$mVIDEO_CONVERTER_OPT_GAMMA_MODE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_GAMMA_MODE = "GstVideoConverter.gamma-mode" :: T.Text

-- | @/G_TYPE_BOOLEAN/@, if the destination rectangle does not fill the complete
-- destination image, render a border with
-- 'GI.GstVideo.Constants.VIDEO_CONVERTER_OPT_BORDER_ARGB'. Otherwise the unusded pixels in the
-- destination are untouched. Default 'P.True'.
pattern $bVIDEO_CONVERTER_OPT_FILL_BORDER :: Text
$mVIDEO_CONVERTER_OPT_FILL_BORDER :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_FILL_BORDER = "GstVideoConverter.fill-border" :: T.Text

-- | @/G_TYPE_UINT/@, The quantization amount to dither to. Components will be
-- quantized to multiples of this value.
-- Default is 1
pattern $bVIDEO_CONVERTER_OPT_DITHER_QUANTIZATION :: Text
$mVIDEO_CONVERTER_OPT_DITHER_QUANTIZATION :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION = "GstVideoConverter.dither-quantization" :: T.Text

-- | t'GI.GstVideo.Enums.VideoDitherMethod', The dither method to use when
-- changing bit depth.
-- Default is @/GST_VIDEO_DITHER_BAYER/@.
pattern $bVIDEO_CONVERTER_OPT_DITHER_METHOD :: Text
$mVIDEO_CONVERTER_OPT_DITHER_METHOD :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_DITHER_METHOD = "GstVideoConverter.dither-method" :: T.Text

-- | @/G_TYPE_INT/@, y position in the destination frame, default 0
pattern $bVIDEO_CONVERTER_OPT_DEST_Y :: Text
$mVIDEO_CONVERTER_OPT_DEST_Y :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_DEST_Y = "GstVideoConverter.dest-y" :: T.Text

-- | @/G_TYPE_INT/@, x position in the destination frame, default 0
pattern $bVIDEO_CONVERTER_OPT_DEST_X :: Text
$mVIDEO_CONVERTER_OPT_DEST_X :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_DEST_X = "GstVideoConverter.dest-x" :: T.Text

-- | @/G_TYPE_INT/@, width in the destination frame, default destination width
pattern $bVIDEO_CONVERTER_OPT_DEST_WIDTH :: Text
$mVIDEO_CONVERTER_OPT_DEST_WIDTH :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_DEST_WIDTH = "GstVideoConverter.dest-width" :: T.Text

-- | @/G_TYPE_INT/@, height in the destination frame, default destination height
pattern $bVIDEO_CONVERTER_OPT_DEST_HEIGHT :: Text
$mVIDEO_CONVERTER_OPT_DEST_HEIGHT :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_DEST_HEIGHT = "GstVideoConverter.dest-height" :: T.Text

-- | t'GI.GstVideo.Enums.VideoChromaMethod', The resampler method to use for
-- chroma resampling. Other options for the resampler can be used, see
-- the t'GI.GstVideo.Structs.VideoResampler.VideoResampler'. Default is @/GST_VIDEO_RESAMPLER_METHOD_LINEAR/@
pattern $bVIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD :: Text
$mVIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD = "GstVideoConverter.chroma-resampler-method" :: T.Text

-- | t'GI.GstVideo.Enums.VideoChromaMode', set the chroma resample mode subsampled
-- formats. Default is @/GST_VIDEO_CHROMA_MODE_FULL/@.
pattern $bVIDEO_CONVERTER_OPT_CHROMA_MODE :: Text
$mVIDEO_CONVERTER_OPT_CHROMA_MODE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_CHROMA_MODE = "GstVideoConverter.chroma-mode" :: T.Text

-- | @/G_TYPE_UINT/@, the border color to use if 'GI.GstVideo.Constants.VIDEO_CONVERTER_OPT_FILL_BORDER'
-- is set to 'P.True'. The color is in ARGB format.
-- Default 0xff000000
pattern $bVIDEO_CONVERTER_OPT_BORDER_ARGB :: Text
$mVIDEO_CONVERTER_OPT_BORDER_ARGB :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_BORDER_ARGB = "GstVideoConverter.border-argb" :: T.Text

-- | @/G_TYPE_BOOLEAN/@, whether 'GI.GstVideo.Structs.VideoConverter.videoConverterFrame' will return immediately
-- without waiting for the conversion to complete.  A subsequent
-- 'GI.GstVideo.Structs.VideoConverter.videoConverterFrameFinish' must be performed to ensure completion of the
-- conversion before subsequent use.  Default 'P.False'
-- 
-- /Since: 1.20/
pattern $bVIDEO_CONVERTER_OPT_ASYNC_TASKS :: Text
$mVIDEO_CONVERTER_OPT_ASYNC_TASKS :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_ASYNC_TASKS = "GstVideoConverter.async-tasks" :: T.Text

-- | @/G_TYPE_DOUBLE/@, the alpha color value to use.
-- Default to 1.0
pattern $bVIDEO_CONVERTER_OPT_ALPHA_VALUE :: Text
$mVIDEO_CONVERTER_OPT_ALPHA_VALUE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_ALPHA_VALUE = "GstVideoConverter.alpha-value" :: T.Text

-- | t'GI.GstVideo.Enums.VideoAlphaMode', the alpha mode to use.
-- Default is @/GST_VIDEO_ALPHA_MODE_COPY/@.
pattern $bVIDEO_CONVERTER_OPT_ALPHA_MODE :: Text
$mVIDEO_CONVERTER_OPT_ALPHA_MODE :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_CONVERTER_OPT_ALPHA_MODE = "GstVideoConverter.alpha-mode" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_Y :: Int32
$mVIDEO_COMP_Y :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_Y = 0 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_V :: Int32
$mVIDEO_COMP_V :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_V = 2 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_U :: Int32
$mVIDEO_COMP_U :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_U = 1 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_R :: Int32
$mVIDEO_COMP_R :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_R = 0 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_PALETTE :: Int32
$mVIDEO_COMP_PALETTE :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_PALETTE = 1 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_INDEX :: Int32
$mVIDEO_COMP_INDEX :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_INDEX = 0 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_G :: Int32
$mVIDEO_COMP_G :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_G = 1 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_B :: Int32
$mVIDEO_COMP_B :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_B = 2 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COMP_A :: Int32
$mVIDEO_COMP_A :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COMP_A = 3 :: Int32

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_SRGB :: Text
$mVIDEO_COLORIMETRY_SRGB :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_SRGB = "sRGB" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_SMPTE240M :: Text
$mVIDEO_COLORIMETRY_SMPTE240M :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_SMPTE240M = "smpte240m" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_BT709 :: Text
$mVIDEO_COLORIMETRY_BT709 :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_BT709 = "bt709" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_BT601 :: Text
$mVIDEO_COLORIMETRY_BT601 :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_BT601 = "bt601" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_BT2100_PQ :: Text
$mVIDEO_COLORIMETRY_BT2100_PQ :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_BT2100_PQ = "bt2100-pq" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_BT2100_HLG :: Text
$mVIDEO_COLORIMETRY_BT2100_HLG :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_BT2100_HLG = "bt2100-hlg" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_BT2020_10 :: Text
$mVIDEO_COLORIMETRY_BT2020_10 :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_BT2020_10 = "bt2020-10" :: T.Text

-- | /No description available in the introspection data./
pattern $bVIDEO_COLORIMETRY_BT2020 :: Text
$mVIDEO_COLORIMETRY_BT2020 :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
VIDEO_COLORIMETRY_BT2020 = "bt2020" :: T.Text

-- | This metadata is relevant for video streams.
-- 
-- /Since: 1.2/
pattern $bMETA_TAG_VIDEO_STR :: Text
$mMETA_TAG_VIDEO_STR :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_TAG_VIDEO_STR = "video" :: T.Text

-- | This metadata stays relevant as long as video size is unchanged.
-- 
-- /Since: 1.2/
pattern $bMETA_TAG_VIDEO_SIZE_STR :: Text
$mMETA_TAG_VIDEO_SIZE_STR :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_TAG_VIDEO_SIZE_STR = "size" :: T.Text

-- | This metadata stays relevant as long as video orientation is unchanged.
-- 
-- /Since: 1.2/
pattern $bMETA_TAG_VIDEO_ORIENTATION_STR :: Text
$mMETA_TAG_VIDEO_ORIENTATION_STR :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_TAG_VIDEO_ORIENTATION_STR = "orientation" :: T.Text

-- | This metadata stays relevant as long as video colorspace is unchanged.
-- 
-- /Since: 1.2/
pattern $bMETA_TAG_VIDEO_COLORSPACE_STR :: Text
$mMETA_TAG_VIDEO_COLORSPACE_STR :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_TAG_VIDEO_COLORSPACE_STR = "colorspace" :: T.Text

-- | /No description available in the introspection data./
pattern $bCAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION :: Text
$mCAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION = "meta:GstVideoOverlayComposition" :: T.Text

-- | /No description available in the introspection data./
pattern $bCAPS_FEATURE_META_GST_VIDEO_META :: Text
$mCAPS_FEATURE_META_GST_VIDEO_META :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
CAPS_FEATURE_META_GST_VIDEO_META = "meta:GstVideoMeta" :: T.Text

-- | /No description available in the introspection data./
pattern $bCAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META :: Text
$mCAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META = "meta:GstVideoGLTextureUploadMeta" :: T.Text

-- | /No description available in the introspection data./
pattern $bCAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META :: Text
$mCAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META = "meta:GstVideoAffineTransformation" :: T.Text

-- | Name of the caps feature indicating that the stream is interlaced.
-- 
-- Currently it is only used for video with \'interlace-mode=alternate\'
-- to ensure backwards compatibility for this new mode.
-- In this mode each buffer carries a single field of interlaced video.
-- /@gSTVIDEOBUFFERFLAGTOPFIELD@/ and /@gSTVIDEOBUFFERFLAGBOTTOMFIELD@/
-- indicate whether the buffer carries a top or bottom field. The order of
-- buffers\/fields in the stream and the timestamps on the buffers indicate the
-- temporal order of the fields.
-- Top and bottom fields are expected to alternate in this mode.
-- The frame rate in the caps still signals the frame rate, so the notional field
-- rate will be twice the frame rate from the caps
-- (see /@gSTVIDEOINFOFIELDRATEN@/).
-- 
-- /Since: 1.16./
pattern $bCAPS_FEATURE_FORMAT_INTERLACED :: Text
$mCAPS_FEATURE_FORMAT_INTERLACED :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
CAPS_FEATURE_FORMAT_INTERLACED = "format:Interlaced" :: T.Text

-- | An option that can be activated on bufferpool to request video metadata
-- on buffers from the pool.
pattern $bBUFFER_POOL_OPTION_VIDEO_META :: Text
$mBUFFER_POOL_OPTION_VIDEO_META :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
BUFFER_POOL_OPTION_VIDEO_META = "GstBufferPoolOptionVideoMeta" :: T.Text

-- | An option that can be activated on a bufferpool to request gl texture upload
-- meta on buffers from the pool.
-- 
-- When this option is enabled on the bufferpool,
-- /@gSTBUFFERPOOLOPTIONVIDEOMETA@/ should also be enabled.
-- 
-- /Since: 1.2.2/
pattern $bBUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META :: Text
$mBUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META = "GstBufferPoolOptionVideoGLTextureUploadMeta" :: T.Text

-- | A bufferpool option to enable extra padding. When a bufferpool supports this
-- option, 'GI.GstVideo.Functions.bufferPoolConfigSetVideoAlignment' can be called.
-- 
-- When this option is enabled on the bufferpool,
-- 'GI.GstVideo.Constants.BUFFER_POOL_OPTION_VIDEO_META' should also be enabled.
pattern $bBUFFER_POOL_OPTION_VIDEO_ALIGNMENT :: Text
$mBUFFER_POOL_OPTION_VIDEO_ALIGNMENT :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
BUFFER_POOL_OPTION_VIDEO_ALIGNMENT = "GstBufferPoolOptionVideoAlignment" :: T.Text

-- | /No description available in the introspection data./
pattern $bBUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META :: Text
$mBUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META = "GstBufferPoolOptionVideoAffineTransformation" :: T.Text