diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+### 1.0.19
+
++ List autogenerated modules in .cabal file
+
 ### 1.0.18
 
 + Update to haskell-gi(-base) 0.22
diff --git a/GI/GstVideo.hs b/GI/GstVideo.hs
deleted file mode 100644
--- a/GI/GstVideo.hs
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo
-    (     module GI.GstVideo.Callbacks            ,
-    module GI.GstVideo.Constants            ,
-    module GI.GstVideo.Enums                ,
-    module GI.GstVideo.Flags                ,
-    module GI.GstVideo.Functions            ,
-    module GI.GstVideo.Interfaces           ,
-    module GI.GstVideo.Objects              ,
-    module GI.GstVideo.Structs              ,
-
-
-
-    module Data.GI.Base                     ,
-
-
-    ) where
-
-import GI.GstVideo.Callbacks
-import GI.GstVideo.Constants
-import GI.GstVideo.Enums
-import GI.GstVideo.Flags
-import GI.GstVideo.Functions
-import GI.GstVideo.Interfaces
-import GI.GstVideo.Objects
-import GI.GstVideo.Structs
-
-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.ManagedPtr as B.ManagedPtr
-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.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 Data.GI.Base
-
diff --git a/GI/GstVideo/Callbacks.hs b/GI/GstVideo/Callbacks.hs
deleted file mode 100644
--- a/GI/GstVideo/Callbacks.hs
+++ /dev/null
@@ -1,736 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Callbacks
-    ( 
-
- -- * Signals
--- ** VideoAffineTransformationGetMatrix #signal:VideoAffineTransformationGetMatrix#
-
-    C_VideoAffineTransformationGetMatrix    ,
-    VideoAffineTransformationGetMatrix      ,
-    dynamic_VideoAffineTransformationGetMatrix,
-    genClosure_VideoAffineTransformationGetMatrix,
-    mk_VideoAffineTransformationGetMatrix   ,
-    noVideoAffineTransformationGetMatrix    ,
-    wrap_VideoAffineTransformationGetMatrix ,
-
-
--- ** VideoConvertSampleCallback #signal:VideoConvertSampleCallback#
-
-    C_VideoConvertSampleCallback            ,
-    VideoConvertSampleCallback              ,
-    VideoConvertSampleCallback_WithClosures ,
-    drop_closures_VideoConvertSampleCallback,
-    dynamic_VideoConvertSampleCallback      ,
-    genClosure_VideoConvertSampleCallback   ,
-    mk_VideoConvertSampleCallback           ,
-    noVideoConvertSampleCallback            ,
-    noVideoConvertSampleCallback_WithClosures,
-    wrap_VideoConvertSampleCallback         ,
-
-
--- ** VideoFormatPack #signal:VideoFormatPack#
-
-    C_VideoFormatPack                       ,
-    VideoFormatPack                         ,
-    dynamic_VideoFormatPack                 ,
-    genClosure_VideoFormatPack              ,
-    mk_VideoFormatPack                      ,
-    noVideoFormatPack                       ,
-    wrap_VideoFormatPack                    ,
-
-
--- ** VideoFormatUnpack #signal:VideoFormatUnpack#
-
-    C_VideoFormatUnpack                     ,
-    VideoFormatUnpack                       ,
-    dynamic_VideoFormatUnpack               ,
-    genClosure_VideoFormatUnpack            ,
-    mk_VideoFormatUnpack                    ,
-    noVideoFormatUnpack                     ,
-    wrap_VideoFormatUnpack                  ,
-
-
--- ** VideoGLTextureUpload #signal:VideoGLTextureUpload#
-
-    C_VideoGLTextureUpload                  ,
-    VideoGLTextureUpload                    ,
-    dynamic_VideoGLTextureUpload            ,
-    genClosure_VideoGLTextureUpload         ,
-    mk_VideoGLTextureUpload                 ,
-    noVideoGLTextureUpload                  ,
-    wrap_VideoGLTextureUpload               ,
-
-
--- ** VideoMetaMapFieldCallback #signal:VideoMetaMapFieldCallback#
-
-    C_VideoMetaMapFieldCallback             ,
-    VideoMetaMapFieldCallback               ,
-    dynamic_VideoMetaMapFieldCallback       ,
-    genClosure_VideoMetaMapFieldCallback    ,
-    mk_VideoMetaMapFieldCallback            ,
-    noVideoMetaMapFieldCallback             ,
-    wrap_VideoMetaMapFieldCallback          ,
-
-
--- ** VideoMetaUnmapFieldCallback #signal:VideoMetaUnmapFieldCallback#
-
-    C_VideoMetaUnmapFieldCallback           ,
-    VideoMetaUnmapFieldCallback             ,
-    dynamic_VideoMetaUnmapFieldCallback     ,
-    genClosure_VideoMetaUnmapFieldCallback  ,
-    mk_VideoMetaUnmapFieldCallback          ,
-    noVideoMetaUnmapFieldCallback           ,
-    wrap_VideoMetaUnmapFieldCallback        ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Flags as Gst.Flags
-import qualified GI.Gst.Structs.MapInfo as Gst.MapInfo
-import qualified GI.Gst.Structs.Sample as Gst.Sample
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoAffineTransformationMeta as GstVideo.VideoAffineTransformationMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoFormatInfo as GstVideo.VideoFormatInfo
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoGLTextureUploadMeta as GstVideo.VideoGLTextureUploadMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoMeta as GstVideo.VideoMeta
-
--- callback VideoMetaUnmapFieldCallback
---          -> Callable {returnType = Just (TBasicType TBoolean), returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "Gst", name = "MapInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoMetaUnmapFieldCallback =
-    Ptr GstVideo.VideoMeta.VideoMeta ->
-    Word32 ->
-    Ptr Gst.MapInfo.MapInfo ->
-    IO CInt
-
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "Gst", name = "MapInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoMetaUnmapFieldCallback :: FunPtr C_VideoMetaUnmapFieldCallback -> C_VideoMetaUnmapFieldCallback
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoMetaUnmapFieldCallback ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoMetaUnmapFieldCallback
-    -> GstVideo.VideoMeta.VideoMeta
-    -> Word32
-    -> Gst.MapInfo.MapInfo
-    -> m Bool
-dynamic_VideoMetaUnmapFieldCallback __funPtr meta plane info = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    info' <- unsafeManagedPtrGetPtr info
-    result <- (__dynamic_C_VideoMetaUnmapFieldCallback __funPtr) meta' plane info'
-    let result' = (/= 0) result
-    touchManagedPtr meta
-    touchManagedPtr info
-    return result'
-
--- | Generate a function pointer callable from C code, from a `C_VideoMetaUnmapFieldCallback`.
-foreign import ccall "wrapper"
-    mk_VideoMetaUnmapFieldCallback :: C_VideoMetaUnmapFieldCallback -> IO (FunPtr C_VideoMetaUnmapFieldCallback)
-
-{- |
-/No description available in the introspection data./
--}
-type VideoMetaUnmapFieldCallback =
-    GstVideo.VideoMeta.VideoMeta
-    -> Word32
-    -> Gst.MapInfo.MapInfo
-    -> IO Bool
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoMetaUnmapFieldCallback`@.
-noVideoMetaUnmapFieldCallback :: Maybe VideoMetaUnmapFieldCallback
-noVideoMetaUnmapFieldCallback = Nothing
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoMetaUnmapFieldCallback :: MonadIO m => VideoMetaUnmapFieldCallback -> m (GClosure C_VideoMetaUnmapFieldCallback)
-genClosure_VideoMetaUnmapFieldCallback cb = liftIO $ do
-    let cb' = wrap_VideoMetaUnmapFieldCallback Nothing cb
-    mk_VideoMetaUnmapFieldCallback cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoMetaUnmapFieldCallback` into a `C_VideoMetaUnmapFieldCallback`.
-wrap_VideoMetaUnmapFieldCallback ::
-    Maybe (Ptr (FunPtr C_VideoMetaUnmapFieldCallback)) ->
-    VideoMetaUnmapFieldCallback ->
-    C_VideoMetaUnmapFieldCallback
-wrap_VideoMetaUnmapFieldCallback funptrptr _cb meta plane info = do
-    meta' <- (newPtr GstVideo.VideoMeta.VideoMeta) meta
-    info' <- (newPtr Gst.MapInfo.MapInfo) info
-    result <- _cb  meta' plane info'
-    maybeReleaseFunPtr funptrptr
-    let result' = (fromIntegral . fromEnum) result
-    return result'
-
-
--- callback VideoMetaMapFieldCallback
---          -> Callable {returnType = Just (TBasicType TBoolean), returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "Gst", name = "MapInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "Gst", name = "MapFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoMetaMapFieldCallback =
-    Ptr GstVideo.VideoMeta.VideoMeta ->
-    Word32 ->
-    Ptr Gst.MapInfo.MapInfo ->
-    Ptr () ->
-    Int32 ->
-    CUInt ->
-    IO CInt
-
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "Gst", name = "MapInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "Gst", name = "MapFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoMetaMapFieldCallback :: FunPtr C_VideoMetaMapFieldCallback -> C_VideoMetaMapFieldCallback
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoMetaMapFieldCallback ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoMetaMapFieldCallback
-    -> GstVideo.VideoMeta.VideoMeta
-    -> Word32
-    -> Gst.MapInfo.MapInfo
-    -> Ptr ()
-    -> Int32
-    -> [Gst.Flags.MapFlags]
-    -> m Bool
-dynamic_VideoMetaMapFieldCallback __funPtr meta plane info data_ stride flags = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    info' <- unsafeManagedPtrGetPtr info
-    let flags' = gflagsToWord flags
-    result <- (__dynamic_C_VideoMetaMapFieldCallback __funPtr) meta' plane info' data_ stride flags'
-    let result' = (/= 0) result
-    touchManagedPtr meta
-    touchManagedPtr info
-    return result'
-
--- | Generate a function pointer callable from C code, from a `C_VideoMetaMapFieldCallback`.
-foreign import ccall "wrapper"
-    mk_VideoMetaMapFieldCallback :: C_VideoMetaMapFieldCallback -> IO (FunPtr C_VideoMetaMapFieldCallback)
-
-{- |
-/No description available in the introspection data./
--}
-type VideoMetaMapFieldCallback =
-    GstVideo.VideoMeta.VideoMeta
-    -> Word32
-    -> Gst.MapInfo.MapInfo
-    -> Ptr ()
-    -> Int32
-    -> [Gst.Flags.MapFlags]
-    -> IO Bool
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoMetaMapFieldCallback`@.
-noVideoMetaMapFieldCallback :: Maybe VideoMetaMapFieldCallback
-noVideoMetaMapFieldCallback = Nothing
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoMetaMapFieldCallback :: MonadIO m => VideoMetaMapFieldCallback -> m (GClosure C_VideoMetaMapFieldCallback)
-genClosure_VideoMetaMapFieldCallback cb = liftIO $ do
-    let cb' = wrap_VideoMetaMapFieldCallback Nothing cb
-    mk_VideoMetaMapFieldCallback cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoMetaMapFieldCallback` into a `C_VideoMetaMapFieldCallback`.
-wrap_VideoMetaMapFieldCallback ::
-    Maybe (Ptr (FunPtr C_VideoMetaMapFieldCallback)) ->
-    VideoMetaMapFieldCallback ->
-    C_VideoMetaMapFieldCallback
-wrap_VideoMetaMapFieldCallback funptrptr _cb meta plane info data_ stride flags = do
-    meta' <- (newPtr GstVideo.VideoMeta.VideoMeta) meta
-    info' <- (newPtr Gst.MapInfo.MapInfo) info
-    let flags' = wordToGFlags flags
-    result <- _cb  meta' plane info' data_ stride flags'
-    maybeReleaseFunPtr funptrptr
-    let result' = (fromIntegral . fromEnum) result
-    return result'
-
-
--- callback VideoGLTextureUpload
---          -> Callable {returnType = Just (TBasicType TBoolean), returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUploadMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "texture_id", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoGLTextureUpload =
-    Ptr GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta ->
-    Word32 ->
-    IO CInt
-
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUploadMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "texture_id", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoGLTextureUpload :: FunPtr C_VideoGLTextureUpload -> C_VideoGLTextureUpload
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoGLTextureUpload ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoGLTextureUpload
-    -> GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta
-    -> Word32
-    -> m Bool
-dynamic_VideoGLTextureUpload __funPtr meta textureId = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    result <- (__dynamic_C_VideoGLTextureUpload __funPtr) meta' textureId
-    let result' = (/= 0) result
-    touchManagedPtr meta
-    return result'
-
--- | Generate a function pointer callable from C code, from a `C_VideoGLTextureUpload`.
-foreign import ccall "wrapper"
-    mk_VideoGLTextureUpload :: C_VideoGLTextureUpload -> IO (FunPtr C_VideoGLTextureUpload)
-
-{- |
-/No description available in the introspection data./
--}
-type VideoGLTextureUpload =
-    GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta
-    -> Word32
-    -> IO Bool
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoGLTextureUpload`@.
-noVideoGLTextureUpload :: Maybe VideoGLTextureUpload
-noVideoGLTextureUpload = Nothing
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoGLTextureUpload :: MonadIO m => VideoGLTextureUpload -> m (GClosure C_VideoGLTextureUpload)
-genClosure_VideoGLTextureUpload cb = liftIO $ do
-    let cb' = wrap_VideoGLTextureUpload Nothing cb
-    mk_VideoGLTextureUpload cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoGLTextureUpload` into a `C_VideoGLTextureUpload`.
-wrap_VideoGLTextureUpload ::
-    Maybe (Ptr (FunPtr C_VideoGLTextureUpload)) ->
-    VideoGLTextureUpload ->
-    C_VideoGLTextureUpload
-wrap_VideoGLTextureUpload funptrptr _cb meta textureId = do
-    meta' <- (newPtr GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta) meta
-    result <- _cb  meta' textureId
-    maybeReleaseFunPtr funptrptr
-    let result' = (fromIntegral . fromEnum) result
-    return result'
-
-
--- callback VideoFormatUnpack
---          -> Callable {returnType = Nothing, returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormatInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormatInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoPackFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags to control the unpacking", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a destination array", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "pointers to the data planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "strides of the planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the x position in the image to start from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the y position in the image to start from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the amount of pixels to unpack.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Just "Unpacks @width pixels from the given planes and strides containing data of\nformat @info. The pixels will be unpacked into @dest with each component\ninterleaved as per @info's unpack_format, which will usually be one of\n#GST_VIDEO_FORMAT_ARGB, #GST_VIDEO_FORMAT_AYUV, #GST_VIDEO_FORMAT_ARGB64 or\n#GST_VIDEO_FORMAT_AYUV64 depending on the format to unpack.\n@dest should at least be big enough to hold @width * bytes_per_pixel bytes\nwhere bytes_per_pixel relates to the unpack format and will usually be\neither 4 or 8 depending on the unpack format. bytes_per_pixel will be\nthe same as the pixel stride for plane 0 for the above formats.\n\nFor subsampled formats, the components will be duplicated in the destination\narray. Reconstruction of the missing components can be performed in a\nseparate step after unpacking.", sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoFormatUnpack =
-    Ptr GstVideo.VideoFormatInfo.VideoFormatInfo ->
-    CUInt ->
-    Ptr () ->
-    Ptr () ->
-    Int32 ->
-    Int32 ->
-    Int32 ->
-    Int32 ->
-    IO ()
-
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormatInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormatInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoPackFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags to control the unpacking", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a destination array", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "pointers to the data planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "strides of the planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the x position in the image to start from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the y position in the image to start from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the amount of pixels to unpack.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoFormatUnpack :: FunPtr C_VideoFormatUnpack -> C_VideoFormatUnpack
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoFormatUnpack ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoFormatUnpack
-    -> GstVideo.VideoFormatInfo.VideoFormatInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoFormatInfo.VideoFormatInfo' -}
-    -> [GstVideo.Flags.VideoPackFlags]
-    {- ^ /@flags@/: flags to control the unpacking -}
-    -> Ptr ()
-    {- ^ /@dest@/: a destination array -}
-    -> Ptr ()
-    {- ^ /@data@/: pointers to the data planes -}
-    -> Int32
-    {- ^ /@stride@/: strides of the planes -}
-    -> Int32
-    {- ^ /@x@/: the x position in the image to start from -}
-    -> Int32
-    {- ^ /@y@/: the y position in the image to start from -}
-    -> Int32
-    {- ^ /@width@/: the amount of pixels to unpack. -}
-    -> m ()
-dynamic_VideoFormatUnpack __funPtr info flags dest data_ stride x y width = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    let flags' = gflagsToWord flags
-    (__dynamic_C_VideoFormatUnpack __funPtr) info' flags' dest data_ stride x y width
-    touchManagedPtr info
-    return ()
-
--- | Generate a function pointer callable from C code, from a `C_VideoFormatUnpack`.
-foreign import ccall "wrapper"
-    mk_VideoFormatUnpack :: C_VideoFormatUnpack -> IO (FunPtr C_VideoFormatUnpack)
-
-{- |
-Unpacks /@width@/ pixels from the given planes and strides containing data of
-format /@info@/. The pixels will be unpacked into /@dest@/ with each component
-interleaved as per /@info@/\'s unpack_format, which will usually be one of
-@/GST_VIDEO_FORMAT_ARGB/@, @/GST_VIDEO_FORMAT_AYUV/@, @/GST_VIDEO_FORMAT_ARGB64/@ or
-@/GST_VIDEO_FORMAT_AYUV64/@ depending on the format to unpack.
-/@dest@/ should at least be big enough to hold /@width@/ * bytes_per_pixel bytes
-where bytes_per_pixel relates to the unpack format and will usually be
-either 4 or 8 depending on the unpack format. bytes_per_pixel will be
-the same as the pixel stride for plane 0 for the above formats.
-
-For subsampled formats, the components will be duplicated in the destination
-array. Reconstruction of the missing components can be performed in a
-separate step after unpacking.
--}
-type VideoFormatUnpack =
-    GstVideo.VideoFormatInfo.VideoFormatInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoFormatInfo.VideoFormatInfo' -}
-    -> [GstVideo.Flags.VideoPackFlags]
-    {- ^ /@flags@/: flags to control the unpacking -}
-    -> Ptr ()
-    {- ^ /@dest@/: a destination array -}
-    -> Ptr ()
-    {- ^ /@data@/: pointers to the data planes -}
-    -> Int32
-    {- ^ /@stride@/: strides of the planes -}
-    -> Int32
-    {- ^ /@x@/: the x position in the image to start from -}
-    -> Int32
-    {- ^ /@y@/: the y position in the image to start from -}
-    -> Int32
-    {- ^ /@width@/: the amount of pixels to unpack. -}
-    -> IO ()
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoFormatUnpack`@.
-noVideoFormatUnpack :: Maybe VideoFormatUnpack
-noVideoFormatUnpack = Nothing
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoFormatUnpack :: MonadIO m => VideoFormatUnpack -> m (GClosure C_VideoFormatUnpack)
-genClosure_VideoFormatUnpack cb = liftIO $ do
-    let cb' = wrap_VideoFormatUnpack Nothing cb
-    mk_VideoFormatUnpack cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoFormatUnpack` into a `C_VideoFormatUnpack`.
-wrap_VideoFormatUnpack ::
-    Maybe (Ptr (FunPtr C_VideoFormatUnpack)) ->
-    VideoFormatUnpack ->
-    C_VideoFormatUnpack
-wrap_VideoFormatUnpack funptrptr _cb info flags dest data_ stride x y width = do
-    info' <- (newPtr GstVideo.VideoFormatInfo.VideoFormatInfo) info
-    let flags' = wordToGFlags flags
-    _cb  info' flags' dest data_ stride x y width
-    maybeReleaseFunPtr funptrptr
-
-
--- callback VideoFormatPack
---          -> Callable {returnType = Nothing, returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormatInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormatInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoPackFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags to control the packing", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a source array", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "sstride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the source array stride", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "pointers to the destination data planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "strides of the destination planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "chroma_site", argType = TInterface (Name {namespace = "GstVideo", name = "VideoChromaSite"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the chroma siting of the target when subsampled (not used)", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the y position in the image to pack to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the amount of pixels to pack.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Just "Packs @width pixels from @src to the given planes and strides in the\nformat @info. The pixels from source have each component interleaved\nand will be packed into the planes in @data.\n\nThis function operates on pack_lines lines, meaning that @src should\ncontain at least pack_lines lines with a stride of @sstride and @y\nshould be a multiple of pack_lines.\n\nSubsampled formats will use the horizontally and vertically cosited\ncomponent from the source. Subsampling should be performed before\npacking.\n\nBecause this function does not have a x coordinate, it is not possible to\npack pixels starting from an unaligned position. For tiled images this\nmeans that packing should start from a tile coordinate. For subsampled\nformats this means that a complete pixel needs to be packed.", sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoFormatPack =
-    Ptr GstVideo.VideoFormatInfo.VideoFormatInfo ->
-    CUInt ->
-    Ptr () ->
-    Int32 ->
-    Ptr () ->
-    Int32 ->
-    CUInt ->
-    Int32 ->
-    Int32 ->
-    IO ()
-
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormatInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormatInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoPackFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags to control the packing", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a source array", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "sstride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the source array stride", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "pointers to the destination data planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "strides of the destination planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "chroma_site", argType = TInterface (Name {namespace = "GstVideo", name = "VideoChromaSite"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the chroma siting of the target when subsampled (not used)", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the y position in the image to pack to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the amount of pixels to pack.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoFormatPack :: FunPtr C_VideoFormatPack -> C_VideoFormatPack
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoFormatPack ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoFormatPack
-    -> GstVideo.VideoFormatInfo.VideoFormatInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoFormatInfo.VideoFormatInfo' -}
-    -> [GstVideo.Flags.VideoPackFlags]
-    {- ^ /@flags@/: flags to control the packing -}
-    -> Ptr ()
-    {- ^ /@src@/: a source array -}
-    -> Int32
-    {- ^ /@sstride@/: the source array stride -}
-    -> Ptr ()
-    {- ^ /@data@/: pointers to the destination data planes -}
-    -> Int32
-    {- ^ /@stride@/: strides of the destination planes -}
-    -> [GstVideo.Flags.VideoChromaSite]
-    {- ^ /@chromaSite@/: the chroma siting of the target when subsampled (not used) -}
-    -> Int32
-    {- ^ /@y@/: the y position in the image to pack to -}
-    -> Int32
-    {- ^ /@width@/: the amount of pixels to pack. -}
-    -> m ()
-dynamic_VideoFormatPack __funPtr info flags src sstride data_ stride chromaSite y width = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    let flags' = gflagsToWord flags
-    let chromaSite' = gflagsToWord chromaSite
-    (__dynamic_C_VideoFormatPack __funPtr) info' flags' src sstride data_ stride chromaSite' y width
-    touchManagedPtr info
-    return ()
-
--- | Generate a function pointer callable from C code, from a `C_VideoFormatPack`.
-foreign import ccall "wrapper"
-    mk_VideoFormatPack :: C_VideoFormatPack -> IO (FunPtr C_VideoFormatPack)
-
-{- |
-Packs /@width@/ pixels from /@src@/ to the given planes and strides in the
-format /@info@/. The pixels from source have each component interleaved
-and will be packed into the planes in /@data@/.
-
-This function operates on pack_lines lines, meaning that /@src@/ should
-contain at least pack_lines lines with a stride of /@sstride@/ and /@y@/
-should be a multiple of pack_lines.
-
-Subsampled formats will use the horizontally and vertically cosited
-component from the source. Subsampling should be performed before
-packing.
-
-Because this function does not have a x coordinate, it is not possible to
-pack pixels starting from an unaligned position. For tiled images this
-means that packing should start from a tile coordinate. For subsampled
-formats this means that a complete pixel needs to be packed.
--}
-type VideoFormatPack =
-    GstVideo.VideoFormatInfo.VideoFormatInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoFormatInfo.VideoFormatInfo' -}
-    -> [GstVideo.Flags.VideoPackFlags]
-    {- ^ /@flags@/: flags to control the packing -}
-    -> Ptr ()
-    {- ^ /@src@/: a source array -}
-    -> Int32
-    {- ^ /@sstride@/: the source array stride -}
-    -> Ptr ()
-    {- ^ /@data@/: pointers to the destination data planes -}
-    -> Int32
-    {- ^ /@stride@/: strides of the destination planes -}
-    -> [GstVideo.Flags.VideoChromaSite]
-    {- ^ /@chromaSite@/: the chroma siting of the target when subsampled (not used) -}
-    -> Int32
-    {- ^ /@y@/: the y position in the image to pack to -}
-    -> Int32
-    {- ^ /@width@/: the amount of pixels to pack. -}
-    -> IO ()
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoFormatPack`@.
-noVideoFormatPack :: Maybe VideoFormatPack
-noVideoFormatPack = Nothing
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoFormatPack :: MonadIO m => VideoFormatPack -> m (GClosure C_VideoFormatPack)
-genClosure_VideoFormatPack cb = liftIO $ do
-    let cb' = wrap_VideoFormatPack Nothing cb
-    mk_VideoFormatPack cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoFormatPack` into a `C_VideoFormatPack`.
-wrap_VideoFormatPack ::
-    Maybe (Ptr (FunPtr C_VideoFormatPack)) ->
-    VideoFormatPack ->
-    C_VideoFormatPack
-wrap_VideoFormatPack funptrptr _cb info flags src sstride data_ stride chromaSite y width = do
-    info' <- (newPtr GstVideo.VideoFormatInfo.VideoFormatInfo) info
-    let flags' = wordToGFlags flags
-    let chromaSite' = wordToGFlags chromaSite
-    _cb  info' flags' src sstride data_ stride chromaSite' y width
-    maybeReleaseFunPtr funptrptr
-
-
--- callback VideoConvertSampleCallback
---          -> Callable {returnType = Nothing, returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "sample", argType = TInterface (Name {namespace = "Gst", name = "Sample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "error", argType = TError, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = 2, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoConvertSampleCallback =
-    Ptr Gst.Sample.Sample ->
-    Ptr GError ->
-    Ptr () ->
-    IO ()
-
--- Args : [Arg {argCName = "sample", argType = TInterface (Name {namespace = "Gst", name = "Sample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "error", argType = TError, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = 2, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoConvertSampleCallback :: FunPtr C_VideoConvertSampleCallback -> C_VideoConvertSampleCallback
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoConvertSampleCallback ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoConvertSampleCallback
-    -> Gst.Sample.Sample
-    -> GError
-    -> Ptr ()
-    -> m ()
-dynamic_VideoConvertSampleCallback __funPtr sample error_ userData = liftIO $ do
-    sample' <- unsafeManagedPtrGetPtr sample
-    error_' <- unsafeManagedPtrGetPtr error_
-    (__dynamic_C_VideoConvertSampleCallback __funPtr) sample' error_' userData
-    touchManagedPtr sample
-    touchManagedPtr error_
-    return ()
-
--- | Generate a function pointer callable from C code, from a `C_VideoConvertSampleCallback`.
-foreign import ccall "wrapper"
-    mk_VideoConvertSampleCallback :: C_VideoConvertSampleCallback -> IO (FunPtr C_VideoConvertSampleCallback)
-
-{- |
-/No description available in the introspection data./
--}
-type VideoConvertSampleCallback =
-    Gst.Sample.Sample
-    -> GError
-    -> IO ()
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoConvertSampleCallback`@.
-noVideoConvertSampleCallback :: Maybe VideoConvertSampleCallback
-noVideoConvertSampleCallback = Nothing
-
-{- |
-/No description available in the introspection data./
--}
-type VideoConvertSampleCallback_WithClosures =
-    Gst.Sample.Sample
-    -> GError
-    -> Ptr ()
-    -> IO ()
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoConvertSampleCallback_WithClosures`@.
-noVideoConvertSampleCallback_WithClosures :: Maybe VideoConvertSampleCallback_WithClosures
-noVideoConvertSampleCallback_WithClosures = Nothing
-
--- | A simple wrapper that ignores the closure arguments.
-drop_closures_VideoConvertSampleCallback :: VideoConvertSampleCallback -> VideoConvertSampleCallback_WithClosures
-drop_closures_VideoConvertSampleCallback _f sample error_ _ = _f sample error_
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoConvertSampleCallback :: MonadIO m => VideoConvertSampleCallback -> m (GClosure C_VideoConvertSampleCallback)
-genClosure_VideoConvertSampleCallback cb = liftIO $ do
-    let cb' = drop_closures_VideoConvertSampleCallback cb
-    let cb'' = wrap_VideoConvertSampleCallback Nothing cb'
-    mk_VideoConvertSampleCallback cb'' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoConvertSampleCallback` into a `C_VideoConvertSampleCallback`.
-wrap_VideoConvertSampleCallback ::
-    Maybe (Ptr (FunPtr C_VideoConvertSampleCallback)) ->
-    VideoConvertSampleCallback_WithClosures ->
-    C_VideoConvertSampleCallback
-wrap_VideoConvertSampleCallback funptrptr _cb sample error_ userData = do
-    B.ManagedPtr.withTransient Gst.Sample.Sample sample $ \sample' -> do
-        error_' <- (newBoxed GError) error_
-        _cb  sample' error_' userData
-        maybeReleaseFunPtr funptrptr
-
-
--- callback VideoAffineTransformationGetMatrix
---          -> Callable {returnType = Just (TBasicType TBoolean), returnMayBeNull = False, returnTransfer = TransferNothing, returnDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, args = [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAffineTransformationMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "matrix", argType = TBasicType TFloat, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}], skipReturn = False, callableThrows = False, callableDeprecated = Nothing, callableDocumentation = Documentation {rawDocText = Nothing, sinceVersion = Nothing}}
--- | Type for the callback on the (unwrapped) C side.
-type C_VideoAffineTransformationGetMatrix =
-    Ptr GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta ->
-    CFloat ->
-    IO CInt
-
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAffineTransformationMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "matrix", argType = TBasicType TFloat, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "dynamic" __dynamic_C_VideoAffineTransformationGetMatrix :: FunPtr C_VideoAffineTransformationGetMatrix -> C_VideoAffineTransformationGetMatrix
-
--- | Given a pointer to a foreign C function, wrap it into a function callable from Haskell.
-dynamic_VideoAffineTransformationGetMatrix ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    FunPtr C_VideoAffineTransformationGetMatrix
-    -> GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta
-    -> Float
-    -> m Bool
-dynamic_VideoAffineTransformationGetMatrix __funPtr meta matrix = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    let matrix' = realToFrac matrix
-    result <- (__dynamic_C_VideoAffineTransformationGetMatrix __funPtr) meta' matrix'
-    let result' = (/= 0) result
-    touchManagedPtr meta
-    return result'
-
--- | Generate a function pointer callable from C code, from a `C_VideoAffineTransformationGetMatrix`.
-foreign import ccall "wrapper"
-    mk_VideoAffineTransformationGetMatrix :: C_VideoAffineTransformationGetMatrix -> IO (FunPtr C_VideoAffineTransformationGetMatrix)
-
-{- |
-/No description available in the introspection data./
--}
-type VideoAffineTransformationGetMatrix =
-    GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta
-    -> Float
-    -> IO Bool
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `VideoAffineTransformationGetMatrix`@.
-noVideoAffineTransformationGetMatrix :: Maybe VideoAffineTransformationGetMatrix
-noVideoAffineTransformationGetMatrix = Nothing
-
--- | Wrap the callback into a `GClosure`.
-genClosure_VideoAffineTransformationGetMatrix :: MonadIO m => VideoAffineTransformationGetMatrix -> m (GClosure C_VideoAffineTransformationGetMatrix)
-genClosure_VideoAffineTransformationGetMatrix cb = liftIO $ do
-    let cb' = wrap_VideoAffineTransformationGetMatrix Nothing cb
-    mk_VideoAffineTransformationGetMatrix cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `VideoAffineTransformationGetMatrix` into a `C_VideoAffineTransformationGetMatrix`.
-wrap_VideoAffineTransformationGetMatrix ::
-    Maybe (Ptr (FunPtr C_VideoAffineTransformationGetMatrix)) ->
-    VideoAffineTransformationGetMatrix ->
-    C_VideoAffineTransformationGetMatrix
-wrap_VideoAffineTransformationGetMatrix funptrptr _cb meta matrix = do
-    meta' <- (newPtr GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta) meta
-    let matrix' = realToFrac matrix
-    result <- _cb  meta' matrix'
-    maybeReleaseFunPtr funptrptr
-    let result' = (fromIntegral . fromEnum) result
-    return result'
-
-
-
diff --git a/GI/GstVideo/Constants.hs b/GI/GstVideo/Constants.hs
deleted file mode 100644
--- a/GI/GstVideo/Constants.hs
+++ /dev/null
@@ -1,538 +0,0 @@
-{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-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_OVERLAY_COMPOSITION_BLEND_FORMATS,
-    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_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_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.ManagedPtr as B.ManagedPtr
-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.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
-
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_TILE_Y_TILES_SHIFT = 16 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_TILE_X_TILES_MASK = 65535 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_TILE_TYPE_SHIFT = 16 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_TILE_TYPE_MASK = 65535 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_SIZE_RANGE = "(int) [ 1, max ]" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_DITHER_METHOD/@, The dither method to use for propagating
-quatization errors.
--}
-pattern 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 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 VIDEO_RESAMPLER_OPT_SHARPEN = "GstVideoResampler.sharpen" :: T.Text
-
-{- |
-G_TYPE_INT, limits the maximum number of taps to use.
-16 is the default.
--}
-pattern 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 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 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 VIDEO_RESAMPLER_OPT_CUBIC_B = "GstVideoResampler.cubic-b" :: T.Text
-
-{- |
-Video formats supported by 'GI.GstVideo.Structs.VideoOverlayComposition.videoOverlayCompositionBlend', for
-use in overlay elements\' pad template caps.
-
-/Since: 1.2/
--}
-pattern 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 }" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_MAX_PLANES = 4 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_MAX_COMPONENTS = 4 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_FPS_RANGE = "(fraction) [ 0, max ]" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern 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 }" :: T.Text
-
-{- |
-The name of the templates for the source pad.
--}
-pattern VIDEO_ENCODER_SRC_NAME = "src" :: T.Text
-
-{- |
-The name of the templates for the sink pad.
--}
-pattern VIDEO_ENCODER_SINK_NAME = "sink" :: T.Text
-
-{- |
-The name of the templates for the source pad.
--}
-pattern VIDEO_DECODER_SRC_NAME = "src" :: T.Text
-
-{- |
-The name of the templates for the sink pad.
--}
-pattern VIDEO_DECODER_SINK_NAME = "sink" :: T.Text
-
-{- |
-Default maximum number of errors tolerated before signaling error.
--}
-pattern VIDEO_DECODER_MAX_ERRORS = 10 :: Int32
-
-{- |
-@/G_TYPE_UINT/@, maximum number of threads to use. Default 1, 0 for the number
-of cores.
--}
-pattern VIDEO_CONVERTER_OPT_THREADS = "GstVideoConverter.threads" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, source y position to start conversion, default 0
--}
-pattern VIDEO_CONVERTER_OPT_SRC_Y = "GstVideoConverter.src-y" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, source x position to start conversion, default 0
--}
-pattern VIDEO_CONVERTER_OPT_SRC_X = "GstVideoConverter.src-x" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, source width to convert, default source width
--}
-pattern VIDEO_CONVERTER_OPT_SRC_WIDTH = "GstVideoConverter.src-width" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, source height to convert, default source height
--}
-pattern 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 VIDEO_CONVERTER_OPT_RESAMPLER_TAPS = "GstVideoConverter.resampler-taps" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_RESAMPLER_METHOD/@, The resampler method to use for
-resampling. Other options for the resampler can be used, see
-the 'GI.GstVideo.Structs.VideoResampler.VideoResampler'. Default is @/GST_VIDEO_RESAMPLER_METHOD_CUBIC/@
--}
-pattern VIDEO_CONVERTER_OPT_RESAMPLER_METHOD = "GstVideoConverter.resampler-method" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_PRIMARIES_MODE/@, set the primaries conversion mode.
-Default is @/GST_VIDEO_PRIMARIES_MODE_NONE/@.
--}
-pattern VIDEO_CONVERTER_OPT_PRIMARIES_MODE = "GstVideoConverter.primaries-mode" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_MATRIX_MODE/@, 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 VIDEO_CONVERTER_OPT_MATRIX_MODE = "GstVideoConverter.matrix-mode" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_GAMMA_MODE/@, set the gamma mode.
-Default is @/GST_VIDEO_GAMMA_MODE_NONE/@.
--}
-pattern 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 'True'.
--}
-pattern 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 VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION = "GstVideoConverter.dither-quantization" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_DITHER_METHOD/@, The dither method to use when
-changing bit depth.
-Default is @/GST_VIDEO_DITHER_BAYER/@.
--}
-pattern VIDEO_CONVERTER_OPT_DITHER_METHOD = "GstVideoConverter.dither-method" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, y position in the destination frame, default 0
--}
-pattern VIDEO_CONVERTER_OPT_DEST_Y = "GstVideoConverter.dest-y" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, x position in the destination frame, default 0
--}
-pattern VIDEO_CONVERTER_OPT_DEST_X = "GstVideoConverter.dest-x" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, width in the destination frame, default destination width
--}
-pattern VIDEO_CONVERTER_OPT_DEST_WIDTH = "GstVideoConverter.dest-width" :: T.Text
-
-{- |
-@/G_TYPE_INT/@, height in the destination frame, default destination height
--}
-pattern VIDEO_CONVERTER_OPT_DEST_HEIGHT = "GstVideoConverter.dest-height" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_RESAMPLER_METHOD/@, The resampler method to use for
-chroma resampling. Other options for the resampler can be used, see
-the 'GI.GstVideo.Structs.VideoResampler.VideoResampler'. Default is @/GST_VIDEO_RESAMPLER_METHOD_LINEAR/@
--}
-pattern VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD = "GstVideoConverter.chroma-resampler-method" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_CHROMA_MODE/@, set the chroma resample mode subsampled
-formats. Default is @/GST_VIDEO_CHROMA_MODE_FULL/@.
--}
-pattern 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 'True'. The color is in ARGB format.
-Default 0xff000000
--}
-pattern VIDEO_CONVERTER_OPT_BORDER_ARGB = "GstVideoConverter.border-argb" :: T.Text
-
-{- |
-@/G_TYPE_DOUBLE/@, the alpha color value to use.
-Default to 1.0
--}
-pattern VIDEO_CONVERTER_OPT_ALPHA_VALUE = "GstVideoConverter.alpha-value" :: T.Text
-
-{- |
-@/GST_TYPE_VIDEO_ALPHA_MODE/@, the alpha mode to use.
-Default is @/GST_VIDEO_ALPHA_MODE_COPY/@.
--}
-pattern VIDEO_CONVERTER_OPT_ALPHA_MODE = "GstVideoConverter.alpha-mode" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_Y = 0 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_V = 2 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_U = 1 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_R = 0 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_PALETTE = 1 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_INDEX = 0 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_G = 1 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_B = 2 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COMP_A = 3 :: Int32
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COLORIMETRY_SRGB = "sRGB" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COLORIMETRY_SMPTE240M = "smpte240m" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COLORIMETRY_BT709 = "bt709" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COLORIMETRY_BT601 = "bt601" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern VIDEO_COLORIMETRY_BT2020 = "bt2020" :: T.Text
-
-{- |
-This metadata is relevant for video streams.
-
-/Since: 1.2/
--}
-pattern META_TAG_VIDEO_STR = "video" :: T.Text
-
-{- |
-This metadata stays relevant as long as video size is unchanged.
-
-/Since: 1.2/
--}
-pattern META_TAG_VIDEO_SIZE_STR = "size" :: T.Text
-
-{- |
-This metadata stays relevant as long as video orientation is unchanged.
-
-/Since: 1.2/
--}
-pattern META_TAG_VIDEO_ORIENTATION_STR = "orientation" :: T.Text
-
-{- |
-This metadata stays relevant as long as video colorspace is unchanged.
-
-/Since: 1.2/
--}
-pattern META_TAG_VIDEO_COLORSPACE_STR = "colorspace" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION = "meta:GstVideoOverlayComposition" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern CAPS_FEATURE_META_GST_VIDEO_META = "meta:GstVideoMeta" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META = "meta:GstVideoGLTextureUploadMeta" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern 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.
-
-/Since: 1.16./
--}
-pattern 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 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 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 BUFFER_POOL_OPTION_VIDEO_ALIGNMENT = "GstBufferPoolOptionVideoAlignment" :: T.Text
-
-{- |
-/No description available in the introspection data./
--}
-pattern BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META = "GstBufferPoolOptionVideoAffineTransformation" :: T.Text
-
-
diff --git a/GI/GstVideo/Enums.hs b/GI/GstVideo/Enums.hs
deleted file mode 100644
--- a/GI/GstVideo/Enums.hs
+++ /dev/null
@@ -1,2633 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Enums
-    ( 
-
- -- * Enumerations
--- ** ColorBalanceType #enum:ColorBalanceType#
-
-    ColorBalanceType(..)                    ,
-
-
--- ** NavigationCommand #enum:NavigationCommand#
-
-    NavigationCommand(..)                   ,
-
-
--- ** NavigationEventType #enum:NavigationEventType#
-
-    NavigationEventType(..)                 ,
-
-
--- ** NavigationMessageType #enum:NavigationMessageType#
-
-    NavigationMessageType(..)               ,
-
-
--- ** NavigationQueryType #enum:NavigationQueryType#
-
-    NavigationQueryType(..)                 ,
-
-
--- ** VideoAlphaMode #enum:VideoAlphaMode#
-
-    VideoAlphaMode(..)                      ,
-
-
--- ** VideoAncillaryDID #enum:VideoAncillaryDID#
-
-    VideoAncillaryDID(..)                   ,
-
-
--- ** VideoAncillaryDID16 #enum:VideoAncillaryDID16#
-
-    VideoAncillaryDID16(..)                 ,
-
-
--- ** VideoCaptionType #enum:VideoCaptionType#
-
-    VideoCaptionType(..)                    ,
-
-
--- ** VideoChromaMethod #enum:VideoChromaMethod#
-
-    VideoChromaMethod(..)                   ,
-
-
--- ** VideoChromaMode #enum:VideoChromaMode#
-
-    VideoChromaMode(..)                     ,
-
-
--- ** VideoColorMatrix #enum:VideoColorMatrix#
-
-    VideoColorMatrix(..)                    ,
-
-
--- ** VideoColorPrimaries #enum:VideoColorPrimaries#
-
-    VideoColorPrimaries(..)                 ,
-
-
--- ** VideoColorRange #enum:VideoColorRange#
-
-    VideoColorRange(..)                     ,
-
-
--- ** VideoDitherMethod #enum:VideoDitherMethod#
-
-    VideoDitherMethod(..)                   ,
-
-
--- ** VideoFieldOrder #enum:VideoFieldOrder#
-
-    VideoFieldOrder(..)                     ,
-
-
--- ** VideoFormat #enum:VideoFormat#
-
-    VideoFormat(..)                         ,
-
-
--- ** VideoGLTextureOrientation #enum:VideoGLTextureOrientation#
-
-    VideoGLTextureOrientation(..)           ,
-
-
--- ** VideoGLTextureType #enum:VideoGLTextureType#
-
-    VideoGLTextureType(..)                  ,
-
-
--- ** VideoGammaMode #enum:VideoGammaMode#
-
-    VideoGammaMode(..)                      ,
-
-
--- ** VideoInterlaceMode #enum:VideoInterlaceMode#
-
-    VideoInterlaceMode(..)                  ,
-
-
--- ** VideoMatrixMode #enum:VideoMatrixMode#
-
-    VideoMatrixMode(..)                     ,
-
-
--- ** VideoMultiviewFramePacking #enum:VideoMultiviewFramePacking#
-
-    VideoMultiviewFramePacking(..)          ,
-
-
--- ** VideoMultiviewMode #enum:VideoMultiviewMode#
-
-    VideoMultiviewMode(..)                  ,
-
-
--- ** VideoOrientationMethod #enum:VideoOrientationMethod#
-
-    VideoOrientationMethod(..)              ,
-
-
--- ** VideoPrimariesMode #enum:VideoPrimariesMode#
-
-    VideoPrimariesMode(..)                  ,
-
-
--- ** VideoResamplerMethod #enum:VideoResamplerMethod#
-
-    VideoResamplerMethod(..)                ,
-
-
--- ** VideoTileMode #enum:VideoTileMode#
-
-    VideoTileMode(..)                       ,
-
-
--- ** VideoTileType #enum:VideoTileType#
-
-    VideoTileType(..)                       ,
-
-
--- ** VideoTransferFunction #enum:VideoTransferFunction#
-
-    VideoTransferFunction(..)               ,
-
-
--- ** VideoVBIParserResult #enum:VideoVBIParserResult#
-
-    VideoVBIParserResult(..)                ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- Enum VideoVBIParserResult
-{- |
-Return values for 'GI.GstVideo.Structs.VideoVBIParser.VideoVBIParser'
-
-/Since: 1.16/
--}
-data VideoVBIParserResult = 
-      VideoVBIParserResultDone
-    {- ^
-    No line were provided, or no more Ancillary data was found.
-    -}
-    | VideoVBIParserResultOk
-    {- ^
-    A 'GI.GstVideo.Structs.VideoAncillary.VideoAncillary' was found.
-    -}
-    | VideoVBIParserResultError
-    {- ^
-    An error occured
-    -}
-    | AnotherVideoVBIParserResult Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoVBIParserResult where
-    fromEnum VideoVBIParserResultDone = 0
-    fromEnum VideoVBIParserResultOk = 1
-    fromEnum VideoVBIParserResultError = 2
-    fromEnum (AnotherVideoVBIParserResult k) = k
-
-    toEnum 0 = VideoVBIParserResultDone
-    toEnum 1 = VideoVBIParserResultOk
-    toEnum 2 = VideoVBIParserResultError
-    toEnum k = AnotherVideoVBIParserResult k
-
-instance P.Ord VideoVBIParserResult where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_vbi_parser_result_get_type" c_gst_video_vbi_parser_result_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoVBIParserResult where
-    boxedEnumType _ = c_gst_video_vbi_parser_result_get_type
-
--- Enum VideoTransferFunction
-{- |
-The video transfer function defines the formula for converting between
-non-linear RGB (R\'G\'B\') and linear RGB
--}
-data VideoTransferFunction = 
-      VideoTransferFunctionUnknown
-    {- ^
-    unknown transfer function
-    -}
-    | VideoTransferFunctionGamma10
-    {- ^
-    linear RGB, gamma 1.0 curve
-    -}
-    | VideoTransferFunctionGamma18
-    {- ^
-    Gamma 1.8 curve
-    -}
-    | VideoTransferFunctionGamma20
-    {- ^
-    Gamma 2.0 curve
-    -}
-    | VideoTransferFunctionGamma22
-    {- ^
-    Gamma 2.2 curve
-    -}
-    | VideoTransferFunctionBt709
-    {- ^
-    Gamma 2.2 curve with a linear segment in the lower
-                              range
-    -}
-    | VideoTransferFunctionSmpte240m
-    {- ^
-    Gamma 2.2 curve with a linear segment in the
-                                  lower range
-    -}
-    | VideoTransferFunctionSrgb
-    {- ^
-    Gamma 2.4 curve with a linear segment in the lower
-                             range
-    -}
-    | VideoTransferFunctionGamma28
-    {- ^
-    Gamma 2.8 curve
-    -}
-    | VideoTransferFunctionLog100
-    {- ^
-    Logarithmic transfer characteristic
-                                100:1 range
-    -}
-    | VideoTransferFunctionLog316
-    {- ^
-    Logarithmic transfer characteristic
-                                316.22777:1 range
-    -}
-    | VideoTransferFunctionBt202012
-    {- ^
-    Gamma 2.2 curve with a linear segment in the lower
-                                   range. Used for BT.2020 with 12 bits per
-                                   component. Since: 1.6
-    -}
-    | VideoTransferFunctionAdobergb
-    {- ^
-    Gamma 2.19921875. Since: 1.8
-    -}
-    | AnotherVideoTransferFunction Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoTransferFunction where
-    fromEnum VideoTransferFunctionUnknown = 0
-    fromEnum VideoTransferFunctionGamma10 = 1
-    fromEnum VideoTransferFunctionGamma18 = 2
-    fromEnum VideoTransferFunctionGamma20 = 3
-    fromEnum VideoTransferFunctionGamma22 = 4
-    fromEnum VideoTransferFunctionBt709 = 5
-    fromEnum VideoTransferFunctionSmpte240m = 6
-    fromEnum VideoTransferFunctionSrgb = 7
-    fromEnum VideoTransferFunctionGamma28 = 8
-    fromEnum VideoTransferFunctionLog100 = 9
-    fromEnum VideoTransferFunctionLog316 = 10
-    fromEnum VideoTransferFunctionBt202012 = 11
-    fromEnum VideoTransferFunctionAdobergb = 12
-    fromEnum (AnotherVideoTransferFunction k) = k
-
-    toEnum 0 = VideoTransferFunctionUnknown
-    toEnum 1 = VideoTransferFunctionGamma10
-    toEnum 2 = VideoTransferFunctionGamma18
-    toEnum 3 = VideoTransferFunctionGamma20
-    toEnum 4 = VideoTransferFunctionGamma22
-    toEnum 5 = VideoTransferFunctionBt709
-    toEnum 6 = VideoTransferFunctionSmpte240m
-    toEnum 7 = VideoTransferFunctionSrgb
-    toEnum 8 = VideoTransferFunctionGamma28
-    toEnum 9 = VideoTransferFunctionLog100
-    toEnum 10 = VideoTransferFunctionLog316
-    toEnum 11 = VideoTransferFunctionBt202012
-    toEnum 12 = VideoTransferFunctionAdobergb
-    toEnum k = AnotherVideoTransferFunction k
-
-instance P.Ord VideoTransferFunction where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_transfer_function_get_type" c_gst_video_transfer_function_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoTransferFunction where
-    boxedEnumType _ = c_gst_video_transfer_function_get_type
-
--- Enum VideoTileType
-{- |
-Enum value describing the most common tiling types.
--}
-data VideoTileType = 
-      VideoTileTypeIndexed
-    {- ^
-    Tiles are indexed. Use
-      gst_video_tile_get_index () to retrieve the tile at the requested
-      coordinates.
-    -}
-    | AnotherVideoTileType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoTileType where
-    fromEnum VideoTileTypeIndexed = 0
-    fromEnum (AnotherVideoTileType k) = k
-
-    toEnum 0 = VideoTileTypeIndexed
-    toEnum k = AnotherVideoTileType k
-
-instance P.Ord VideoTileType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_tile_type_get_type" c_gst_video_tile_type_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoTileType where
-    boxedEnumType _ = c_gst_video_tile_type_get_type
-
--- Enum VideoTileMode
-{- |
-Enum value describing the available tiling modes.
--}
-data VideoTileMode = 
-      VideoTileModeUnknown
-    {- ^
-    Unknown or unset tile mode
-    -}
-    | VideoTileModeZflipz2x2
-    {- ^
-    Every four adjacent blocks - two
-       horizontally and two vertically are grouped together and are located
-       in memory in Z or flipped Z order. In case of odd rows, the last row
-       of blocks is arranged in linear order.
-    -}
-    | AnotherVideoTileMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoTileMode where
-    fromEnum VideoTileModeUnknown = 0
-    fromEnum VideoTileModeZflipz2x2 = 65536
-    fromEnum (AnotherVideoTileMode k) = k
-
-    toEnum 0 = VideoTileModeUnknown
-    toEnum 65536 = VideoTileModeZflipz2x2
-    toEnum k = AnotherVideoTileMode k
-
-instance P.Ord VideoTileMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_tile_mode_get_type" c_gst_video_tile_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoTileMode where
-    boxedEnumType _ = c_gst_video_tile_mode_get_type
-
--- Enum VideoResamplerMethod
-{- |
-Different subsampling and upsampling methods
-
-/Since: 1.6/
--}
-data VideoResamplerMethod = 
-      VideoResamplerMethodNearest
-    {- ^
-    Duplicates the samples when
-       upsampling and drops when downsampling
-    -}
-    | VideoResamplerMethodLinear
-    {- ^
-    Uses linear interpolation to reconstruct
-       missing samples and averaging to downsample
-    -}
-    | VideoResamplerMethodCubic
-    {- ^
-    Uses cubic interpolation
-    -}
-    | VideoResamplerMethodSinc
-    {- ^
-    Uses sinc interpolation
-    -}
-    | VideoResamplerMethodLanczos
-    {- ^
-    Uses lanczos interpolation
-    -}
-    | AnotherVideoResamplerMethod Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoResamplerMethod where
-    fromEnum VideoResamplerMethodNearest = 0
-    fromEnum VideoResamplerMethodLinear = 1
-    fromEnum VideoResamplerMethodCubic = 2
-    fromEnum VideoResamplerMethodSinc = 3
-    fromEnum VideoResamplerMethodLanczos = 4
-    fromEnum (AnotherVideoResamplerMethod k) = k
-
-    toEnum 0 = VideoResamplerMethodNearest
-    toEnum 1 = VideoResamplerMethodLinear
-    toEnum 2 = VideoResamplerMethodCubic
-    toEnum 3 = VideoResamplerMethodSinc
-    toEnum 4 = VideoResamplerMethodLanczos
-    toEnum k = AnotherVideoResamplerMethod k
-
-instance P.Ord VideoResamplerMethod where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_resampler_method_get_type" c_gst_video_resampler_method_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoResamplerMethod where
-    boxedEnumType _ = c_gst_video_resampler_method_get_type
-
--- Enum VideoPrimariesMode
-{- |
-Different primaries conversion modes
-
-/Since: 1.6/
--}
-data VideoPrimariesMode = 
-      VideoPrimariesModeNone
-    {- ^
-    disable conversion between primaries
-    -}
-    | VideoPrimariesModeMergeOnly
-    {- ^
-    do conversion between primaries only
-      when it can be merged with color matrix conversion.
-    -}
-    | VideoPrimariesModeFast
-    {- ^
-    fast conversion between primaries
-    -}
-    | AnotherVideoPrimariesMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoPrimariesMode where
-    fromEnum VideoPrimariesModeNone = 0
-    fromEnum VideoPrimariesModeMergeOnly = 1
-    fromEnum VideoPrimariesModeFast = 2
-    fromEnum (AnotherVideoPrimariesMode k) = k
-
-    toEnum 0 = VideoPrimariesModeNone
-    toEnum 1 = VideoPrimariesModeMergeOnly
-    toEnum 2 = VideoPrimariesModeFast
-    toEnum k = AnotherVideoPrimariesMode k
-
-instance P.Ord VideoPrimariesMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_primaries_mode_get_type" c_gst_video_primaries_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoPrimariesMode where
-    boxedEnumType _ = c_gst_video_primaries_mode_get_type
-
--- Enum VideoOrientationMethod
-{- |
-The different video orientation methods.
-
-/Since: 1.10/
--}
-data VideoOrientationMethod = 
-      VideoOrientationMethodIdentity
-    {- ^
-    Identity (no rotation)
-    -}
-    | VideoOrientationMethod90r
-    {- ^
-    Rotate clockwise 90 degrees
-    -}
-    | VideoOrientationMethod180
-    {- ^
-    Rotate 180 degrees
-    -}
-    | VideoOrientationMethod90l
-    {- ^
-    Rotate counter-clockwise 90 degrees
-    -}
-    | VideoOrientationMethodHoriz
-    {- ^
-    Flip horizontally
-    -}
-    | VideoOrientationMethodVert
-    {- ^
-    Flip vertically
-    -}
-    | VideoOrientationMethodUlLr
-    {- ^
-    Flip across upper left\/lower right diagonal
-    -}
-    | VideoOrientationMethodUrLl
-    {- ^
-    Flip across upper right\/lower left diagonal
-    -}
-    | VideoOrientationMethodAuto
-    {- ^
-    Select flip method based on image-orientation tag
-    -}
-    | VideoOrientationMethodCustom
-    {- ^
-    Current status depends on plugin internal setup
-    -}
-    | AnotherVideoOrientationMethod Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoOrientationMethod where
-    fromEnum VideoOrientationMethodIdentity = 0
-    fromEnum VideoOrientationMethod90r = 1
-    fromEnum VideoOrientationMethod180 = 2
-    fromEnum VideoOrientationMethod90l = 3
-    fromEnum VideoOrientationMethodHoriz = 4
-    fromEnum VideoOrientationMethodVert = 5
-    fromEnum VideoOrientationMethodUlLr = 6
-    fromEnum VideoOrientationMethodUrLl = 7
-    fromEnum VideoOrientationMethodAuto = 8
-    fromEnum VideoOrientationMethodCustom = 9
-    fromEnum (AnotherVideoOrientationMethod k) = k
-
-    toEnum 0 = VideoOrientationMethodIdentity
-    toEnum 1 = VideoOrientationMethod90r
-    toEnum 2 = VideoOrientationMethod180
-    toEnum 3 = VideoOrientationMethod90l
-    toEnum 4 = VideoOrientationMethodHoriz
-    toEnum 5 = VideoOrientationMethodVert
-    toEnum 6 = VideoOrientationMethodUlLr
-    toEnum 7 = VideoOrientationMethodUrLl
-    toEnum 8 = VideoOrientationMethodAuto
-    toEnum 9 = VideoOrientationMethodCustom
-    toEnum k = AnotherVideoOrientationMethod k
-
-instance P.Ord VideoOrientationMethod where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_orientation_method_get_type" c_gst_video_orientation_method_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoOrientationMethod where
-    boxedEnumType _ = c_gst_video_orientation_method_get_type
-
--- Enum VideoMultiviewMode
-{- |
-All possible stereoscopic 3D and multiview representations.
-In conjunction with 'GI.GstVideo.Flags.VideoMultiviewFlags', describes how
-multiview content is being transported in the stream.
--}
-data VideoMultiviewMode = 
-      VideoMultiviewModeNone
-    {- ^
-    A special value indicating
-    no multiview information. Used in GstVideoInfo and other places to
-    indicate that no specific multiview handling has been requested or
-    provided. This value is never carried on caps.
-    -}
-    | VideoMultiviewModeMono
-    {- ^
-    All frames are monoscopic.
-    -}
-    | VideoMultiviewModeLeft
-    {- ^
-    All frames represent a left-eye view.
-    -}
-    | VideoMultiviewModeRight
-    {- ^
-    All frames represent a right-eye view.
-    -}
-    | VideoMultiviewModeSideBySide
-    {- ^
-    Left and right eye views are
-    provided in the left and right half of the frame respectively.
-    -}
-    | VideoMultiviewModeSideBySideQuincunx
-    {- ^
-    Left and right eye
-    views are provided in the left and right half of the frame, but
-    have been sampled using quincunx method, with half-pixel offset
-    between the 2 views.
-    -}
-    | VideoMultiviewModeColumnInterleaved
-    {- ^
-    Alternating vertical
-    columns of pixels represent the left and right eye view respectively.
-    -}
-    | VideoMultiviewModeRowInterleaved
-    {- ^
-    Alternating horizontal
-    rows of pixels represent the left and right eye view respectively.
-    -}
-    | VideoMultiviewModeTopBottom
-    {- ^
-    The top half of the frame
-    contains the left eye, and the bottom half the right eye.
-    -}
-    | VideoMultiviewModeCheckerboard
-    {- ^
-    Pixels are arranged with
-    alternating pixels representing left and right eye views in a
-    checkerboard fashion.
-    -}
-    | VideoMultiviewModeFrameByFrame
-    {- ^
-    Left and right eye views
-    are provided in separate frames alternately.
-    -}
-    | VideoMultiviewModeMultiviewFrameByFrame
-    {- ^
-    Multiple
-    independent views are provided in separate frames in sequence.
-    This method only applies to raw video buffers at the moment.
-    Specific view identification is via the @/GstVideoMultiviewMeta/@
-    and 'GI.GstVideo.Structs.VideoMeta.VideoMeta'(s) on raw video buffers.
-    -}
-    | VideoMultiviewModeSeparated
-    {- ^
-    Multiple views are
-    provided as separate 'GI.Gst.Structs.Memory.Memory' framebuffers attached to each
-    'GI.Gst.Structs.Buffer.Buffer', described by the @/GstVideoMultiviewMeta/@
-    and 'GI.GstVideo.Structs.VideoMeta.VideoMeta'(s)
-    -}
-    | AnotherVideoMultiviewMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoMultiviewMode where
-    fromEnum VideoMultiviewModeNone = -1
-    fromEnum VideoMultiviewModeMono = 0
-    fromEnum VideoMultiviewModeLeft = 1
-    fromEnum VideoMultiviewModeRight = 2
-    fromEnum VideoMultiviewModeSideBySide = 3
-    fromEnum VideoMultiviewModeSideBySideQuincunx = 4
-    fromEnum VideoMultiviewModeColumnInterleaved = 5
-    fromEnum VideoMultiviewModeRowInterleaved = 6
-    fromEnum VideoMultiviewModeTopBottom = 7
-    fromEnum VideoMultiviewModeCheckerboard = 8
-    fromEnum VideoMultiviewModeFrameByFrame = 32
-    fromEnum VideoMultiviewModeMultiviewFrameByFrame = 33
-    fromEnum VideoMultiviewModeSeparated = 34
-    fromEnum (AnotherVideoMultiviewMode k) = k
-
-    toEnum -1 = VideoMultiviewModeNone
-    toEnum 0 = VideoMultiviewModeMono
-    toEnum 1 = VideoMultiviewModeLeft
-    toEnum 2 = VideoMultiviewModeRight
-    toEnum 3 = VideoMultiviewModeSideBySide
-    toEnum 4 = VideoMultiviewModeSideBySideQuincunx
-    toEnum 5 = VideoMultiviewModeColumnInterleaved
-    toEnum 6 = VideoMultiviewModeRowInterleaved
-    toEnum 7 = VideoMultiviewModeTopBottom
-    toEnum 8 = VideoMultiviewModeCheckerboard
-    toEnum 32 = VideoMultiviewModeFrameByFrame
-    toEnum 33 = VideoMultiviewModeMultiviewFrameByFrame
-    toEnum 34 = VideoMultiviewModeSeparated
-    toEnum k = AnotherVideoMultiviewMode k
-
-instance P.Ord VideoMultiviewMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_multiview_mode_get_type" c_gst_video_multiview_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoMultiviewMode where
-    boxedEnumType _ = c_gst_video_multiview_mode_get_type
-
--- Enum VideoMultiviewFramePacking
-{- |
-'GI.GstVideo.Enums.VideoMultiviewFramePacking' represents the subset of 'GI.GstVideo.Enums.VideoMultiviewMode'
-values that can be applied to any video frame without needing extra metadata.
-It can be used by elements that provide a property to override the
-multiview interpretation of a video stream when the video doesn\'t contain
-any markers.
-
-This enum is used (for example) on playbin, to re-interpret a played
-video stream as a stereoscopic video. The individual enum values are
-equivalent to and have the same value as the matching 'GI.GstVideo.Enums.VideoMultiviewMode'.
--}
-data VideoMultiviewFramePacking = 
-      VideoMultiviewFramePackingNone
-    {- ^
-    A special value indicating
-    no frame packing info.
-    -}
-    | VideoMultiviewFramePackingMono
-    {- ^
-    All frames are monoscopic.
-    -}
-    | VideoMultiviewFramePackingLeft
-    {- ^
-    All frames represent a left-eye view.
-    -}
-    | VideoMultiviewFramePackingRight
-    {- ^
-    All frames represent a right-eye view.
-    -}
-    | VideoMultiviewFramePackingSideBySide
-    {- ^
-    Left and right eye views are
-    provided in the left and right half of the frame respectively.
-    -}
-    | VideoMultiviewFramePackingSideBySideQuincunx
-    {- ^
-    Left and right eye
-    views are provided in the left and right half of the frame, but
-    have been sampled using quincunx method, with half-pixel offset
-    between the 2 views.
-    -}
-    | VideoMultiviewFramePackingColumnInterleaved
-    {- ^
-    Alternating vertical
-    columns of pixels represent the left and right eye view respectively.
-    -}
-    | VideoMultiviewFramePackingRowInterleaved
-    {- ^
-    Alternating horizontal
-    rows of pixels represent the left and right eye view respectively.
-    -}
-    | VideoMultiviewFramePackingTopBottom
-    {- ^
-    The top half of the frame
-    contains the left eye, and the bottom half the right eye.
-    -}
-    | VideoMultiviewFramePackingCheckerboard
-    {- ^
-    Pixels are arranged with
-    alternating pixels representing left and right eye views in a
-    checkerboard fashion.
-    -}
-    | AnotherVideoMultiviewFramePacking Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoMultiviewFramePacking where
-    fromEnum VideoMultiviewFramePackingNone = -1
-    fromEnum VideoMultiviewFramePackingMono = 0
-    fromEnum VideoMultiviewFramePackingLeft = 1
-    fromEnum VideoMultiviewFramePackingRight = 2
-    fromEnum VideoMultiviewFramePackingSideBySide = 3
-    fromEnum VideoMultiviewFramePackingSideBySideQuincunx = 4
-    fromEnum VideoMultiviewFramePackingColumnInterleaved = 5
-    fromEnum VideoMultiviewFramePackingRowInterleaved = 6
-    fromEnum VideoMultiviewFramePackingTopBottom = 7
-    fromEnum VideoMultiviewFramePackingCheckerboard = 8
-    fromEnum (AnotherVideoMultiviewFramePacking k) = k
-
-    toEnum -1 = VideoMultiviewFramePackingNone
-    toEnum 0 = VideoMultiviewFramePackingMono
-    toEnum 1 = VideoMultiviewFramePackingLeft
-    toEnum 2 = VideoMultiviewFramePackingRight
-    toEnum 3 = VideoMultiviewFramePackingSideBySide
-    toEnum 4 = VideoMultiviewFramePackingSideBySideQuincunx
-    toEnum 5 = VideoMultiviewFramePackingColumnInterleaved
-    toEnum 6 = VideoMultiviewFramePackingRowInterleaved
-    toEnum 7 = VideoMultiviewFramePackingTopBottom
-    toEnum 8 = VideoMultiviewFramePackingCheckerboard
-    toEnum k = AnotherVideoMultiviewFramePacking k
-
-instance P.Ord VideoMultiviewFramePacking where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_multiview_frame_packing_get_type" c_gst_video_multiview_frame_packing_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoMultiviewFramePacking where
-    boxedEnumType _ = c_gst_video_multiview_frame_packing_get_type
-
--- Enum VideoMatrixMode
-{- |
-Different color matrix conversion modes
-
-/Since: 1.6/
--}
-data VideoMatrixMode = 
-      VideoMatrixModeFull
-    {- ^
-    do conversion between color matrices
-    -}
-    | VideoMatrixModeInputOnly
-    {- ^
-    use the input color matrix to convert
-      to and from R\'G\'B
-    -}
-    | VideoMatrixModeOutputOnly
-    {- ^
-    use the output color matrix to convert
-      to and from R\'G\'B
-    -}
-    | VideoMatrixModeNone
-    {- ^
-    disable color matrix conversion.
-    -}
-    | AnotherVideoMatrixMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoMatrixMode where
-    fromEnum VideoMatrixModeFull = 0
-    fromEnum VideoMatrixModeInputOnly = 1
-    fromEnum VideoMatrixModeOutputOnly = 2
-    fromEnum VideoMatrixModeNone = 3
-    fromEnum (AnotherVideoMatrixMode k) = k
-
-    toEnum 0 = VideoMatrixModeFull
-    toEnum 1 = VideoMatrixModeInputOnly
-    toEnum 2 = VideoMatrixModeOutputOnly
-    toEnum 3 = VideoMatrixModeNone
-    toEnum k = AnotherVideoMatrixMode k
-
-instance P.Ord VideoMatrixMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_matrix_mode_get_type" c_gst_video_matrix_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoMatrixMode where
-    boxedEnumType _ = c_gst_video_matrix_mode_get_type
-
--- Enum VideoInterlaceMode
-{- |
-The possible values of the 'GI.GstVideo.Enums.VideoInterlaceMode' describing the interlace
-mode of the stream.
--}
-data VideoInterlaceMode = 
-      VideoInterlaceModeProgressive
-    {- ^
-    all frames are progressive
-    -}
-    | VideoInterlaceModeInterleaved
-    {- ^
-    2 fields are interleaved in one video
-        frame. Extra buffer flags describe the field order.
-    -}
-    | VideoInterlaceModeMixed
-    {- ^
-    frames contains both interlaced and
-        progressive video, the buffer flags describe the frame and fields.
-    -}
-    | VideoInterlaceModeFields
-    {- ^
-    2 fields are stored in one buffer, use the
-        frame ID to get access to the required field. For multiview (the
-        \'views\' property > 1) the fields of view N can be found at frame ID
-        (N * 2) and (N * 2) + 1.
-        Each field has only half the amount of lines as noted in the
-        height property. This mode requires multiple GstVideoMeta metadata
-        to describe the fields.
-    -}
-    | VideoInterlaceModeAlternate
-    {- ^
-    1 field is stored in one buffer,
-        /@gSTVIDEOBUFFERFLAGTF@/ or /@gSTVIDEOBUFFERFLAGBF@/ indicates if
-        the buffer is carrying the top or bottom field, respectively. The top and
-        bottom buffers are expected to alternate in the pipeline, with this mode
-        (Since: 1.16).
-    -}
-    | AnotherVideoInterlaceMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoInterlaceMode where
-    fromEnum VideoInterlaceModeProgressive = 0
-    fromEnum VideoInterlaceModeInterleaved = 1
-    fromEnum VideoInterlaceModeMixed = 2
-    fromEnum VideoInterlaceModeFields = 3
-    fromEnum VideoInterlaceModeAlternate = 4
-    fromEnum (AnotherVideoInterlaceMode k) = k
-
-    toEnum 0 = VideoInterlaceModeProgressive
-    toEnum 1 = VideoInterlaceModeInterleaved
-    toEnum 2 = VideoInterlaceModeMixed
-    toEnum 3 = VideoInterlaceModeFields
-    toEnum 4 = VideoInterlaceModeAlternate
-    toEnum k = AnotherVideoInterlaceMode k
-
-instance P.Ord VideoInterlaceMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_interlace_mode_get_type" c_gst_video_interlace_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoInterlaceMode where
-    boxedEnumType _ = c_gst_video_interlace_mode_get_type
-
--- Enum VideoGammaMode
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-data VideoGammaMode = 
-      VideoGammaModeNone
-    {- ^
-    disable gamma handling
-    -}
-    | VideoGammaModeRemap
-    {- ^
-    convert between input and output gamma
-    Different gamma conversion modes
-    -}
-    | AnotherVideoGammaMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoGammaMode where
-    fromEnum VideoGammaModeNone = 0
-    fromEnum VideoGammaModeRemap = 1
-    fromEnum (AnotherVideoGammaMode k) = k
-
-    toEnum 0 = VideoGammaModeNone
-    toEnum 1 = VideoGammaModeRemap
-    toEnum k = AnotherVideoGammaMode k
-
-instance P.Ord VideoGammaMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_gamma_mode_get_type" c_gst_video_gamma_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoGammaMode where
-    boxedEnumType _ = c_gst_video_gamma_mode_get_type
-
--- Enum VideoGLTextureType
-{- |
-The GL texture type.
--}
-data VideoGLTextureType = 
-      VideoGLTextureTypeLuminance
-    {- ^
-    Luminance texture, GL_LUMINANCE
-    -}
-    | VideoGLTextureTypeLuminanceAlpha
-    {- ^
-    Luminance-alpha texture, GL_LUMINANCE_ALPHA
-    -}
-    | VideoGLTextureTypeRgb16
-    {- ^
-    RGB 565 texture, GL_RGB
-    -}
-    | VideoGLTextureTypeRgb
-    {- ^
-    RGB texture, GL_RGB
-    -}
-    | VideoGLTextureTypeRgba
-    {- ^
-    RGBA texture, GL_RGBA
-    -}
-    | VideoGLTextureTypeR
-    {- ^
-    R texture, GL_RED_EXT
-    -}
-    | VideoGLTextureTypeRg
-    {- ^
-    RG texture, GL_RG_EXT
-    -}
-    | AnotherVideoGLTextureType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoGLTextureType where
-    fromEnum VideoGLTextureTypeLuminance = 0
-    fromEnum VideoGLTextureTypeLuminanceAlpha = 1
-    fromEnum VideoGLTextureTypeRgb16 = 2
-    fromEnum VideoGLTextureTypeRgb = 3
-    fromEnum VideoGLTextureTypeRgba = 4
-    fromEnum VideoGLTextureTypeR = 5
-    fromEnum VideoGLTextureTypeRg = 6
-    fromEnum (AnotherVideoGLTextureType k) = k
-
-    toEnum 0 = VideoGLTextureTypeLuminance
-    toEnum 1 = VideoGLTextureTypeLuminanceAlpha
-    toEnum 2 = VideoGLTextureTypeRgb16
-    toEnum 3 = VideoGLTextureTypeRgb
-    toEnum 4 = VideoGLTextureTypeRgba
-    toEnum 5 = VideoGLTextureTypeR
-    toEnum 6 = VideoGLTextureTypeRg
-    toEnum k = AnotherVideoGLTextureType k
-
-instance P.Ord VideoGLTextureType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
--- Enum VideoGLTextureOrientation
-{- |
-The orientation of the GL texture.
--}
-data VideoGLTextureOrientation = 
-      VideoGLTextureOrientationNormalYNormal
-    {- ^
-    Top line first in memory, left row first
-    -}
-    | VideoGLTextureOrientationNormalYFlip
-    {- ^
-    Bottom line first in memory, left row first
-    -}
-    | VideoGLTextureOrientationFlipYNormal
-    {- ^
-    Top line first in memory, right row first
-    -}
-    | VideoGLTextureOrientationFlipYFlip
-    {- ^
-    Bottom line first in memory, right row first
-    -}
-    | AnotherVideoGLTextureOrientation Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoGLTextureOrientation where
-    fromEnum VideoGLTextureOrientationNormalYNormal = 0
-    fromEnum VideoGLTextureOrientationNormalYFlip = 1
-    fromEnum VideoGLTextureOrientationFlipYNormal = 2
-    fromEnum VideoGLTextureOrientationFlipYFlip = 3
-    fromEnum (AnotherVideoGLTextureOrientation k) = k
-
-    toEnum 0 = VideoGLTextureOrientationNormalYNormal
-    toEnum 1 = VideoGLTextureOrientationNormalYFlip
-    toEnum 2 = VideoGLTextureOrientationFlipYNormal
-    toEnum 3 = VideoGLTextureOrientationFlipYFlip
-    toEnum k = AnotherVideoGLTextureOrientation k
-
-instance P.Ord VideoGLTextureOrientation where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
--- Enum VideoFormat
-{- |
-Enum value describing the most common video formats.
-
-See the <https://gstreamer.freedesktop.org/documentation/design/mediatype-video-raw.html#formats GStreamer raw video format design document>
-for details about the layout and packing of these formats in memory.
--}
-data VideoFormat = 
-      VideoFormatUnknown
-    {- ^
-    Unknown or unset video format id
-    -}
-    | VideoFormatEncoded
-    {- ^
-    Encoded video format. Only ever use that in caps for
-                               special video formats in combination with non-system
-                               memory GstCapsFeatures where it does not make sense
-                               to specify a real video format.
-    -}
-    | VideoFormatI420
-    {- ^
-    planar 4:2:0 YUV
-    -}
-    | VideoFormatYv12
-    {- ^
-    planar 4:2:0 YVU (like I420 but UV planes swapped)
-    -}
-    | VideoFormatYuy2
-    {- ^
-    packed 4:2:2 YUV (Y0-U0-Y1-V0 Y2-U2-Y3-V2 Y4 ...)
-    -}
-    | VideoFormatUyvy
-    {- ^
-    packed 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...)
-    -}
-    | VideoFormatAyuv
-    {- ^
-    packed 4:4:4 YUV with alpha channel (A0-Y0-U0-V0 ...)
-    -}
-    | VideoFormatRgbx
-    {- ^
-    sparse rgb packed into 32 bit, space last
-    -}
-    | VideoFormatBgrx
-    {- ^
-    sparse reverse rgb packed into 32 bit, space last
-    -}
-    | VideoFormatXrgb
-    {- ^
-    sparse rgb packed into 32 bit, space first
-    -}
-    | VideoFormatXbgr
-    {- ^
-    sparse reverse rgb packed into 32 bit, space first
-    -}
-    | VideoFormatRgba
-    {- ^
-    rgb with alpha channel last
-    -}
-    | VideoFormatBgra
-    {- ^
-    reverse rgb with alpha channel last
-    -}
-    | VideoFormatArgb
-    {- ^
-    rgb with alpha channel first
-    -}
-    | VideoFormatAbgr
-    {- ^
-    reverse rgb with alpha channel first
-    -}
-    | VideoFormatRgb
-    {- ^
-    RGB packed into 24 bits without padding (@R-G-B-R-G-B@)
-    -}
-    | VideoFormatBgr
-    {- ^
-    reverse RGB packed into 24 bits without padding (@B-G-R-B-G-R@)
-    -}
-    | VideoFormatY41b
-    {- ^
-    planar 4:1:1 YUV
-    -}
-    | VideoFormatY42b
-    {- ^
-    planar 4:2:2 YUV
-    -}
-    | VideoFormatYvyu
-    {- ^
-    packed 4:2:2 YUV (Y0-V0-Y1-U0 Y2-V2-Y3-U2 Y4 ...)
-    -}
-    | VideoFormatY444
-    {- ^
-    planar 4:4:4 YUV
-    -}
-    | VideoFormatV210
-    {- ^
-    packed 4:2:2 10-bit YUV, complex format
-    -}
-    | VideoFormatV216
-    {- ^
-    packed 4:2:2 16-bit YUV, Y0-U0-Y1-V1 order
-    -}
-    | VideoFormatNv12
-    {- ^
-    planar 4:2:0 YUV with interleaved UV plane
-    -}
-    | VideoFormatNv21
-    {- ^
-    planar 4:2:0 YUV with interleaved VU plane
-    -}
-    | VideoFormatGray8
-    {- ^
-    8-bit grayscale
-    -}
-    | VideoFormatGray16Be
-    {- ^
-    16-bit grayscale, most significant byte first
-    -}
-    | VideoFormatGray16Le
-    {- ^
-    16-bit grayscale, least significant byte first
-    -}
-    | VideoFormatV308
-    {- ^
-    packed 4:4:4 YUV (Y-U-V ...)
-    -}
-    | VideoFormatRgb16
-    {- ^
-    rgb 5-6-5 bits per component
-    -}
-    | VideoFormatBgr16
-    {- ^
-    reverse rgb 5-6-5 bits per component
-    -}
-    | VideoFormatRgb15
-    {- ^
-    rgb 5-5-5 bits per component
-    -}
-    | VideoFormatBgr15
-    {- ^
-    reverse rgb 5-5-5 bits per component
-    -}
-    | VideoFormatUyvp
-    {- ^
-    packed 10-bit 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...)
-    -}
-    | VideoFormatA420
-    {- ^
-    planar 4:4:2:0 AYUV
-    -}
-    | VideoFormatRgb8p
-    {- ^
-    8-bit paletted RGB
-    -}
-    | VideoFormatYuv9
-    {- ^
-    planar 4:1:0 YUV
-    -}
-    | VideoFormatYvu9
-    {- ^
-    planar 4:1:0 YUV (like YUV9 but UV planes swapped)
-    -}
-    | VideoFormatIyu1
-    {- ^
-    packed 4:1:1 YUV (Cb-Y0-Y1-Cr-Y2-Y3 ...)
-    -}
-    | VideoFormatArgb64
-    {- ^
-    rgb with alpha channel first, 16 bits per channel
-    -}
-    | VideoFormatAyuv64
-    {- ^
-    packed 4:4:4 YUV with alpha channel, 16 bits per channel (A0-Y0-U0-V0 ...)
-    -}
-    | VideoFormatR210
-    {- ^
-    packed 4:4:4 RGB, 10 bits per channel
-    -}
-    | VideoFormatI42010be
-    {- ^
-    planar 4:2:0 YUV, 10 bits per channel
-    -}
-    | VideoFormatI42010le
-    {- ^
-    planar 4:2:0 YUV, 10 bits per channel
-    -}
-    | VideoFormatI42210be
-    {- ^
-    planar 4:2:2 YUV, 10 bits per channel
-    -}
-    | VideoFormatI42210le
-    {- ^
-    planar 4:2:2 YUV, 10 bits per channel
-    -}
-    | VideoFormatY44410be
-    {- ^
-    planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)
-    -}
-    | VideoFormatY44410le
-    {- ^
-    planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)
-    -}
-    | VideoFormatGbr
-    {- ^
-    planar 4:4:4 RGB, 8 bits per channel (Since: 1.2)
-    -}
-    | VideoFormatGbr10be
-    {- ^
-    planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)
-    -}
-    | VideoFormatGbr10le
-    {- ^
-    planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)
-    -}
-    | VideoFormatNv16
-    {- ^
-    planar 4:2:2 YUV with interleaved UV plane (Since: 1.2)
-    -}
-    | VideoFormatNv24
-    {- ^
-    planar 4:4:4 YUV with interleaved UV plane (Since: 1.2)
-    -}
-    | VideoFormatNv1264z32
-    {- ^
-    NV12 with 64x32 tiling in zigzag pattern (Since: 1.4)
-    -}
-    | VideoFormatA42010be
-    {- ^
-    planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)
-    -}
-    | VideoFormatA42010le
-    {- ^
-    planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)
-    -}
-    | VideoFormatA42210be
-    {- ^
-    planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)
-    -}
-    | VideoFormatA42210le
-    {- ^
-    planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)
-    -}
-    | VideoFormatA44410be
-    {- ^
-    planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)
-    -}
-    | VideoFormatA44410le
-    {- ^
-    planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)
-    -}
-    | VideoFormatNv61
-    {- ^
-    planar 4:2:2 YUV with interleaved VU plane (Since: 1.6)
-    -}
-    | VideoFormatP01010be
-    {- ^
-    planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)
-    -}
-    | VideoFormatP01010le
-    {- ^
-    planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)
-    -}
-    | VideoFormatIyu2
-    {- ^
-    packed 4:4:4 YUV (U-Y-V ...) (Since 1.10)
-    -}
-    | VideoFormatVyuy
-    {- ^
-    packed 4:2:2 YUV (V0-Y0-U0-Y1 V2-Y2-U2-Y3 V4 ...)
-    -}
-    | VideoFormatGbra
-    {- ^
-    planar 4:4:4:4 ARGB, 8 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGbra10be
-    {- ^
-    planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGbra10le
-    {- ^
-    planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGbr12be
-    {- ^
-    planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGbr12le
-    {- ^
-    planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGbra12be
-    {- ^
-    planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGbra12le
-    {- ^
-    planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatI42012be
-    {- ^
-    planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatI42012le
-    {- ^
-    planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatI42212be
-    {- ^
-    planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatI42212le
-    {- ^
-    planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatY44412be
-    {- ^
-    planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatY44412le
-    {- ^
-    planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)
-    -}
-    | VideoFormatGray10Le32
-    {- ^
-    10-bit grayscale, packed into 32bit words (2 bits padding) (Since: 1.14)
-    -}
-    | VideoFormatNv1210le32
-    {- ^
-    10-bit variant of /@gSTVIDEOFORMATNV12@/, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)
-    -}
-    | VideoFormatNv1610le32
-    {- ^
-    10-bit variant of /@gSTVIDEOFORMATNV16@/, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)
-    -}
-    | VideoFormatNv1210le40
-    {- ^
-    Fully packed variant of NV12_10LE32 (Since: 1.16)
-    -}
-    | VideoFormatY210
-    {- ^
-    packed 4:2:2 YUV, 10 bits per channel (Since: 1.16)
-    -}
-    | VideoFormatY410
-    {- ^
-    packed 4:4:4 YUV, 10 bits per channel(A-V-Y-U...) (Since: 1.16)
-    -}
-    | VideoFormatVuya
-    {- ^
-    packed 4:4:4 YUV with alpha channel (V0-U0-Y0-A0...) (Since: 1.16)
-    -}
-    | VideoFormatBgr10a2Le
-    {- ^
-    packed 4:4:4 RGB with alpha channel(B-G-R-A), 10 bits for R\/G\/B channel and MSB 2 bits for alpha channel (Since: 1.16)
-    -}
-    | AnotherVideoFormat Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoFormat where
-    fromEnum VideoFormatUnknown = 0
-    fromEnum VideoFormatEncoded = 1
-    fromEnum VideoFormatI420 = 2
-    fromEnum VideoFormatYv12 = 3
-    fromEnum VideoFormatYuy2 = 4
-    fromEnum VideoFormatUyvy = 5
-    fromEnum VideoFormatAyuv = 6
-    fromEnum VideoFormatRgbx = 7
-    fromEnum VideoFormatBgrx = 8
-    fromEnum VideoFormatXrgb = 9
-    fromEnum VideoFormatXbgr = 10
-    fromEnum VideoFormatRgba = 11
-    fromEnum VideoFormatBgra = 12
-    fromEnum VideoFormatArgb = 13
-    fromEnum VideoFormatAbgr = 14
-    fromEnum VideoFormatRgb = 15
-    fromEnum VideoFormatBgr = 16
-    fromEnum VideoFormatY41b = 17
-    fromEnum VideoFormatY42b = 18
-    fromEnum VideoFormatYvyu = 19
-    fromEnum VideoFormatY444 = 20
-    fromEnum VideoFormatV210 = 21
-    fromEnum VideoFormatV216 = 22
-    fromEnum VideoFormatNv12 = 23
-    fromEnum VideoFormatNv21 = 24
-    fromEnum VideoFormatGray8 = 25
-    fromEnum VideoFormatGray16Be = 26
-    fromEnum VideoFormatGray16Le = 27
-    fromEnum VideoFormatV308 = 28
-    fromEnum VideoFormatRgb16 = 29
-    fromEnum VideoFormatBgr16 = 30
-    fromEnum VideoFormatRgb15 = 31
-    fromEnum VideoFormatBgr15 = 32
-    fromEnum VideoFormatUyvp = 33
-    fromEnum VideoFormatA420 = 34
-    fromEnum VideoFormatRgb8p = 35
-    fromEnum VideoFormatYuv9 = 36
-    fromEnum VideoFormatYvu9 = 37
-    fromEnum VideoFormatIyu1 = 38
-    fromEnum VideoFormatArgb64 = 39
-    fromEnum VideoFormatAyuv64 = 40
-    fromEnum VideoFormatR210 = 41
-    fromEnum VideoFormatI42010be = 42
-    fromEnum VideoFormatI42010le = 43
-    fromEnum VideoFormatI42210be = 44
-    fromEnum VideoFormatI42210le = 45
-    fromEnum VideoFormatY44410be = 46
-    fromEnum VideoFormatY44410le = 47
-    fromEnum VideoFormatGbr = 48
-    fromEnum VideoFormatGbr10be = 49
-    fromEnum VideoFormatGbr10le = 50
-    fromEnum VideoFormatNv16 = 51
-    fromEnum VideoFormatNv24 = 52
-    fromEnum VideoFormatNv1264z32 = 53
-    fromEnum VideoFormatA42010be = 54
-    fromEnum VideoFormatA42010le = 55
-    fromEnum VideoFormatA42210be = 56
-    fromEnum VideoFormatA42210le = 57
-    fromEnum VideoFormatA44410be = 58
-    fromEnum VideoFormatA44410le = 59
-    fromEnum VideoFormatNv61 = 60
-    fromEnum VideoFormatP01010be = 61
-    fromEnum VideoFormatP01010le = 62
-    fromEnum VideoFormatIyu2 = 63
-    fromEnum VideoFormatVyuy = 64
-    fromEnum VideoFormatGbra = 65
-    fromEnum VideoFormatGbra10be = 66
-    fromEnum VideoFormatGbra10le = 67
-    fromEnum VideoFormatGbr12be = 68
-    fromEnum VideoFormatGbr12le = 69
-    fromEnum VideoFormatGbra12be = 70
-    fromEnum VideoFormatGbra12le = 71
-    fromEnum VideoFormatI42012be = 72
-    fromEnum VideoFormatI42012le = 73
-    fromEnum VideoFormatI42212be = 74
-    fromEnum VideoFormatI42212le = 75
-    fromEnum VideoFormatY44412be = 76
-    fromEnum VideoFormatY44412le = 77
-    fromEnum VideoFormatGray10Le32 = 78
-    fromEnum VideoFormatNv1210le32 = 79
-    fromEnum VideoFormatNv1610le32 = 80
-    fromEnum VideoFormatNv1210le40 = 81
-    fromEnum VideoFormatY210 = 82
-    fromEnum VideoFormatY410 = 83
-    fromEnum VideoFormatVuya = 84
-    fromEnum VideoFormatBgr10a2Le = 85
-    fromEnum (AnotherVideoFormat k) = k
-
-    toEnum 0 = VideoFormatUnknown
-    toEnum 1 = VideoFormatEncoded
-    toEnum 2 = VideoFormatI420
-    toEnum 3 = VideoFormatYv12
-    toEnum 4 = VideoFormatYuy2
-    toEnum 5 = VideoFormatUyvy
-    toEnum 6 = VideoFormatAyuv
-    toEnum 7 = VideoFormatRgbx
-    toEnum 8 = VideoFormatBgrx
-    toEnum 9 = VideoFormatXrgb
-    toEnum 10 = VideoFormatXbgr
-    toEnum 11 = VideoFormatRgba
-    toEnum 12 = VideoFormatBgra
-    toEnum 13 = VideoFormatArgb
-    toEnum 14 = VideoFormatAbgr
-    toEnum 15 = VideoFormatRgb
-    toEnum 16 = VideoFormatBgr
-    toEnum 17 = VideoFormatY41b
-    toEnum 18 = VideoFormatY42b
-    toEnum 19 = VideoFormatYvyu
-    toEnum 20 = VideoFormatY444
-    toEnum 21 = VideoFormatV210
-    toEnum 22 = VideoFormatV216
-    toEnum 23 = VideoFormatNv12
-    toEnum 24 = VideoFormatNv21
-    toEnum 25 = VideoFormatGray8
-    toEnum 26 = VideoFormatGray16Be
-    toEnum 27 = VideoFormatGray16Le
-    toEnum 28 = VideoFormatV308
-    toEnum 29 = VideoFormatRgb16
-    toEnum 30 = VideoFormatBgr16
-    toEnum 31 = VideoFormatRgb15
-    toEnum 32 = VideoFormatBgr15
-    toEnum 33 = VideoFormatUyvp
-    toEnum 34 = VideoFormatA420
-    toEnum 35 = VideoFormatRgb8p
-    toEnum 36 = VideoFormatYuv9
-    toEnum 37 = VideoFormatYvu9
-    toEnum 38 = VideoFormatIyu1
-    toEnum 39 = VideoFormatArgb64
-    toEnum 40 = VideoFormatAyuv64
-    toEnum 41 = VideoFormatR210
-    toEnum 42 = VideoFormatI42010be
-    toEnum 43 = VideoFormatI42010le
-    toEnum 44 = VideoFormatI42210be
-    toEnum 45 = VideoFormatI42210le
-    toEnum 46 = VideoFormatY44410be
-    toEnum 47 = VideoFormatY44410le
-    toEnum 48 = VideoFormatGbr
-    toEnum 49 = VideoFormatGbr10be
-    toEnum 50 = VideoFormatGbr10le
-    toEnum 51 = VideoFormatNv16
-    toEnum 52 = VideoFormatNv24
-    toEnum 53 = VideoFormatNv1264z32
-    toEnum 54 = VideoFormatA42010be
-    toEnum 55 = VideoFormatA42010le
-    toEnum 56 = VideoFormatA42210be
-    toEnum 57 = VideoFormatA42210le
-    toEnum 58 = VideoFormatA44410be
-    toEnum 59 = VideoFormatA44410le
-    toEnum 60 = VideoFormatNv61
-    toEnum 61 = VideoFormatP01010be
-    toEnum 62 = VideoFormatP01010le
-    toEnum 63 = VideoFormatIyu2
-    toEnum 64 = VideoFormatVyuy
-    toEnum 65 = VideoFormatGbra
-    toEnum 66 = VideoFormatGbra10be
-    toEnum 67 = VideoFormatGbra10le
-    toEnum 68 = VideoFormatGbr12be
-    toEnum 69 = VideoFormatGbr12le
-    toEnum 70 = VideoFormatGbra12be
-    toEnum 71 = VideoFormatGbra12le
-    toEnum 72 = VideoFormatI42012be
-    toEnum 73 = VideoFormatI42012le
-    toEnum 74 = VideoFormatI42212be
-    toEnum 75 = VideoFormatI42212le
-    toEnum 76 = VideoFormatY44412be
-    toEnum 77 = VideoFormatY44412le
-    toEnum 78 = VideoFormatGray10Le32
-    toEnum 79 = VideoFormatNv1210le32
-    toEnum 80 = VideoFormatNv1610le32
-    toEnum 81 = VideoFormatNv1210le40
-    toEnum 82 = VideoFormatY210
-    toEnum 83 = VideoFormatY410
-    toEnum 84 = VideoFormatVuya
-    toEnum 85 = VideoFormatBgr10a2Le
-    toEnum k = AnotherVideoFormat k
-
-instance P.Ord VideoFormat where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_format_get_type" c_gst_video_format_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoFormat where
-    boxedEnumType _ = c_gst_video_format_get_type
-
--- Enum VideoFieldOrder
-{- |
-Field order of interlaced content. This is only valid for
-interlace-mode=interleaved and not interlace-mode=mixed. In the case of
-mixed or GST_VIDEO_FIELD_ORDER_UNKOWN, the field order is signalled via
-buffer flags.
-
-/Since: 1.12/
--}
-data VideoFieldOrder = 
-      VideoFieldOrderUnknown
-    {- ^
-    unknown field order for interlaced content.
-        The actual field order is signalled via buffer flags.
-    -}
-    | VideoFieldOrderTopFieldFirst
-    {- ^
-    top field is first
-    -}
-    | VideoFieldOrderBottomFieldFirst
-    {- ^
-    bottom field is first
-    -}
-    | AnotherVideoFieldOrder Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoFieldOrder where
-    fromEnum VideoFieldOrderUnknown = 0
-    fromEnum VideoFieldOrderTopFieldFirst = 1
-    fromEnum VideoFieldOrderBottomFieldFirst = 2
-    fromEnum (AnotherVideoFieldOrder k) = k
-
-    toEnum 0 = VideoFieldOrderUnknown
-    toEnum 1 = VideoFieldOrderTopFieldFirst
-    toEnum 2 = VideoFieldOrderBottomFieldFirst
-    toEnum k = AnotherVideoFieldOrder k
-
-instance P.Ord VideoFieldOrder where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_field_order_get_type" c_gst_video_field_order_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoFieldOrder where
-    boxedEnumType _ = c_gst_video_field_order_get_type
-
--- Enum VideoDitherMethod
-{- |
-Different dithering methods to use.
--}
-data VideoDitherMethod = 
-      VideoDitherMethodNone
-    {- ^
-    no dithering
-    -}
-    | VideoDitherMethodVerterr
-    {- ^
-    propagate rounding errors downwards
-    -}
-    | VideoDitherMethodFloydSteinberg
-    {- ^
-    Dither with floyd-steinberg error diffusion
-    -}
-    | VideoDitherMethodSierraLite
-    {- ^
-    Dither with Sierra Lite error diffusion
-    -}
-    | VideoDitherMethodBayer
-    {- ^
-    ordered dither using a bayer pattern
-    -}
-    | AnotherVideoDitherMethod Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoDitherMethod where
-    fromEnum VideoDitherMethodNone = 0
-    fromEnum VideoDitherMethodVerterr = 1
-    fromEnum VideoDitherMethodFloydSteinberg = 2
-    fromEnum VideoDitherMethodSierraLite = 3
-    fromEnum VideoDitherMethodBayer = 4
-    fromEnum (AnotherVideoDitherMethod k) = k
-
-    toEnum 0 = VideoDitherMethodNone
-    toEnum 1 = VideoDitherMethodVerterr
-    toEnum 2 = VideoDitherMethodFloydSteinberg
-    toEnum 3 = VideoDitherMethodSierraLite
-    toEnum 4 = VideoDitherMethodBayer
-    toEnum k = AnotherVideoDitherMethod k
-
-instance P.Ord VideoDitherMethod where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_dither_method_get_type" c_gst_video_dither_method_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoDitherMethod where
-    boxedEnumType _ = c_gst_video_dither_method_get_type
-
--- Enum VideoColorRange
-{- |
-Possible color range values. These constants are defined for 8 bit color
-values and can be scaled for other bit depths.
--}
-data VideoColorRange = 
-      VideoColorRangeUnknown
-    {- ^
-    unknown range
-    -}
-    | VideoColorRange0255
-    {- ^
-    [0..255] for 8 bit components
-    -}
-    | VideoColorRange16235
-    {- ^
-    [16..235] for 8 bit components. Chroma has
-                    [16..240] range.
-    -}
-    | AnotherVideoColorRange Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoColorRange where
-    fromEnum VideoColorRangeUnknown = 0
-    fromEnum VideoColorRange0255 = 1
-    fromEnum VideoColorRange16235 = 2
-    fromEnum (AnotherVideoColorRange k) = k
-
-    toEnum 0 = VideoColorRangeUnknown
-    toEnum 1 = VideoColorRange0255
-    toEnum 2 = VideoColorRange16235
-    toEnum k = AnotherVideoColorRange k
-
-instance P.Ord VideoColorRange where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_color_range_get_type" c_gst_video_color_range_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoColorRange where
-    boxedEnumType _ = c_gst_video_color_range_get_type
-
--- Enum VideoColorPrimaries
-{- |
-The color primaries define the how to transform linear RGB values to and from
-the CIE XYZ colorspace.
--}
-data VideoColorPrimaries = 
-      VideoColorPrimariesUnknown
-    {- ^
-    unknown color primaries
-    -}
-    | VideoColorPrimariesBt709
-    {- ^
-    BT709 primaries
-    -}
-    | VideoColorPrimariesBt470m
-    {- ^
-    BT470M primaries
-    -}
-    | VideoColorPrimariesBt470bg
-    {- ^
-    BT470BG primaries
-    -}
-    | VideoColorPrimariesSmpte170m
-    {- ^
-    SMPTE170M primaries
-    -}
-    | VideoColorPrimariesSmpte240m
-    {- ^
-    SMPTE240M primaries
-    -}
-    | VideoColorPrimariesFilm
-    {- ^
-    Generic film
-    -}
-    | VideoColorPrimariesBt2020
-    {- ^
-    BT2020 primaries. Since: 1.6
-    -}
-    | VideoColorPrimariesAdobergb
-    {- ^
-    Adobe RGB primaries. Since: 1.8
-    -}
-    | VideoColorPrimariesSmptest428
-    {- ^
-    SMPTE ST 428 primaries. Since: 1.16
-    -}
-    | VideoColorPrimariesSmpterp431
-    {- ^
-    SMPTE RP 431 primaries. Since: 1.16
-    -}
-    | VideoColorPrimariesSmpteeg432
-    {- ^
-    SMPTE EG 432 primaries. Since: 1.16
-    -}
-    | VideoColorPrimariesEbu3213
-    {- ^
-    EBU 3213 primaries. Since: 1.16
-    -}
-    | AnotherVideoColorPrimaries Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoColorPrimaries where
-    fromEnum VideoColorPrimariesUnknown = 0
-    fromEnum VideoColorPrimariesBt709 = 1
-    fromEnum VideoColorPrimariesBt470m = 2
-    fromEnum VideoColorPrimariesBt470bg = 3
-    fromEnum VideoColorPrimariesSmpte170m = 4
-    fromEnum VideoColorPrimariesSmpte240m = 5
-    fromEnum VideoColorPrimariesFilm = 6
-    fromEnum VideoColorPrimariesBt2020 = 7
-    fromEnum VideoColorPrimariesAdobergb = 8
-    fromEnum VideoColorPrimariesSmptest428 = 9
-    fromEnum VideoColorPrimariesSmpterp431 = 10
-    fromEnum VideoColorPrimariesSmpteeg432 = 11
-    fromEnum VideoColorPrimariesEbu3213 = 12
-    fromEnum (AnotherVideoColorPrimaries k) = k
-
-    toEnum 0 = VideoColorPrimariesUnknown
-    toEnum 1 = VideoColorPrimariesBt709
-    toEnum 2 = VideoColorPrimariesBt470m
-    toEnum 3 = VideoColorPrimariesBt470bg
-    toEnum 4 = VideoColorPrimariesSmpte170m
-    toEnum 5 = VideoColorPrimariesSmpte240m
-    toEnum 6 = VideoColorPrimariesFilm
-    toEnum 7 = VideoColorPrimariesBt2020
-    toEnum 8 = VideoColorPrimariesAdobergb
-    toEnum 9 = VideoColorPrimariesSmptest428
-    toEnum 10 = VideoColorPrimariesSmpterp431
-    toEnum 11 = VideoColorPrimariesSmpteeg432
-    toEnum 12 = VideoColorPrimariesEbu3213
-    toEnum k = AnotherVideoColorPrimaries k
-
-instance P.Ord VideoColorPrimaries where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_color_primaries_get_type" c_gst_video_color_primaries_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoColorPrimaries where
-    boxedEnumType _ = c_gst_video_color_primaries_get_type
-
--- Enum VideoColorMatrix
-{- |
-The color matrix is used to convert between Y\'PbPr and
-non-linear RGB (R\'G\'B\')
--}
-data VideoColorMatrix = 
-      VideoColorMatrixUnknown
-    {- ^
-    unknown matrix
-    -}
-    | VideoColorMatrixRgb
-    {- ^
-    identity matrix
-    -}
-    | VideoColorMatrixFcc
-    {- ^
-    FCC color matrix
-    -}
-    | VideoColorMatrixBt709
-    {- ^
-    ITU-R BT.709 color matrix
-    -}
-    | VideoColorMatrixBt601
-    {- ^
-    ITU-R BT.601 color matrix
-    -}
-    | VideoColorMatrixSmpte240m
-    {- ^
-    SMPTE 240M color matrix
-    -}
-    | VideoColorMatrixBt2020
-    {- ^
-    ITU-R BT.2020 color matrix. Since: 1.6
-    -}
-    | AnotherVideoColorMatrix Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoColorMatrix where
-    fromEnum VideoColorMatrixUnknown = 0
-    fromEnum VideoColorMatrixRgb = 1
-    fromEnum VideoColorMatrixFcc = 2
-    fromEnum VideoColorMatrixBt709 = 3
-    fromEnum VideoColorMatrixBt601 = 4
-    fromEnum VideoColorMatrixSmpte240m = 5
-    fromEnum VideoColorMatrixBt2020 = 6
-    fromEnum (AnotherVideoColorMatrix k) = k
-
-    toEnum 0 = VideoColorMatrixUnknown
-    toEnum 1 = VideoColorMatrixRgb
-    toEnum 2 = VideoColorMatrixFcc
-    toEnum 3 = VideoColorMatrixBt709
-    toEnum 4 = VideoColorMatrixBt601
-    toEnum 5 = VideoColorMatrixSmpte240m
-    toEnum 6 = VideoColorMatrixBt2020
-    toEnum k = AnotherVideoColorMatrix k
-
-instance P.Ord VideoColorMatrix where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_color_matrix_get_type" c_gst_video_color_matrix_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoColorMatrix where
-    boxedEnumType _ = c_gst_video_color_matrix_get_type
-
--- Enum VideoChromaMode
-{- |
-Different chroma downsampling and upsampling modes
-
-/Since: 1.6/
--}
-data VideoChromaMode = 
-      VideoChromaModeFull
-    {- ^
-    do full chroma up and down sampling
-    -}
-    | VideoChromaModeUpsampleOnly
-    {- ^
-    only perform chroma upsampling
-    -}
-    | VideoChromaModeDownsampleOnly
-    {- ^
-    only perform chroma downsampling
-    -}
-    | VideoChromaModeNone
-    {- ^
-    disable chroma resampling
-    -}
-    | AnotherVideoChromaMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoChromaMode where
-    fromEnum VideoChromaModeFull = 0
-    fromEnum VideoChromaModeUpsampleOnly = 1
-    fromEnum VideoChromaModeDownsampleOnly = 2
-    fromEnum VideoChromaModeNone = 3
-    fromEnum (AnotherVideoChromaMode k) = k
-
-    toEnum 0 = VideoChromaModeFull
-    toEnum 1 = VideoChromaModeUpsampleOnly
-    toEnum 2 = VideoChromaModeDownsampleOnly
-    toEnum 3 = VideoChromaModeNone
-    toEnum k = AnotherVideoChromaMode k
-
-instance P.Ord VideoChromaMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_chroma_mode_get_type" c_gst_video_chroma_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoChromaMode where
-    boxedEnumType _ = c_gst_video_chroma_mode_get_type
-
--- Enum VideoChromaMethod
-{- |
-Different subsampling and upsampling methods
--}
-data VideoChromaMethod = 
-      VideoChromaMethodNearest
-    {- ^
-    Duplicates the chroma samples when
-       upsampling and drops when subsampling
-    -}
-    | VideoChromaMethodLinear
-    {- ^
-    Uses linear interpolation to reconstruct
-       missing chroma and averaging to subsample
-    -}
-    | AnotherVideoChromaMethod Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoChromaMethod where
-    fromEnum VideoChromaMethodNearest = 0
-    fromEnum VideoChromaMethodLinear = 1
-    fromEnum (AnotherVideoChromaMethod k) = k
-
-    toEnum 0 = VideoChromaMethodNearest
-    toEnum 1 = VideoChromaMethodLinear
-    toEnum k = AnotherVideoChromaMethod k
-
-instance P.Ord VideoChromaMethod where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_chroma_method_get_type" c_gst_video_chroma_method_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoChromaMethod where
-    boxedEnumType _ = c_gst_video_chroma_method_get_type
-
--- Enum VideoCaptionType
-{- |
-The various known types of Closed Caption (CC).
-
-/Since: 1.16/
--}
-data VideoCaptionType = 
-      VideoCaptionTypeUnknown
-    {- ^
-    Unknown type of CC
-    -}
-    | VideoCaptionTypeCea608Raw
-    {- ^
-    CEA-608 as byte pairs. Note that
-         this format is not recommended since is does not specify to
-         which field the caption comes from and therefore assumes
-         it comes from the first field (and that there is no information
-         on the second field). Use /@gSTVIDEOCAPTIONTYPECEA708RAW@/
-         if you wish to store CEA-608 from two fields and prefix each byte pair
-         with 0xFC for the first field and 0xFD for the second field.
-    -}
-    | VideoCaptionTypeCea608S3341a
-    {- ^
-    CEA-608 as byte triplets as defined
-         in SMPTE S334-1 Annex A. The second and third byte of the byte triplet
-         is the raw CEA608 data, the first byte is a bitfield: The top\/7th bit is
-         0 for the second field, 1 for the first field, bit 6 and 5 are 0 and
-         bits 4 to 0 are a 5 bit unsigned integer that represents the line
-         offset relative to the base-line of the original image format (line 9
-         for 525-line field 1, line 272 for 525-line field 2, line 5 for
-         625-line field 1 and line 318 for 625-line field 2).
-    -}
-    | VideoCaptionTypeCea708Raw
-    {- ^
-    CEA-708 as cc_data byte triplets. They
-         can also contain 608-in-708 and the first byte of each triplet has to
-         be inspected for detecting the type.
-    -}
-    | VideoCaptionTypeCea708Cdp
-    {- ^
-    CEA-708 (and optionally CEA-608) in
-         a CDP (Caption Distribution Packet) defined by SMPTE S-334-2.
-         Contains the whole CDP (starting with 0x9669).
-    -}
-    | AnotherVideoCaptionType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoCaptionType where
-    fromEnum VideoCaptionTypeUnknown = 0
-    fromEnum VideoCaptionTypeCea608Raw = 1
-    fromEnum VideoCaptionTypeCea608S3341a = 2
-    fromEnum VideoCaptionTypeCea708Raw = 3
-    fromEnum VideoCaptionTypeCea708Cdp = 4
-    fromEnum (AnotherVideoCaptionType k) = k
-
-    toEnum 0 = VideoCaptionTypeUnknown
-    toEnum 1 = VideoCaptionTypeCea608Raw
-    toEnum 2 = VideoCaptionTypeCea608S3341a
-    toEnum 3 = VideoCaptionTypeCea708Raw
-    toEnum 4 = VideoCaptionTypeCea708Cdp
-    toEnum k = AnotherVideoCaptionType k
-
-instance P.Ord VideoCaptionType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_caption_type_get_type" c_gst_video_caption_type_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoCaptionType where
-    boxedEnumType _ = c_gst_video_caption_type_get_type
-
--- Enum VideoAncillaryDID16
-{- |
-Some know types of Ancillary Data identifiers.
-
-/Since: 1.16/
--}
-data VideoAncillaryDID16 = 
-      VideoAncillaryDID16708
-    {- ^
-    CEA 708 Ancillary data according to SMPTE 334
-    -}
-    | VideoAncillaryDID16608
-    {- ^
-    CEA 608 Ancillary data according to SMPTE 334
-    -}
-    | AnotherVideoAncillaryDID16 Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoAncillaryDID16 where
-    fromEnum VideoAncillaryDID16708 = 24833
-    fromEnum VideoAncillaryDID16608 = 24834
-    fromEnum (AnotherVideoAncillaryDID16 k) = k
-
-    toEnum 24833 = VideoAncillaryDID16708
-    toEnum 24834 = VideoAncillaryDID16608
-    toEnum k = AnotherVideoAncillaryDID16 k
-
-instance P.Ord VideoAncillaryDID16 where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_ancillary_di_d16_get_type" c_gst_video_ancillary_di_d16_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoAncillaryDID16 where
-    boxedEnumType _ = c_gst_video_ancillary_di_d16_get_type
-
--- Enum VideoAncillaryDID
-{- |
-/No description available in the introspection data./
--}
-data VideoAncillaryDID = 
-      VideoAncillaryDIDUndefined
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDDeletion
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHanc3gAudioDataFirst
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHanc3gAudioDataLast
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancHdtvAudioDataFirst
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancHdtvAudioDataLast
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancSdtvAudioData1First
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancSdtvAudioData1Last
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDCameraPosition
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancErrorDetection
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancSdtvAudioData2First
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | VideoAncillaryDIDHancSdtvAudioData2Last
-    {- ^
-    /No description available in the introspection data./
-    -}
-    | AnotherVideoAncillaryDID Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoAncillaryDID where
-    fromEnum VideoAncillaryDIDUndefined = 0
-    fromEnum VideoAncillaryDIDDeletion = 128
-    fromEnum VideoAncillaryDIDHanc3gAudioDataFirst = 160
-    fromEnum VideoAncillaryDIDHanc3gAudioDataLast = 167
-    fromEnum VideoAncillaryDIDHancHdtvAudioDataFirst = 224
-    fromEnum VideoAncillaryDIDHancHdtvAudioDataLast = 231
-    fromEnum VideoAncillaryDIDHancSdtvAudioData1First = 236
-    fromEnum VideoAncillaryDIDHancSdtvAudioData1Last = 239
-    fromEnum VideoAncillaryDIDCameraPosition = 240
-    fromEnum VideoAncillaryDIDHancErrorDetection = 244
-    fromEnum VideoAncillaryDIDHancSdtvAudioData2First = 248
-    fromEnum VideoAncillaryDIDHancSdtvAudioData2Last = 255
-    fromEnum (AnotherVideoAncillaryDID k) = k
-
-    toEnum 0 = VideoAncillaryDIDUndefined
-    toEnum 128 = VideoAncillaryDIDDeletion
-    toEnum 160 = VideoAncillaryDIDHanc3gAudioDataFirst
-    toEnum 167 = VideoAncillaryDIDHanc3gAudioDataLast
-    toEnum 224 = VideoAncillaryDIDHancHdtvAudioDataFirst
-    toEnum 231 = VideoAncillaryDIDHancHdtvAudioDataLast
-    toEnum 236 = VideoAncillaryDIDHancSdtvAudioData1First
-    toEnum 239 = VideoAncillaryDIDHancSdtvAudioData1Last
-    toEnum 240 = VideoAncillaryDIDCameraPosition
-    toEnum 244 = VideoAncillaryDIDHancErrorDetection
-    toEnum 248 = VideoAncillaryDIDHancSdtvAudioData2First
-    toEnum 255 = VideoAncillaryDIDHancSdtvAudioData2Last
-    toEnum k = AnotherVideoAncillaryDID k
-
-instance P.Ord VideoAncillaryDID where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_ancillary_did_get_type" c_gst_video_ancillary_did_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoAncillaryDID where
-    boxedEnumType _ = c_gst_video_ancillary_did_get_type
-
--- Enum VideoAlphaMode
-{- |
-Different alpha modes.
-
-/Since: 1.6/
--}
-data VideoAlphaMode = 
-      VideoAlphaModeCopy
-    {- ^
-    When input and output have alpha, it will be copied.
-            When the input has no alpha, alpha will be set to
-            'GI.GstVideo.Constants.VIDEO_CONVERTER_OPT_ALPHA_VALUE'
-    -}
-    | VideoAlphaModeSet
-    {- ^
-    set all alpha to
-       'GI.GstVideo.Constants.VIDEO_CONVERTER_OPT_ALPHA_VALUE'
-    -}
-    | VideoAlphaModeMult
-    {- ^
-    multiply all alpha with
-            'GI.GstVideo.Constants.VIDEO_CONVERTER_OPT_ALPHA_VALUE'.
-            When the input format has no alpha but the output format has, the
-            alpha value will be set to 'GI.GstVideo.Constants.VIDEO_CONVERTER_OPT_ALPHA_VALUE'
-    -}
-    | AnotherVideoAlphaMode Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoAlphaMode where
-    fromEnum VideoAlphaModeCopy = 0
-    fromEnum VideoAlphaModeSet = 1
-    fromEnum VideoAlphaModeMult = 2
-    fromEnum (AnotherVideoAlphaMode k) = k
-
-    toEnum 0 = VideoAlphaModeCopy
-    toEnum 1 = VideoAlphaModeSet
-    toEnum 2 = VideoAlphaModeMult
-    toEnum k = AnotherVideoAlphaMode k
-
-instance P.Ord VideoAlphaMode where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_alpha_mode_get_type" c_gst_video_alpha_mode_get_type :: 
-    IO GType
-
-instance BoxedEnum VideoAlphaMode where
-    boxedEnumType _ = c_gst_video_alpha_mode_get_type
-
--- Enum NavigationQueryType
-{- |
-Tyoes of navigation interface queries.
--}
-data NavigationQueryType = 
-      NavigationQueryTypeInvalid
-    {- ^
-    invalid query
-    -}
-    | NavigationQueryTypeCommands
-    {- ^
-    command query
-    -}
-    | NavigationQueryTypeAngles
-    {- ^
-    viewing angle query
-    -}
-    | AnotherNavigationQueryType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum NavigationQueryType where
-    fromEnum NavigationQueryTypeInvalid = 0
-    fromEnum NavigationQueryTypeCommands = 1
-    fromEnum NavigationQueryTypeAngles = 2
-    fromEnum (AnotherNavigationQueryType k) = k
-
-    toEnum 0 = NavigationQueryTypeInvalid
-    toEnum 1 = NavigationQueryTypeCommands
-    toEnum 2 = NavigationQueryTypeAngles
-    toEnum k = AnotherNavigationQueryType k
-
-instance P.Ord NavigationQueryType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_navigation_query_type_get_type" c_gst_navigation_query_type_get_type :: 
-    IO GType
-
-instance BoxedEnum NavigationQueryType where
-    boxedEnumType _ = c_gst_navigation_query_type_get_type
-
--- Enum NavigationMessageType
-{- |
-A set of notifications that may be received on the bus when navigation
-related status changes.
--}
-data NavigationMessageType = 
-      NavigationMessageTypeInvalid
-    {- ^
-    Returned from
-    'GI.GstVideo.Functions.navigationMessageGetType' when the passed message is not a
-    navigation message.
-    -}
-    | NavigationMessageTypeMouseOver
-    {- ^
-    Sent when the mouse moves over or leaves a
-    clickable region of the output, such as a DVD menu button.
-    -}
-    | NavigationMessageTypeCommandsChanged
-    {- ^
-    Sent when the set of available commands
-    changes and should re-queried by interested applications.
-    -}
-    | NavigationMessageTypeAnglesChanged
-    {- ^
-    Sent when display angles in a multi-angle
-    feature (such as a multiangle DVD) change - either angles have appeared or
-    disappeared.
-    -}
-    | NavigationMessageTypeEvent
-    {- ^
-    Sent when a navigation event was not handled
-    by any element in the pipeline (Since 1.6)
-    -}
-    | AnotherNavigationMessageType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum NavigationMessageType where
-    fromEnum NavigationMessageTypeInvalid = 0
-    fromEnum NavigationMessageTypeMouseOver = 1
-    fromEnum NavigationMessageTypeCommandsChanged = 2
-    fromEnum NavigationMessageTypeAnglesChanged = 3
-    fromEnum NavigationMessageTypeEvent = 4
-    fromEnum (AnotherNavigationMessageType k) = k
-
-    toEnum 0 = NavigationMessageTypeInvalid
-    toEnum 1 = NavigationMessageTypeMouseOver
-    toEnum 2 = NavigationMessageTypeCommandsChanged
-    toEnum 3 = NavigationMessageTypeAnglesChanged
-    toEnum 4 = NavigationMessageTypeEvent
-    toEnum k = AnotherNavigationMessageType k
-
-instance P.Ord NavigationMessageType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_navigation_message_type_get_type" c_gst_navigation_message_type_get_type :: 
-    IO GType
-
-instance BoxedEnum NavigationMessageType where
-    boxedEnumType _ = c_gst_navigation_message_type_get_type
-
--- Enum NavigationEventType
-{- |
-Enum values for the various events that an element implementing the
-GstNavigation interface might send up the pipeline.
--}
-data NavigationEventType = 
-      NavigationEventTypeInvalid
-    {- ^
-    Returned from
-    'GI.GstVideo.Functions.navigationEventGetType' when the passed event is not a navigation event.
-    -}
-    | NavigationEventTypeKeyPress
-    {- ^
-    A key press event. Use
-    'GI.GstVideo.Functions.navigationEventParseKeyEvent' to extract the details from the event.
-    -}
-    | NavigationEventTypeKeyRelease
-    {- ^
-    A key release event. Use
-    'GI.GstVideo.Functions.navigationEventParseKeyEvent' to extract the details from the event.
-    -}
-    | NavigationEventTypeMouseButtonPress
-    {- ^
-    A mouse button press event. Use
-    'GI.GstVideo.Functions.navigationEventParseMouseButtonEvent' to extract the details from the
-    event.
-    -}
-    | NavigationEventTypeMouseButtonRelease
-    {- ^
-    A mouse button release event. Use
-    'GI.GstVideo.Functions.navigationEventParseMouseButtonEvent' to extract the details from the
-    event.
-    -}
-    | NavigationEventTypeMouseMove
-    {- ^
-    A mouse movement event. Use
-    'GI.GstVideo.Functions.navigationEventParseMouseMoveEvent' to extract the details from the
-    event.
-    -}
-    | NavigationEventTypeCommand
-    {- ^
-    A navigation command event. Use
-    'GI.GstVideo.Functions.navigationEventParseCommand' to extract the details from the event.
-    -}
-    | AnotherNavigationEventType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum NavigationEventType where
-    fromEnum NavigationEventTypeInvalid = 0
-    fromEnum NavigationEventTypeKeyPress = 1
-    fromEnum NavigationEventTypeKeyRelease = 2
-    fromEnum NavigationEventTypeMouseButtonPress = 3
-    fromEnum NavigationEventTypeMouseButtonRelease = 4
-    fromEnum NavigationEventTypeMouseMove = 5
-    fromEnum NavigationEventTypeCommand = 6
-    fromEnum (AnotherNavigationEventType k) = k
-
-    toEnum 0 = NavigationEventTypeInvalid
-    toEnum 1 = NavigationEventTypeKeyPress
-    toEnum 2 = NavigationEventTypeKeyRelease
-    toEnum 3 = NavigationEventTypeMouseButtonPress
-    toEnum 4 = NavigationEventTypeMouseButtonRelease
-    toEnum 5 = NavigationEventTypeMouseMove
-    toEnum 6 = NavigationEventTypeCommand
-    toEnum k = AnotherNavigationEventType k
-
-instance P.Ord NavigationEventType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_navigation_event_type_get_type" c_gst_navigation_event_type_get_type :: 
-    IO GType
-
-instance BoxedEnum NavigationEventType where
-    boxedEnumType _ = c_gst_navigation_event_type_get_type
-
--- Enum NavigationCommand
-{- |
-A set of commands that may be issued to an element providing the
-'GI.GstVideo.Interfaces.Navigation.Navigation' interface. The available commands can be queried via
-the 'GI.GstVideo.Functions.navigationQueryNewCommands' query.
-
-For convenience in handling DVD navigation, the MENU commands are aliased as:
-   GST_NAVIGATION_COMMAND_DVD_MENU            = /@gSTNAVIGATIONCOMMANDMENU1@/
-   GST_NAVIGATION_COMMAND_DVD_TITLE_MENU      = /@gSTNAVIGATIONCOMMANDMENU2@/
-   GST_NAVIGATION_COMMAND_DVD_ROOT_MENU       = /@gSTNAVIGATIONCOMMANDMENU3@/
-   GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU = /@gSTNAVIGATIONCOMMANDMENU4@/
-   GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU      = /@gSTNAVIGATIONCOMMANDMENU5@/
-   GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU      = /@gSTNAVIGATIONCOMMANDMENU6@/
-   GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU    = /@gSTNAVIGATIONCOMMANDMENU7@/
--}
-data NavigationCommand = 
-      NavigationCommandInvalid
-    {- ^
-    An invalid command entry
-    -}
-    | NavigationCommandMenu1
-    {- ^
-    Execute navigation menu command 1. For DVD,
-    this enters the DVD root menu, or exits back to the title from the menu.
-    -}
-    | NavigationCommandMenu2
-    {- ^
-    Execute navigation menu command 2. For DVD,
-    this jumps to the DVD title menu.
-    -}
-    | NavigationCommandMenu3
-    {- ^
-    Execute navigation menu command 3. For DVD,
-    this jumps into the DVD root menu.
-    -}
-    | NavigationCommandMenu4
-    {- ^
-    Execute navigation menu command 4. For DVD,
-    this jumps to the Subpicture menu.
-    -}
-    | NavigationCommandMenu5
-    {- ^
-    Execute navigation menu command 5. For DVD,
-    the jumps to the audio menu.
-    -}
-    | NavigationCommandMenu6
-    {- ^
-    Execute navigation menu command 6. For DVD,
-    this jumps to the angles menu.
-    -}
-    | NavigationCommandMenu7
-    {- ^
-    Execute navigation menu command 7. For DVD,
-    this jumps to the chapter menu.
-    -}
-    | NavigationCommandLeft
-    {- ^
-    Select the next button to the left in a menu,
-    if such a button exists.
-    -}
-    | NavigationCommandRight
-    {- ^
-    Select the next button to the right in a menu,
-    if such a button exists.
-    -}
-    | NavigationCommandUp
-    {- ^
-    Select the button above the current one in a
-    menu, if such a button exists.
-    -}
-    | NavigationCommandDown
-    {- ^
-    Select the button below the current one in a
-    menu, if such a button exists.
-    -}
-    | NavigationCommandActivate
-    {- ^
-    Activate (click) the currently selected
-    button in a menu, if such a button exists.
-    -}
-    | NavigationCommandPrevAngle
-    {- ^
-    Switch to the previous angle in a
-    multiangle feature.
-    -}
-    | NavigationCommandNextAngle
-    {- ^
-    Switch to the next angle in a multiangle
-    feature.
-    -}
-    | AnotherNavigationCommand Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum NavigationCommand where
-    fromEnum NavigationCommandInvalid = 0
-    fromEnum NavigationCommandMenu1 = 1
-    fromEnum NavigationCommandMenu2 = 2
-    fromEnum NavigationCommandMenu3 = 3
-    fromEnum NavigationCommandMenu4 = 4
-    fromEnum NavigationCommandMenu5 = 5
-    fromEnum NavigationCommandMenu6 = 6
-    fromEnum NavigationCommandMenu7 = 7
-    fromEnum NavigationCommandLeft = 20
-    fromEnum NavigationCommandRight = 21
-    fromEnum NavigationCommandUp = 22
-    fromEnum NavigationCommandDown = 23
-    fromEnum NavigationCommandActivate = 24
-    fromEnum NavigationCommandPrevAngle = 30
-    fromEnum NavigationCommandNextAngle = 31
-    fromEnum (AnotherNavigationCommand k) = k
-
-    toEnum 0 = NavigationCommandInvalid
-    toEnum 1 = NavigationCommandMenu1
-    toEnum 2 = NavigationCommandMenu2
-    toEnum 3 = NavigationCommandMenu3
-    toEnum 4 = NavigationCommandMenu4
-    toEnum 5 = NavigationCommandMenu5
-    toEnum 6 = NavigationCommandMenu6
-    toEnum 7 = NavigationCommandMenu7
-    toEnum 20 = NavigationCommandLeft
-    toEnum 21 = NavigationCommandRight
-    toEnum 22 = NavigationCommandUp
-    toEnum 23 = NavigationCommandDown
-    toEnum 24 = NavigationCommandActivate
-    toEnum 30 = NavigationCommandPrevAngle
-    toEnum 31 = NavigationCommandNextAngle
-    toEnum k = AnotherNavigationCommand k
-
-instance P.Ord NavigationCommand where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_navigation_command_get_type" c_gst_navigation_command_get_type :: 
-    IO GType
-
-instance BoxedEnum NavigationCommand where
-    boxedEnumType _ = c_gst_navigation_command_get_type
-
--- Enum ColorBalanceType
-{- |
-An enumeration indicating whether an element implements color balancing
-operations in software or in dedicated hardware. In general, dedicated
-hardware implementations (such as those provided by xvimagesink) are
-preferred.
--}
-data ColorBalanceType = 
-      ColorBalanceTypeHardware
-    {- ^
-    Color balance is implemented with dedicated
-            hardware.
-    -}
-    | ColorBalanceTypeSoftware
-    {- ^
-    Color balance is implemented via software
-            processing.
-    -}
-    | AnotherColorBalanceType Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum ColorBalanceType where
-    fromEnum ColorBalanceTypeHardware = 0
-    fromEnum ColorBalanceTypeSoftware = 1
-    fromEnum (AnotherColorBalanceType k) = k
-
-    toEnum 0 = ColorBalanceTypeHardware
-    toEnum 1 = ColorBalanceTypeSoftware
-    toEnum k = AnotherColorBalanceType k
-
-instance P.Ord ColorBalanceType where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_color_balance_type_get_type" c_gst_color_balance_type_get_type :: 
-    IO GType
-
-instance BoxedEnum ColorBalanceType where
-    boxedEnumType _ = c_gst_color_balance_type_get_type
-
-
diff --git a/GI/GstVideo/Enums.hs-boot b/GI/GstVideo/Enums.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Enums.hs-boot
+++ /dev/null
@@ -1,115 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Enums 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.ManagedPtr as B.ManagedPtr
-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.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
-
-data VideoVBIParserResult
-instance P.Enum VideoVBIParserResult where
-instance BoxedEnum VideoVBIParserResult where
-data VideoTransferFunction
-instance P.Enum VideoTransferFunction where
-instance BoxedEnum VideoTransferFunction where
-data VideoTileType
-instance P.Enum VideoTileType where
-instance BoxedEnum VideoTileType where
-data VideoTileMode
-instance P.Enum VideoTileMode where
-instance BoxedEnum VideoTileMode where
-data VideoResamplerMethod
-instance P.Enum VideoResamplerMethod where
-instance BoxedEnum VideoResamplerMethod where
-data VideoPrimariesMode
-instance P.Enum VideoPrimariesMode where
-instance BoxedEnum VideoPrimariesMode where
-data VideoOrientationMethod
-instance P.Enum VideoOrientationMethod where
-instance BoxedEnum VideoOrientationMethod where
-data VideoMultiviewMode
-instance P.Enum VideoMultiviewMode where
-instance BoxedEnum VideoMultiviewMode where
-data VideoMultiviewFramePacking
-instance P.Enum VideoMultiviewFramePacking where
-instance BoxedEnum VideoMultiviewFramePacking where
-data VideoMatrixMode
-instance P.Enum VideoMatrixMode where
-instance BoxedEnum VideoMatrixMode where
-data VideoInterlaceMode
-instance P.Enum VideoInterlaceMode where
-instance BoxedEnum VideoInterlaceMode where
-data VideoGammaMode
-instance P.Enum VideoGammaMode where
-instance BoxedEnum VideoGammaMode where
-data VideoGLTextureType
-instance P.Enum VideoGLTextureType where
-data VideoGLTextureOrientation
-instance P.Enum VideoGLTextureOrientation where
-data VideoFormat
-instance P.Enum VideoFormat where
-instance BoxedEnum VideoFormat where
-data VideoFieldOrder
-instance P.Enum VideoFieldOrder where
-instance BoxedEnum VideoFieldOrder where
-data VideoDitherMethod
-instance P.Enum VideoDitherMethod where
-instance BoxedEnum VideoDitherMethod where
-data VideoColorRange
-instance P.Enum VideoColorRange where
-instance BoxedEnum VideoColorRange where
-data VideoColorPrimaries
-instance P.Enum VideoColorPrimaries where
-instance BoxedEnum VideoColorPrimaries where
-data VideoColorMatrix
-instance P.Enum VideoColorMatrix where
-instance BoxedEnum VideoColorMatrix where
-data VideoChromaMode
-instance P.Enum VideoChromaMode where
-instance BoxedEnum VideoChromaMode where
-data VideoChromaMethod
-instance P.Enum VideoChromaMethod where
-instance BoxedEnum VideoChromaMethod where
-data VideoCaptionType
-instance P.Enum VideoCaptionType where
-instance BoxedEnum VideoCaptionType where
-data VideoAncillaryDID16
-instance P.Enum VideoAncillaryDID16 where
-instance BoxedEnum VideoAncillaryDID16 where
-data VideoAncillaryDID
-instance P.Enum VideoAncillaryDID where
-instance BoxedEnum VideoAncillaryDID where
-data VideoAlphaMode
-instance P.Enum VideoAlphaMode where
-instance BoxedEnum VideoAlphaMode where
-data NavigationQueryType
-instance P.Enum NavigationQueryType where
-instance BoxedEnum NavigationQueryType where
-data NavigationMessageType
-instance P.Enum NavigationMessageType where
-instance BoxedEnum NavigationMessageType where
-data NavigationEventType
-instance P.Enum NavigationEventType where
-instance BoxedEnum NavigationEventType where
-data NavigationCommand
-instance P.Enum NavigationCommand where
-instance BoxedEnum NavigationCommand where
-data ColorBalanceType
-instance P.Enum ColorBalanceType where
-instance BoxedEnum ColorBalanceType where
diff --git a/GI/GstVideo/Flags.hs b/GI/GstVideo/Flags.hs
deleted file mode 100644
--- a/GI/GstVideo/Flags.hs
+++ /dev/null
@@ -1,983 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Flags
-    ( 
-
- -- * Flags
--- ** VideoBufferFlags #flag:VideoBufferFlags#
-
-    VideoBufferFlags(..)                    ,
-
-
--- ** VideoChromaFlags #flag:VideoChromaFlags#
-
-    VideoChromaFlags(..)                    ,
-
-
--- ** VideoChromaSite #flag:VideoChromaSite#
-
-    VideoChromaSite(..)                     ,
-
-
--- ** VideoCodecFrameFlags #flag:VideoCodecFrameFlags#
-
-    VideoCodecFrameFlags(..)                ,
-
-
--- ** VideoDitherFlags #flag:VideoDitherFlags#
-
-    VideoDitherFlags(..)                    ,
-
-
--- ** VideoFlags #flag:VideoFlags#
-
-    VideoFlags(..)                          ,
-
-
--- ** VideoFormatFlags #flag:VideoFormatFlags#
-
-    VideoFormatFlags(..)                    ,
-
-
--- ** VideoFrameFlags #flag:VideoFrameFlags#
-
-    VideoFrameFlags(..)                     ,
-
-
--- ** VideoFrameMapFlags #flag:VideoFrameMapFlags#
-
-    VideoFrameMapFlags(..)                  ,
-
-
--- ** VideoMultiviewFlags #flag:VideoMultiviewFlags#
-
-    VideoMultiviewFlags(..)                 ,
-
-
--- ** VideoOverlayFormatFlags #flag:VideoOverlayFormatFlags#
-
-    VideoOverlayFormatFlags(..)             ,
-
-
--- ** VideoPackFlags #flag:VideoPackFlags#
-
-    VideoPackFlags(..)                      ,
-
-
--- ** VideoResamplerFlags #flag:VideoResamplerFlags#
-
-    VideoResamplerFlags(..)                 ,
-
-
--- ** VideoScalerFlags #flag:VideoScalerFlags#
-
-    VideoScalerFlags(..)                    ,
-
-
--- ** VideoTimeCodeFlags #flag:VideoTimeCodeFlags#
-
-    VideoTimeCodeFlags(..)                  ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- Flags VideoTimeCodeFlags
-{- |
-Flags related to the time code information.
-For drop frame, only 30000\/1001 and 60000\/1001 frame rates are supported.
-
-/Since: 1.10/
--}
-data VideoTimeCodeFlags = 
-      VideoTimeCodeFlagsNone
-    {- ^
-    No flags
-    -}
-    | VideoTimeCodeFlagsDropFrame
-    {- ^
-    Whether we have drop frame rate
-    -}
-    | VideoTimeCodeFlagsInterlaced
-    {- ^
-    Whether we have interlaced video
-    -}
-    | AnotherVideoTimeCodeFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoTimeCodeFlags where
-    fromEnum VideoTimeCodeFlagsNone = 0
-    fromEnum VideoTimeCodeFlagsDropFrame = 1
-    fromEnum VideoTimeCodeFlagsInterlaced = 2
-    fromEnum (AnotherVideoTimeCodeFlags k) = k
-
-    toEnum 0 = VideoTimeCodeFlagsNone
-    toEnum 1 = VideoTimeCodeFlagsDropFrame
-    toEnum 2 = VideoTimeCodeFlagsInterlaced
-    toEnum k = AnotherVideoTimeCodeFlags k
-
-instance P.Ord VideoTimeCodeFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-instance IsGFlag VideoTimeCodeFlags
-
--- Flags VideoScalerFlags
-{- |
-Different scale flags.
--}
-data VideoScalerFlags = 
-      VideoScalerFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoScalerFlagsInterlaced
-    {- ^
-    Set up a scaler for interlaced content
-    -}
-    | AnotherVideoScalerFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoScalerFlags where
-    fromEnum VideoScalerFlagsNone = 0
-    fromEnum VideoScalerFlagsInterlaced = 1
-    fromEnum (AnotherVideoScalerFlags k) = k
-
-    toEnum 0 = VideoScalerFlagsNone
-    toEnum 1 = VideoScalerFlagsInterlaced
-    toEnum k = AnotherVideoScalerFlags k
-
-instance P.Ord VideoScalerFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_scaler_flags_get_type" c_gst_video_scaler_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoScalerFlags where
-    boxedFlagsType _ = c_gst_video_scaler_flags_get_type
-
-instance IsGFlag VideoScalerFlags
-
--- Flags VideoResamplerFlags
-{- |
-Different resampler flags.
-
-/Since: 1.6/
--}
-data VideoResamplerFlags = 
-      VideoResamplerFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoResamplerFlagsHalfTaps
-    {- ^
-    when no taps are given, half the
-                 number of calculated taps. This can be used when making scalers
-                 for the different fields of an interlaced picture. Since 1.10
-    -}
-    | AnotherVideoResamplerFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoResamplerFlags where
-    fromEnum VideoResamplerFlagsNone = 0
-    fromEnum VideoResamplerFlagsHalfTaps = 1
-    fromEnum (AnotherVideoResamplerFlags k) = k
-
-    toEnum 0 = VideoResamplerFlagsNone
-    toEnum 1 = VideoResamplerFlagsHalfTaps
-    toEnum k = AnotherVideoResamplerFlags k
-
-instance P.Ord VideoResamplerFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_resampler_flags_get_type" c_gst_video_resampler_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoResamplerFlags where
-    boxedFlagsType _ = c_gst_video_resampler_flags_get_type
-
-instance IsGFlag VideoResamplerFlags
-
--- Flags VideoPackFlags
-{- |
-The different flags that can be used when packing and unpacking.
--}
-data VideoPackFlags = 
-      VideoPackFlagsNone
-    {- ^
-    No flag
-    -}
-    | VideoPackFlagsTruncateRange
-    {- ^
-    When the source has a smaller depth
-      than the target format, set the least significant bits of the target
-      to 0. This is likely sightly faster but less accurate. When this flag
-      is not specified, the most significant bits of the source are duplicated
-      in the least significant bits of the destination.
-    -}
-    | VideoPackFlagsInterlaced
-    {- ^
-    The source is interlaced. The unpacked
-      format will be interlaced as well with each line containing
-      information from alternating fields. (Since 1.2)
-    -}
-    | AnotherVideoPackFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoPackFlags where
-    fromEnum VideoPackFlagsNone = 0
-    fromEnum VideoPackFlagsTruncateRange = 1
-    fromEnum VideoPackFlagsInterlaced = 2
-    fromEnum (AnotherVideoPackFlags k) = k
-
-    toEnum 0 = VideoPackFlagsNone
-    toEnum 1 = VideoPackFlagsTruncateRange
-    toEnum 2 = VideoPackFlagsInterlaced
-    toEnum k = AnotherVideoPackFlags k
-
-instance P.Ord VideoPackFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_pack_flags_get_type" c_gst_video_pack_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoPackFlags where
-    boxedFlagsType _ = c_gst_video_pack_flags_get_type
-
-instance IsGFlag VideoPackFlags
-
--- Flags VideoOverlayFormatFlags
-{- |
-Overlay format flags.
--}
-data VideoOverlayFormatFlags = 
-      VideoOverlayFormatFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoOverlayFormatFlagsPremultipliedAlpha
-    {- ^
-    RGB are premultiplied by A\/255.
-    -}
-    | VideoOverlayFormatFlagsGlobalAlpha
-    {- ^
-    a global-alpha value != 1 is set.
-    -}
-    | AnotherVideoOverlayFormatFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoOverlayFormatFlags where
-    fromEnum VideoOverlayFormatFlagsNone = 0
-    fromEnum VideoOverlayFormatFlagsPremultipliedAlpha = 1
-    fromEnum VideoOverlayFormatFlagsGlobalAlpha = 2
-    fromEnum (AnotherVideoOverlayFormatFlags k) = k
-
-    toEnum 0 = VideoOverlayFormatFlagsNone
-    toEnum 1 = VideoOverlayFormatFlagsPremultipliedAlpha
-    toEnum 2 = VideoOverlayFormatFlagsGlobalAlpha
-    toEnum k = AnotherVideoOverlayFormatFlags k
-
-instance P.Ord VideoOverlayFormatFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_overlay_format_flags_get_type" c_gst_video_overlay_format_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoOverlayFormatFlags where
-    boxedFlagsType _ = c_gst_video_overlay_format_flags_get_type
-
-instance IsGFlag VideoOverlayFormatFlags
-
--- Flags VideoMultiviewFlags
-{- |
-GstVideoMultiviewFlags are used to indicate extra properties of a
-stereo\/multiview stream beyond the frame layout and buffer mapping
-that is conveyed in the 'GI.GstVideo.Enums.VideoMultiviewMode'.
--}
-data VideoMultiviewFlags = 
-      VideoMultiviewFlagsNone
-    {- ^
-    No flags
-    -}
-    | VideoMultiviewFlagsRightViewFirst
-    {- ^
-    For stereo streams, the
-        normal arrangement of left and right views is reversed.
-    -}
-    | VideoMultiviewFlagsLeftFlipped
-    {- ^
-    The left view is vertically
-        mirrored.
-    -}
-    | VideoMultiviewFlagsLeftFlopped
-    {- ^
-    The left view is horizontally
-        mirrored.
-    -}
-    | VideoMultiviewFlagsRightFlipped
-    {- ^
-    The right view is
-        vertically mirrored.
-    -}
-    | VideoMultiviewFlagsRightFlopped
-    {- ^
-    The right view is
-        horizontally mirrored.
-    -}
-    | VideoMultiviewFlagsHalfAspect
-    {- ^
-    For frame-packed
-        multiview modes, indicates that the individual
-        views have been encoded with half the true width or height
-        and should be scaled back up for display. This flag
-        is used for overriding input layout interpretation
-        by adjusting pixel-aspect-ratio.
-        For side-by-side, column interleaved or checkerboard packings, the
-        pixel width will be doubled. For row interleaved and top-bottom
-        encodings, pixel height will be doubled.
-    -}
-    | VideoMultiviewFlagsMixedMono
-    {- ^
-    The video stream contains both
-        mono and multiview portions, signalled on each buffer by the
-        absence or presence of the /@gSTVIDEOBUFFERFLAGMULTIPLEVIEW@/
-        buffer flag.
-    -}
-    | AnotherVideoMultiviewFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoMultiviewFlags where
-    fromEnum VideoMultiviewFlagsNone = 0
-    fromEnum VideoMultiviewFlagsRightViewFirst = 1
-    fromEnum VideoMultiviewFlagsLeftFlipped = 2
-    fromEnum VideoMultiviewFlagsLeftFlopped = 4
-    fromEnum VideoMultiviewFlagsRightFlipped = 8
-    fromEnum VideoMultiviewFlagsRightFlopped = 16
-    fromEnum VideoMultiviewFlagsHalfAspect = 16384
-    fromEnum VideoMultiviewFlagsMixedMono = 32768
-    fromEnum (AnotherVideoMultiviewFlags k) = k
-
-    toEnum 0 = VideoMultiviewFlagsNone
-    toEnum 1 = VideoMultiviewFlagsRightViewFirst
-    toEnum 2 = VideoMultiviewFlagsLeftFlipped
-    toEnum 4 = VideoMultiviewFlagsLeftFlopped
-    toEnum 8 = VideoMultiviewFlagsRightFlipped
-    toEnum 16 = VideoMultiviewFlagsRightFlopped
-    toEnum 16384 = VideoMultiviewFlagsHalfAspect
-    toEnum 32768 = VideoMultiviewFlagsMixedMono
-    toEnum k = AnotherVideoMultiviewFlags k
-
-instance P.Ord VideoMultiviewFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_multiview_flags_get_type" c_gst_video_multiview_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoMultiviewFlags where
-    boxedFlagsType _ = c_gst_video_multiview_flags_get_type
-
-instance IsGFlag VideoMultiviewFlags
-
--- Flags VideoFrameMapFlags
-{- |
-Additional mapping flags for 'GI.GstVideo.Structs.VideoFrame.videoFrameMap'.
-
-/Since: 1.6/
--}
-data VideoFrameMapFlags = 
-      VideoFrameMapFlagsNoRef
-    {- ^
-    Don\'t take another reference of the buffer and store it in
-                                       the GstVideoFrame. This makes sure that the buffer stays
-                                       writable while the frame is mapped, but requires that the
-                                       buffer reference stays valid until the frame is unmapped again.
-    -}
-    | VideoFrameMapFlagsLast
-    {- ^
-    Offset to define more flags
-    -}
-    | AnotherVideoFrameMapFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoFrameMapFlags where
-    fromEnum VideoFrameMapFlagsNoRef = 65536
-    fromEnum VideoFrameMapFlagsLast = 16777216
-    fromEnum (AnotherVideoFrameMapFlags k) = k
-
-    toEnum 65536 = VideoFrameMapFlagsNoRef
-    toEnum 16777216 = VideoFrameMapFlagsLast
-    toEnum k = AnotherVideoFrameMapFlags k
-
-instance P.Ord VideoFrameMapFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_frame_map_flags_get_type" c_gst_video_frame_map_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoFrameMapFlags where
-    boxedFlagsType _ = c_gst_video_frame_map_flags_get_type
-
-instance IsGFlag VideoFrameMapFlags
-
--- Flags VideoFrameFlags
-{- |
-Extra video frame flags
--}
-data VideoFrameFlags = 
-      VideoFrameFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoFrameFlagsInterlaced
-    {- ^
-    The video frame is interlaced. In mixed
-              interlace-mode, this flag specifies if the frame is interlaced or
-              progressive.
-    -}
-    | VideoFrameFlagsTff
-    {- ^
-    The video frame has the top field first
-    -}
-    | VideoFrameFlagsRff
-    {- ^
-    The video frame has the repeat flag
-    -}
-    | VideoFrameFlagsOnefield
-    {- ^
-    The video frame has one field
-    -}
-    | VideoFrameFlagsMultipleView
-    {- ^
-    The video contains one or
-        more non-mono views
-    -}
-    | VideoFrameFlagsFirstInBundle
-    {- ^
-    The video frame is the first
-        in a set of corresponding views provided as sequential frames.
-    -}
-    | VideoFrameFlagsTopField
-    {- ^
-    The video frame has the top field only. This
-        is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD
-        (Since: 1.16).
-    -}
-    | VideoFrameFlagsBottomField
-    {- ^
-    The video frame has the bottom field
-        only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD
-        (GST_VIDEO_FRAME_FLAG_TFF flag unset) (Since: 1.16).
-    -}
-    | AnotherVideoFrameFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoFrameFlags where
-    fromEnum VideoFrameFlagsNone = 0
-    fromEnum VideoFrameFlagsInterlaced = 1
-    fromEnum VideoFrameFlagsTff = 2
-    fromEnum VideoFrameFlagsRff = 4
-    fromEnum VideoFrameFlagsOnefield = 8
-    fromEnum VideoFrameFlagsMultipleView = 16
-    fromEnum VideoFrameFlagsFirstInBundle = 32
-    fromEnum VideoFrameFlagsTopField = 10
-    fromEnum VideoFrameFlagsBottomField = 8
-    fromEnum (AnotherVideoFrameFlags k) = k
-
-    toEnum 0 = VideoFrameFlagsNone
-    toEnum 1 = VideoFrameFlagsInterlaced
-    toEnum 2 = VideoFrameFlagsTff
-    toEnum 4 = VideoFrameFlagsRff
-    toEnum 8 = VideoFrameFlagsOnefield
-    toEnum 16 = VideoFrameFlagsMultipleView
-    toEnum 32 = VideoFrameFlagsFirstInBundle
-    toEnum 10 = VideoFrameFlagsTopField
-    toEnum 8 = VideoFrameFlagsBottomField
-    toEnum k = AnotherVideoFrameFlags k
-
-instance P.Ord VideoFrameFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_frame_flags_get_type" c_gst_video_frame_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoFrameFlags where
-    boxedFlagsType _ = c_gst_video_frame_flags_get_type
-
-instance IsGFlag VideoFrameFlags
-
--- Flags VideoFormatFlags
-{- |
-The different video flags that a format info can have.
--}
-data VideoFormatFlags = 
-      VideoFormatFlagsYuv
-    {- ^
-    The video format is YUV, components are numbered
-      0=Y, 1=U, 2=V.
-    -}
-    | VideoFormatFlagsRgb
-    {- ^
-    The video format is RGB, components are numbered
-      0=R, 1=G, 2=B.
-    -}
-    | VideoFormatFlagsGray
-    {- ^
-    The video is gray, there is one gray component
-      with index 0.
-    -}
-    | VideoFormatFlagsAlpha
-    {- ^
-    The video format has an alpha components with
-      the number 3.
-    -}
-    | VideoFormatFlagsLe
-    {- ^
-    The video format has data stored in little
-      endianness.
-    -}
-    | VideoFormatFlagsPalette
-    {- ^
-    The video format has a palette. The palette
-      is stored in the second plane and indexes are stored in the first plane.
-    -}
-    | VideoFormatFlagsComplex
-    {- ^
-    The video format has a complex layout that
-      can\'t be described with the usual information in the 'GI.GstVideo.Structs.VideoFormatInfo.VideoFormatInfo'.
-    -}
-    | VideoFormatFlagsUnpack
-    {- ^
-    This format can be used in a
-      'GI.GstVideo.Callbacks.VideoFormatUnpack' and 'GI.GstVideo.Callbacks.VideoFormatPack' function.
-    -}
-    | VideoFormatFlagsTiled
-    {- ^
-    The format is tiled, there is tiling information
-      in the last plane.
-    -}
-    | AnotherVideoFormatFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoFormatFlags where
-    fromEnum VideoFormatFlagsYuv = 1
-    fromEnum VideoFormatFlagsRgb = 2
-    fromEnum VideoFormatFlagsGray = 4
-    fromEnum VideoFormatFlagsAlpha = 8
-    fromEnum VideoFormatFlagsLe = 16
-    fromEnum VideoFormatFlagsPalette = 32
-    fromEnum VideoFormatFlagsComplex = 64
-    fromEnum VideoFormatFlagsUnpack = 128
-    fromEnum VideoFormatFlagsTiled = 256
-    fromEnum (AnotherVideoFormatFlags k) = k
-
-    toEnum 1 = VideoFormatFlagsYuv
-    toEnum 2 = VideoFormatFlagsRgb
-    toEnum 4 = VideoFormatFlagsGray
-    toEnum 8 = VideoFormatFlagsAlpha
-    toEnum 16 = VideoFormatFlagsLe
-    toEnum 32 = VideoFormatFlagsPalette
-    toEnum 64 = VideoFormatFlagsComplex
-    toEnum 128 = VideoFormatFlagsUnpack
-    toEnum 256 = VideoFormatFlagsTiled
-    toEnum k = AnotherVideoFormatFlags k
-
-instance P.Ord VideoFormatFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_format_flags_get_type" c_gst_video_format_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoFormatFlags where
-    boxedFlagsType _ = c_gst_video_format_flags_get_type
-
-instance IsGFlag VideoFormatFlags
-
--- Flags VideoFlags
-{- |
-Extra video flags
--}
-data VideoFlags = 
-      VideoFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoFlagsVariableFps
-    {- ^
-    a variable fps is selected, fps_n and fps_d
-        denote the maximum fps of the video
-    -}
-    | VideoFlagsPremultipliedAlpha
-    {- ^
-    Each color has been scaled by the alpha
-        value.
-    -}
-    | AnotherVideoFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoFlags where
-    fromEnum VideoFlagsNone = 0
-    fromEnum VideoFlagsVariableFps = 1
-    fromEnum VideoFlagsPremultipliedAlpha = 2
-    fromEnum (AnotherVideoFlags k) = k
-
-    toEnum 0 = VideoFlagsNone
-    toEnum 1 = VideoFlagsVariableFps
-    toEnum 2 = VideoFlagsPremultipliedAlpha
-    toEnum k = AnotherVideoFlags k
-
-instance P.Ord VideoFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_flags_get_type" c_gst_video_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoFlags where
-    boxedFlagsType _ = c_gst_video_flags_get_type
-
-instance IsGFlag VideoFlags
-
--- Flags VideoDitherFlags
-{- |
-Extra flags that influence the result from @/gst_video_chroma_resample_new()/@.
--}
-data VideoDitherFlags = 
-      VideoDitherFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoDitherFlagsInterlaced
-    {- ^
-    the input is interlaced
-    -}
-    | VideoDitherFlagsQuantize
-    {- ^
-    quantize values in addition to adding dither.
-    -}
-    | AnotherVideoDitherFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoDitherFlags where
-    fromEnum VideoDitherFlagsNone = 0
-    fromEnum VideoDitherFlagsInterlaced = 1
-    fromEnum VideoDitherFlagsQuantize = 2
-    fromEnum (AnotherVideoDitherFlags k) = k
-
-    toEnum 0 = VideoDitherFlagsNone
-    toEnum 1 = VideoDitherFlagsInterlaced
-    toEnum 2 = VideoDitherFlagsQuantize
-    toEnum k = AnotherVideoDitherFlags k
-
-instance P.Ord VideoDitherFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_dither_flags_get_type" c_gst_video_dither_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoDitherFlags where
-    boxedFlagsType _ = c_gst_video_dither_flags_get_type
-
-instance IsGFlag VideoDitherFlags
-
--- Flags VideoCodecFrameFlags
-{- |
-Flags for 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-data VideoCodecFrameFlags = 
-      VideoCodecFrameFlagsDecodeOnly
-    {- ^
-    is the frame only meant to be decoded
-    -}
-    | VideoCodecFrameFlagsSyncPoint
-    {- ^
-    is the frame a synchronization point (keyframe)
-    -}
-    | VideoCodecFrameFlagsForceKeyframe
-    {- ^
-    should the output frame be made a keyframe
-    -}
-    | VideoCodecFrameFlagsForceKeyframeHeaders
-    {- ^
-    should the encoder output stream headers
-    -}
-    | AnotherVideoCodecFrameFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoCodecFrameFlags where
-    fromEnum VideoCodecFrameFlagsDecodeOnly = 1
-    fromEnum VideoCodecFrameFlagsSyncPoint = 2
-    fromEnum VideoCodecFrameFlagsForceKeyframe = 4
-    fromEnum VideoCodecFrameFlagsForceKeyframeHeaders = 8
-    fromEnum (AnotherVideoCodecFrameFlags k) = k
-
-    toEnum 1 = VideoCodecFrameFlagsDecodeOnly
-    toEnum 2 = VideoCodecFrameFlagsSyncPoint
-    toEnum 4 = VideoCodecFrameFlagsForceKeyframe
-    toEnum 8 = VideoCodecFrameFlagsForceKeyframeHeaders
-    toEnum k = AnotherVideoCodecFrameFlags k
-
-instance P.Ord VideoCodecFrameFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-instance IsGFlag VideoCodecFrameFlags
-
--- Flags VideoChromaSite
-{- |
-Various Chroma sitings.
--}
-data VideoChromaSite = 
-      VideoChromaSiteUnknown
-    {- ^
-    unknown cositing
-    -}
-    | VideoChromaSiteNone
-    {- ^
-    no cositing
-    -}
-    | VideoChromaSiteHCosited
-    {- ^
-    chroma is horizontally cosited
-    -}
-    | VideoChromaSiteVCosited
-    {- ^
-    chroma is vertically cosited
-    -}
-    | VideoChromaSiteAltLine
-    {- ^
-    choma samples are sited on alternate lines
-    -}
-    | VideoChromaSiteCosited
-    {- ^
-    chroma samples cosited with luma samples
-    -}
-    | VideoChromaSiteJpeg
-    {- ^
-    jpeg style cositing, also for mpeg1 and mjpeg
-    -}
-    | VideoChromaSiteMpeg2
-    {- ^
-    mpeg2 style cositing
-    -}
-    | VideoChromaSiteDv
-    {- ^
-    DV style cositing
-    -}
-    | AnotherVideoChromaSite Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoChromaSite where
-    fromEnum VideoChromaSiteUnknown = 0
-    fromEnum VideoChromaSiteNone = 1
-    fromEnum VideoChromaSiteHCosited = 2
-    fromEnum VideoChromaSiteVCosited = 4
-    fromEnum VideoChromaSiteAltLine = 8
-    fromEnum VideoChromaSiteCosited = 6
-    fromEnum VideoChromaSiteJpeg = 1
-    fromEnum VideoChromaSiteMpeg2 = 2
-    fromEnum VideoChromaSiteDv = 14
-    fromEnum (AnotherVideoChromaSite k) = k
-
-    toEnum 0 = VideoChromaSiteUnknown
-    toEnum 1 = VideoChromaSiteNone
-    toEnum 2 = VideoChromaSiteHCosited
-    toEnum 4 = VideoChromaSiteVCosited
-    toEnum 8 = VideoChromaSiteAltLine
-    toEnum 6 = VideoChromaSiteCosited
-    toEnum 1 = VideoChromaSiteJpeg
-    toEnum 2 = VideoChromaSiteMpeg2
-    toEnum 14 = VideoChromaSiteDv
-    toEnum k = AnotherVideoChromaSite k
-
-instance P.Ord VideoChromaSite where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_chroma_site_get_type" c_gst_video_chroma_site_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoChromaSite where
-    boxedFlagsType _ = c_gst_video_chroma_site_get_type
-
-instance IsGFlag VideoChromaSite
-
--- Flags VideoChromaFlags
-{- |
-Extra flags that influence the result from @/gst_video_chroma_resample_new()/@.
--}
-data VideoChromaFlags = 
-      VideoChromaFlagsNone
-    {- ^
-    no flags
-    -}
-    | VideoChromaFlagsInterlaced
-    {- ^
-    the input is interlaced
-    -}
-    | AnotherVideoChromaFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoChromaFlags where
-    fromEnum VideoChromaFlagsNone = 0
-    fromEnum VideoChromaFlagsInterlaced = 1
-    fromEnum (AnotherVideoChromaFlags k) = k
-
-    toEnum 0 = VideoChromaFlagsNone
-    toEnum 1 = VideoChromaFlagsInterlaced
-    toEnum k = AnotherVideoChromaFlags k
-
-instance P.Ord VideoChromaFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_chroma_flags_get_type" c_gst_video_chroma_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoChromaFlags where
-    boxedFlagsType _ = c_gst_video_chroma_flags_get_type
-
-instance IsGFlag VideoChromaFlags
-
--- Flags VideoBufferFlags
-{- |
-Additional video buffer flags. These flags can potentially be used on any
-buffers carrying video data - even encoded data.
-
-Note that these are only valid for 'GI.Gst.Structs.Caps.Caps' of type: video\/...
-They can conflict with other extended buffer flags.
--}
-data VideoBufferFlags = 
-      VideoBufferFlagsInterlaced
-    {- ^
-    If the 'GI.Gst.Structs.Buffer.Buffer' is interlaced. In mixed
-                                        interlace-mode, this flags specifies if the frame is
-                                        interlaced or progressive.
-    -}
-    | VideoBufferFlagsTff
-    {- ^
-    If the 'GI.Gst.Structs.Buffer.Buffer' is interlaced, then the first field
-                                        in the video frame is the top field.  If unset, the
-                                        bottom field is first.
-    -}
-    | VideoBufferFlagsRff
-    {- ^
-    If the 'GI.Gst.Structs.Buffer.Buffer' is interlaced, then the first field
-                                        (as defined by the 'GI.GstVideo.Flags.VideoBufferFlagsTff' flag setting)
-                                        is repeated.
-    -}
-    | VideoBufferFlagsOnefield
-    {- ^
-    If the 'GI.Gst.Structs.Buffer.Buffer' is interlaced, then only the
-                                        first field (as defined by the 'GI.GstVideo.Flags.VideoBufferFlagsTff'
-                                        flag setting) is to be displayed (Since: 1.16).
-    -}
-    | VideoBufferFlagsMultipleView
-    {- ^
-    The 'GI.Gst.Structs.Buffer.Buffer' contains one or more specific views,
-                                        such as left or right eye view. This flags is set on
-                                        any buffer that contains non-mono content - even for
-                                        streams that contain only a single viewpoint. In mixed
-                                        mono \/ non-mono streams, the absense of the flag marks
-                                        mono buffers.
-    -}
-    | VideoBufferFlagsFirstInBundle
-    {- ^
-    When conveying stereo\/multiview content with
-                                        frame-by-frame methods, this flag marks the first buffer
-                                         in a bundle of frames that belong together.
-    -}
-    | VideoBufferFlagsTopField
-    {- ^
-    The video frame has the top field only. This is the
-                                        same as GST_VIDEO_BUFFER_FLAG_TFF |
-                                        GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16).
-    -}
-    | VideoBufferFlagsBottomField
-    {- ^
-    The video frame has the bottom field only. This is
-                                        the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD
-                                        (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16).
-    -}
-    | VideoBufferFlagsLast
-    {- ^
-    Offset to define more flags
-    -}
-    | AnotherVideoBufferFlags Int
-    -- ^ Catch-all for unknown values
-    deriving (Show, Eq)
-
-instance P.Enum VideoBufferFlags where
-    fromEnum VideoBufferFlagsInterlaced = 1048576
-    fromEnum VideoBufferFlagsTff = 2097152
-    fromEnum VideoBufferFlagsRff = 4194304
-    fromEnum VideoBufferFlagsOnefield = 8388608
-    fromEnum VideoBufferFlagsMultipleView = 16777216
-    fromEnum VideoBufferFlagsFirstInBundle = 33554432
-    fromEnum VideoBufferFlagsTopField = 10485760
-    fromEnum VideoBufferFlagsBottomField = 8388608
-    fromEnum VideoBufferFlagsLast = 268435456
-    fromEnum (AnotherVideoBufferFlags k) = k
-
-    toEnum 1048576 = VideoBufferFlagsInterlaced
-    toEnum 2097152 = VideoBufferFlagsTff
-    toEnum 4194304 = VideoBufferFlagsRff
-    toEnum 8388608 = VideoBufferFlagsOnefield
-    toEnum 16777216 = VideoBufferFlagsMultipleView
-    toEnum 33554432 = VideoBufferFlagsFirstInBundle
-    toEnum 10485760 = VideoBufferFlagsTopField
-    toEnum 8388608 = VideoBufferFlagsBottomField
-    toEnum 268435456 = VideoBufferFlagsLast
-    toEnum k = AnotherVideoBufferFlags k
-
-instance P.Ord VideoBufferFlags where
-    compare a b = P.compare (P.fromEnum a) (P.fromEnum b)
-
-foreign import ccall "gst_video_buffer_flags_get_type" c_gst_video_buffer_flags_get_type :: 
-    IO GType
-
-instance BoxedFlags VideoBufferFlags where
-    boxedFlagsType _ = c_gst_video_buffer_flags_get_type
-
-instance IsGFlag VideoBufferFlags
-
-
diff --git a/GI/GstVideo/Flags.hs-boot b/GI/GstVideo/Flags.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Flags.hs-boot
+++ /dev/null
@@ -1,82 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Flags 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.ManagedPtr as B.ManagedPtr
-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.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
-
-data VideoTimeCodeFlags
-instance P.Enum VideoTimeCodeFlags where
-instance IsGFlag VideoTimeCodeFlags
-data VideoScalerFlags
-instance P.Enum VideoScalerFlags where
-instance BoxedFlags VideoScalerFlags where
-instance IsGFlag VideoScalerFlags
-data VideoResamplerFlags
-instance P.Enum VideoResamplerFlags where
-instance BoxedFlags VideoResamplerFlags where
-instance IsGFlag VideoResamplerFlags
-data VideoPackFlags
-instance P.Enum VideoPackFlags where
-instance BoxedFlags VideoPackFlags where
-instance IsGFlag VideoPackFlags
-data VideoOverlayFormatFlags
-instance P.Enum VideoOverlayFormatFlags where
-instance BoxedFlags VideoOverlayFormatFlags where
-instance IsGFlag VideoOverlayFormatFlags
-data VideoMultiviewFlags
-instance P.Enum VideoMultiviewFlags where
-instance BoxedFlags VideoMultiviewFlags where
-instance IsGFlag VideoMultiviewFlags
-data VideoFrameMapFlags
-instance P.Enum VideoFrameMapFlags where
-instance BoxedFlags VideoFrameMapFlags where
-instance IsGFlag VideoFrameMapFlags
-data VideoFrameFlags
-instance P.Enum VideoFrameFlags where
-instance BoxedFlags VideoFrameFlags where
-instance IsGFlag VideoFrameFlags
-data VideoFormatFlags
-instance P.Enum VideoFormatFlags where
-instance BoxedFlags VideoFormatFlags where
-instance IsGFlag VideoFormatFlags
-data VideoFlags
-instance P.Enum VideoFlags where
-instance BoxedFlags VideoFlags where
-instance IsGFlag VideoFlags
-data VideoDitherFlags
-instance P.Enum VideoDitherFlags where
-instance BoxedFlags VideoDitherFlags where
-instance IsGFlag VideoDitherFlags
-data VideoCodecFrameFlags
-instance P.Enum VideoCodecFrameFlags where
-instance IsGFlag VideoCodecFrameFlags
-data VideoChromaSite
-instance P.Enum VideoChromaSite where
-instance BoxedFlags VideoChromaSite where
-instance IsGFlag VideoChromaSite
-data VideoChromaFlags
-instance P.Enum VideoChromaFlags where
-instance BoxedFlags VideoChromaFlags where
-instance IsGFlag VideoChromaFlags
-data VideoBufferFlags
-instance P.Enum VideoBufferFlags where
-instance BoxedFlags VideoBufferFlags where
-instance IsGFlag VideoBufferFlags
diff --git a/GI/GstVideo/Functions.hs b/GI/GstVideo/Functions.hs
deleted file mode 100644
--- a/GI/GstVideo/Functions.hs
+++ /dev/null
@@ -1,2198 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Functions
-    ( 
-
- -- * Methods
--- ** bufferAddVideoAffineTransformationMeta #method:bufferAddVideoAffineTransformationMeta#
-
-    bufferAddVideoAffineTransformationMeta  ,
-
-
--- ** bufferAddVideoCaptionMeta #method:bufferAddVideoCaptionMeta#
-
-    bufferAddVideoCaptionMeta               ,
-
-
--- ** bufferAddVideoGlTextureUploadMeta #method:bufferAddVideoGlTextureUploadMeta#
-
-    bufferAddVideoGlTextureUploadMeta       ,
-
-
--- ** bufferAddVideoMeta #method:bufferAddVideoMeta#
-
-    bufferAddVideoMeta                      ,
-
-
--- ** bufferAddVideoMetaFull #method:bufferAddVideoMetaFull#
-
-    bufferAddVideoMetaFull                  ,
-
-
--- ** bufferAddVideoOverlayCompositionMeta #method:bufferAddVideoOverlayCompositionMeta#
-
-    bufferAddVideoOverlayCompositionMeta    ,
-
-
--- ** bufferAddVideoRegionOfInterestMeta #method:bufferAddVideoRegionOfInterestMeta#
-
-    bufferAddVideoRegionOfInterestMeta      ,
-
-
--- ** bufferAddVideoRegionOfInterestMetaId #method:bufferAddVideoRegionOfInterestMetaId#
-
-    bufferAddVideoRegionOfInterestMetaId    ,
-
-
--- ** bufferAddVideoTimeCodeMeta #method:bufferAddVideoTimeCodeMeta#
-
-    bufferAddVideoTimeCodeMeta              ,
-
-
--- ** bufferAddVideoTimeCodeMetaFull #method:bufferAddVideoTimeCodeMetaFull#
-
-    bufferAddVideoTimeCodeMetaFull          ,
-
-
--- ** bufferGetVideoMeta #method:bufferGetVideoMeta#
-
-    bufferGetVideoMeta                      ,
-
-
--- ** bufferGetVideoMetaId #method:bufferGetVideoMetaId#
-
-    bufferGetVideoMetaId                    ,
-
-
--- ** bufferGetVideoRegionOfInterestMetaId #method:bufferGetVideoRegionOfInterestMetaId#
-
-    bufferGetVideoRegionOfInterestMetaId    ,
-
-
--- ** bufferPoolConfigGetVideoAlignment #method:bufferPoolConfigGetVideoAlignment#
-
-    bufferPoolConfigGetVideoAlignment       ,
-
-
--- ** bufferPoolConfigSetVideoAlignment #method:bufferPoolConfigSetVideoAlignment#
-
-    bufferPoolConfigSetVideoAlignment       ,
-
-
--- ** isVideoOverlayPrepareWindowHandleMessage #method:isVideoOverlayPrepareWindowHandleMessage#
-
-    isVideoOverlayPrepareWindowHandleMessage,
-
-
--- ** videoAffineTransformationMetaApiGetType #method:videoAffineTransformationMetaApiGetType#
-
-    videoAffineTransformationMetaApiGetType ,
-
-
--- ** videoBlend #method:videoBlend#
-
-    videoBlend                              ,
-
-
--- ** videoBlendScaleLinearRGBA #method:videoBlendScaleLinearRGBA#
-
-    videoBlendScaleLinearRGBA               ,
-
-
--- ** videoCalculateDisplayRatio #method:videoCalculateDisplayRatio#
-
-    videoCalculateDisplayRatio              ,
-
-
--- ** videoCaptionMetaApiGetType #method:videoCaptionMetaApiGetType#
-
-    videoCaptionMetaApiGetType              ,
-
-
--- ** videoChromaFromString #method:videoChromaFromString#
-
-    videoChromaFromString                   ,
-
-
--- ** videoChromaResample #method:videoChromaResample#
-
-    videoChromaResample                     ,
-
-
--- ** videoChromaToString #method:videoChromaToString#
-
-    videoChromaToString                     ,
-
-
--- ** videoColorTransferDecode #method:videoColorTransferDecode#
-
-    videoColorTransferDecode                ,
-
-
--- ** videoColorTransferEncode #method:videoColorTransferEncode#
-
-    videoColorTransferEncode                ,
-
-
--- ** videoConvertSample #method:videoConvertSample#
-
-    videoConvertSample                      ,
-
-
--- ** videoConvertSampleAsync #method:videoConvertSampleAsync#
-
-    videoConvertSampleAsync                 ,
-
-
--- ** videoCropMetaApiGetType #method:videoCropMetaApiGetType#
-
-    videoCropMetaApiGetType                 ,
-
-
--- ** videoEventIsForceKeyUnit #method:videoEventIsForceKeyUnit#
-
-    videoEventIsForceKeyUnit                ,
-
-
--- ** videoEventNewDownstreamForceKeyUnit #method:videoEventNewDownstreamForceKeyUnit#
-
-    videoEventNewDownstreamForceKeyUnit     ,
-
-
--- ** videoEventNewStillFrame #method:videoEventNewStillFrame#
-
-    videoEventNewStillFrame                 ,
-
-
--- ** videoEventNewUpstreamForceKeyUnit #method:videoEventNewUpstreamForceKeyUnit#
-
-    videoEventNewUpstreamForceKeyUnit       ,
-
-
--- ** videoEventParseDownstreamForceKeyUnit #method:videoEventParseDownstreamForceKeyUnit#
-
-    videoEventParseDownstreamForceKeyUnit   ,
-
-
--- ** videoEventParseStillFrame #method:videoEventParseStillFrame#
-
-    videoEventParseStillFrame               ,
-
-
--- ** videoEventParseUpstreamForceKeyUnit #method:videoEventParseUpstreamForceKeyUnit#
-
-    videoEventParseUpstreamForceKeyUnit     ,
-
-
--- ** videoGlTextureUploadMetaApiGetType #method:videoGlTextureUploadMetaApiGetType#
-
-    videoGlTextureUploadMetaApiGetType      ,
-
-
--- ** videoGuessFramerate #method:videoGuessFramerate#
-
-    videoGuessFramerate                     ,
-
-
--- ** videoMetaApiGetType #method:videoMetaApiGetType#
-
-    videoMetaApiGetType                     ,
-
-
--- ** videoMultiviewGetDoubledHeightModes #method:videoMultiviewGetDoubledHeightModes#
-
-    videoMultiviewGetDoubledHeightModes     ,
-
-
--- ** videoMultiviewGetDoubledSizeModes #method:videoMultiviewGetDoubledSizeModes#
-
-    videoMultiviewGetDoubledSizeModes       ,
-
-
--- ** videoMultiviewGetDoubledWidthModes #method:videoMultiviewGetDoubledWidthModes#
-
-    videoMultiviewGetDoubledWidthModes      ,
-
-
--- ** videoMultiviewGetMonoModes #method:videoMultiviewGetMonoModes#
-
-    videoMultiviewGetMonoModes              ,
-
-
--- ** videoMultiviewGetUnpackedModes #method:videoMultiviewGetUnpackedModes#
-
-    videoMultiviewGetUnpackedModes          ,
-
-
--- ** videoMultiviewGuessHalfAspect #method:videoMultiviewGuessHalfAspect#
-
-    videoMultiviewGuessHalfAspect           ,
-
-
--- ** videoMultiviewVideoInfoChangeMode #method:videoMultiviewVideoInfoChangeMode#
-
-    videoMultiviewVideoInfoChangeMode       ,
-
-
--- ** videoOverlayCompositionMetaApiGetType #method:videoOverlayCompositionMetaApiGetType#
-
-    videoOverlayCompositionMetaApiGetType   ,
-
-
--- ** videoRegionOfInterestMetaApiGetType #method:videoRegionOfInterestMetaApiGetType#
-
-    videoRegionOfInterestMetaApiGetType     ,
-
-
--- ** videoTileGetIndex #method:videoTileGetIndex#
-
-    videoTileGetIndex                       ,
-
-
--- ** videoTimeCodeMetaApiGetType #method:videoTimeCodeMetaApiGetType#
-
-    videoTimeCodeMetaApiGetType             ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GLib.Callbacks as GLib.Callbacks
-import qualified GI.GLib.Structs.DateTime as GLib.DateTime
-import qualified GI.GObject.Callbacks as GObject.Callbacks
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-import qualified GI.Gst.Structs.Caps as Gst.Caps
-import qualified GI.Gst.Structs.Event as Gst.Event
-import qualified GI.Gst.Structs.Message as Gst.Message
-import qualified GI.Gst.Structs.Sample as Gst.Sample
-import qualified GI.Gst.Structs.Structure as Gst.Structure
-import qualified GI.GstVideo.Callbacks as GstVideo.Callbacks
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoAffineTransformationMeta as GstVideo.VideoAffineTransformationMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoAlignment as GstVideo.VideoAlignment
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoCaptionMeta as GstVideo.VideoCaptionMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoChromaResample as GstVideo.VideoChromaResample
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoFrame as GstVideo.VideoFrame
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoGLTextureUploadMeta as GstVideo.VideoGLTextureUploadMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoInfo as GstVideo.VideoInfo
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoMeta as GstVideo.VideoMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoOverlayComposition as GstVideo.VideoOverlayComposition
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoOverlayCompositionMeta as GstVideo.VideoOverlayCompositionMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoRegionOfInterestMeta as GstVideo.VideoRegionOfInterestMeta
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoTimeCode as GstVideo.VideoTimeCode
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoTimeCodeMeta as GstVideo.VideoTimeCodeMeta
-
--- function gst_video_time_code_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_meta_api_get_type" gst_video_time_code_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoTimeCodeMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoTimeCodeMetaApiGetType  = liftIO $ do
-    result <- gst_video_time_code_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_tile_get_index
--- Args : [Arg {argCName = "mode", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTileMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTileMode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "x coordinate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "y coordinate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x_tiles", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "number of horizintal tiles", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y_tiles", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "number of vertical tiles", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_tile_get_index" gst_video_tile_get_index :: 
-    CUInt ->                                -- mode : TInterface (Name {namespace = "GstVideo", name = "VideoTileMode"})
-    Int32 ->                                -- x : TBasicType TInt
-    Int32 ->                                -- y : TBasicType TInt
-    Int32 ->                                -- x_tiles : TBasicType TInt
-    Int32 ->                                -- y_tiles : TBasicType TInt
-    IO Word32
-
-{- |
-Get the tile index of the tile at coordinates /@x@/ and /@y@/ in the tiled
-image of /@xTiles@/ by /@yTiles@/.
-
-Use this method when /@mode@/ is of type 'GI.GstVideo.Enums.VideoTileTypeIndexed'.
-
-/Since: 1.4/
--}
-videoTileGetIndex ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.Enums.VideoTileMode
-    {- ^ /@mode@/: a 'GI.GstVideo.Enums.VideoTileMode' -}
-    -> Int32
-    {- ^ /@x@/: x coordinate -}
-    -> Int32
-    {- ^ /@y@/: y coordinate -}
-    -> Int32
-    {- ^ /@xTiles@/: number of horizintal tiles -}
-    -> Int32
-    {- ^ /@yTiles@/: number of vertical tiles -}
-    -> m Word32
-    {- ^ __Returns:__ the index of the tile at /@x@/ and /@y@/ in the tiled image of
-  /@xTiles@/ by /@yTiles@/. -}
-videoTileGetIndex mode x y xTiles yTiles = liftIO $ do
-    let mode' = (fromIntegral . fromEnum) mode
-    result <- gst_video_tile_get_index mode' x y xTiles yTiles
-    return result
-
-
--- function gst_video_region_of_interest_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_region_of_interest_meta_api_get_type" gst_video_region_of_interest_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoRegionOfInterestMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoRegionOfInterestMetaApiGetType  = liftIO $ do
-    result <- gst_video_region_of_interest_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_overlay_composition_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_meta_api_get_type" gst_video_overlay_composition_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoOverlayCompositionMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoOverlayCompositionMetaApiGetType  = liftIO $ do
-    result <- gst_video_overlay_composition_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_multiview_video_info_change_mode
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstVideoInfo structure to operate on", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "out_mview_mode", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMultiviewMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstVideoMultiviewMode value", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "out_mview_flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMultiviewFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A set of #GstVideoMultiviewFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_video_info_change_mode" gst_video_multiview_video_info_change_mode :: 
-    Ptr GstVideo.VideoInfo.VideoInfo ->     -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    CInt ->                                 -- out_mview_mode : TInterface (Name {namespace = "GstVideo", name = "VideoMultiviewMode"})
-    CUInt ->                                -- out_mview_flags : TInterface (Name {namespace = "GstVideo", name = "VideoMultiviewFlags"})
-    IO ()
-
-{- |
-Utility function that transforms the width\/height\/PAR
-and multiview mode and flags of a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' into
-the requested mode.
-
-/Since: 1.6/
--}
-videoMultiviewVideoInfoChangeMode ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.VideoInfo.VideoInfo
-    {- ^ /@info@/: A 'GI.GstVideo.Structs.VideoInfo.VideoInfo' structure to operate on -}
-    -> GstVideo.Enums.VideoMultiviewMode
-    {- ^ /@outMviewMode@/: A 'GI.GstVideo.Enums.VideoMultiviewMode' value -}
-    -> [GstVideo.Flags.VideoMultiviewFlags]
-    {- ^ /@outMviewFlags@/: A set of 'GI.GstVideo.Flags.VideoMultiviewFlags' -}
-    -> m ()
-videoMultiviewVideoInfoChangeMode info outMviewMode outMviewFlags = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    let outMviewMode' = (fromIntegral . fromEnum) outMviewMode
-    let outMviewFlags' = gflagsToWord outMviewFlags
-    gst_video_multiview_video_info_change_mode info' outMviewMode' outMviewFlags'
-    touchManagedPtr info
-    return ()
-
-
--- function gst_video_multiview_guess_half_aspect
--- Args : [Arg {argCName = "mv_mode", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMultiviewMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstVideoMultiviewMode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Video frame width in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Video frame height in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "par_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the video pixel-aspect-ratio", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "par_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the video pixel-aspect-ratio", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_guess_half_aspect" gst_video_multiview_guess_half_aspect :: 
-    CInt ->                                 -- mv_mode : TInterface (Name {namespace = "GstVideo", name = "VideoMultiviewMode"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    Word32 ->                               -- par_n : TBasicType TUInt
-    Word32 ->                               -- par_d : TBasicType TUInt
-    IO CInt
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-videoMultiviewGuessHalfAspect ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.Enums.VideoMultiviewMode
-    {- ^ /@mvMode@/: A 'GI.GstVideo.Enums.VideoMultiviewMode' -}
-    -> Word32
-    {- ^ /@width@/: Video frame width in pixels -}
-    -> Word32
-    {- ^ /@height@/: Video frame height in pixels -}
-    -> Word32
-    {- ^ /@parN@/: Numerator of the video pixel-aspect-ratio -}
-    -> Word32
-    {- ^ /@parD@/: Denominator of the video pixel-aspect-ratio -}
-    -> m Bool
-    {- ^ __Returns:__ A boolean indicating whether the
-  @/GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT/@ flag should be set.
-
-Utility function that heuristically guess whether a
-frame-packed stereoscopic video contains half width\/height
-encoded views, or full-frame views by looking at the
-overall display aspect ratio. -}
-videoMultiviewGuessHalfAspect mvMode width height parN parD = liftIO $ do
-    let mvMode' = (fromIntegral . fromEnum) mvMode
-    result <- gst_video_multiview_guess_half_aspect mvMode' width height parN parD
-    let result' = (/= 0) result
-    return result'
-
-
--- function gst_video_multiview_get_unpacked_modes
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GObject", name = "Value"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_get_unpacked_modes" gst_video_multiview_get_unpacked_modes :: 
-    IO (Ptr GValue)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-videoMultiviewGetUnpackedModes ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GValue
-    {- ^ __Returns:__ A const 'GI.GObject.Structs.Value.Value' containing a list of \'unpacked\' stereo video modes
-
-Utility function that returns a 'GI.GObject.Structs.Value.Value' with a GstList of unpacked
-stereo video modes (separated\/frame-by-frame\/frame-by-frame-multiview)
-for use in caps negotiations. -}
-videoMultiviewGetUnpackedModes  = liftIO $ do
-    result <- gst_video_multiview_get_unpacked_modes
-    checkUnexpectedReturnNULL "videoMultiviewGetUnpackedModes" result
-    result' <- (newBoxed GValue) result
-    return result'
-
-
--- function gst_video_multiview_get_mono_modes
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GObject", name = "Value"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_get_mono_modes" gst_video_multiview_get_mono_modes :: 
-    IO (Ptr GValue)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-videoMultiviewGetMonoModes ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GValue
-    {- ^ __Returns:__ A const 'GI.GObject.Structs.Value.Value' containing a list of mono video modes
-
-Utility function that returns a 'GI.GObject.Structs.Value.Value' with a GstList of mono video
-modes (mono\/left\/right) for use in caps negotiations. -}
-videoMultiviewGetMonoModes  = liftIO $ do
-    result <- gst_video_multiview_get_mono_modes
-    checkUnexpectedReturnNULL "videoMultiviewGetMonoModes" result
-    result' <- (newBoxed GValue) result
-    return result'
-
-
--- function gst_video_multiview_get_doubled_width_modes
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GObject", name = "Value"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_get_doubled_width_modes" gst_video_multiview_get_doubled_width_modes :: 
-    IO (Ptr GValue)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-videoMultiviewGetDoubledWidthModes ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GValue
-    {- ^ __Returns:__ A const 'GI.GObject.Structs.Value.Value' containing a list of stereo video modes
-
-Utility function that returns a 'GI.GObject.Structs.Value.Value' with a GstList of packed stereo
-video modes with double the width of a single view for use in
-caps negotiations. Currently this is side-by-side, side-by-side-quincunx
-and column-interleaved. -}
-videoMultiviewGetDoubledWidthModes  = liftIO $ do
-    result <- gst_video_multiview_get_doubled_width_modes
-    checkUnexpectedReturnNULL "videoMultiviewGetDoubledWidthModes" result
-    result' <- (newBoxed GValue) result
-    return result'
-
-
--- function gst_video_multiview_get_doubled_size_modes
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GObject", name = "Value"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_get_doubled_size_modes" gst_video_multiview_get_doubled_size_modes :: 
-    IO (Ptr GValue)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-videoMultiviewGetDoubledSizeModes ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GValue
-    {- ^ __Returns:__ A const 'GI.GObject.Structs.Value.Value' containing a list of stereo video modes
-
-Utility function that returns a 'GI.GObject.Structs.Value.Value' with a GstList of packed
-stereo video modes that have double the width\/height of a single
-view for use in caps negotiation. Currently this is just
-\'checkerboard\' layout. -}
-videoMultiviewGetDoubledSizeModes  = liftIO $ do
-    result <- gst_video_multiview_get_doubled_size_modes
-    checkUnexpectedReturnNULL "videoMultiviewGetDoubledSizeModes" result
-    result' <- (newBoxed GValue) result
-    return result'
-
-
--- function gst_video_multiview_get_doubled_height_modes
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GObject", name = "Value"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_multiview_get_doubled_height_modes" gst_video_multiview_get_doubled_height_modes :: 
-    IO (Ptr GValue)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.6/
--}
-videoMultiviewGetDoubledHeightModes ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GValue
-    {- ^ __Returns:__ A const 'GI.GObject.Structs.Value.Value' containing a list of stereo video modes
-
-Utility function that returns a 'GI.GObject.Structs.Value.Value' with a GstList of packed stereo
-video modes with double the height of a single view for use in
-caps negotiations. Currently this is top-bottom and row-interleaved. -}
-videoMultiviewGetDoubledHeightModes  = liftIO $ do
-    result <- gst_video_multiview_get_doubled_height_modes
-    checkUnexpectedReturnNULL "videoMultiviewGetDoubledHeightModes" result
-    result' <- (newBoxed GValue) result
-    return result'
-
-
--- function gst_video_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_meta_api_get_type" gst_video_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoMetaApiGetType  = liftIO $ do
-    result <- gst_video_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_guess_framerate
--- Args : [Arg {argCName = "duration", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Nominal duration of one frame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_n", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the calculated framerate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "dest_d", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the calculated framerate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_guess_framerate" gst_video_guess_framerate :: 
-    Word64 ->                               -- duration : TBasicType TUInt64
-    Ptr Int32 ->                            -- dest_n : TBasicType TInt
-    Ptr Int32 ->                            -- dest_d : TBasicType TInt
-    IO CInt
-
-{- |
-Given the nominal duration of one video frame,
-this function will check some standard framerates for
-a close match (within 0.1%) and return one if possible,
-
-It will calculate an arbitrary framerate if no close
-match was found, and return 'False'.
-
-It returns 'False' if a duration of 0 is passed.
-
-/Since: 1.6/
--}
-videoGuessFramerate ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word64
-    {- ^ /@duration@/: Nominal duration of one frame -}
-    -> m ((Bool, Int32, Int32))
-    {- ^ __Returns:__ 'True' if a close \"standard\" framerate was
-recognised, and 'False' otherwise. -}
-videoGuessFramerate duration = liftIO $ do
-    destN <- allocMem :: IO (Ptr Int32)
-    destD <- allocMem :: IO (Ptr Int32)
-    result <- gst_video_guess_framerate duration destN destD
-    let result' = (/= 0) result
-    destN' <- peek destN
-    destD' <- peek destD
-    freeMem destN
-    freeMem destD
-    return (result', destN', destD')
-
-
--- function gst_video_gl_texture_upload_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_gl_texture_upload_meta_api_get_type" gst_video_gl_texture_upload_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoGlTextureUploadMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoGlTextureUploadMetaApiGetType  = liftIO $ do
-    result <- gst_video_gl_texture_upload_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_event_parse_upstream_force_key_unit
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to parse", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "running_time", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the running_time in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "all_headers", argType = TBasicType TBoolean, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the all_headers flag in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "count", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the count field in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_parse_upstream_force_key_unit" gst_video_event_parse_upstream_force_key_unit :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr Word64 ->                           -- running_time : TBasicType TUInt64
-    Ptr CInt ->                             -- all_headers : TBasicType TBoolean
-    Ptr Word32 ->                           -- count : TBasicType TUInt
-    IO CInt
-
-{- |
-Get running-time, all-headers and count in the force key unit event. See
-'GI.GstVideo.Functions.videoEventNewUpstreamForceKeyUnit' for a full description of the
-upstream force key unit event.
-
-Create an upstream force key unit event using  'GI.GstVideo.Functions.videoEventNewUpstreamForceKeyUnit'
-
-/@runningTime@/ will be adjusted for any pad offsets of pads it was passing through.
--}
-videoEventParseUpstreamForceKeyUnit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to parse -}
-    -> m ((Bool, Word64, Bool, Word32))
-    {- ^ __Returns:__ 'True' if the event is a valid upstream force-key-unit event. 'False' if not -}
-videoEventParseUpstreamForceKeyUnit event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    runningTime <- allocMem :: IO (Ptr Word64)
-    allHeaders <- allocMem :: IO (Ptr CInt)
-    count <- allocMem :: IO (Ptr Word32)
-    result <- gst_video_event_parse_upstream_force_key_unit event' runningTime allHeaders count
-    let result' = (/= 0) result
-    runningTime' <- peek runningTime
-    allHeaders' <- peek allHeaders
-    let allHeaders'' = (/= 0) allHeaders'
-    count' <- peek count
-    touchManagedPtr event
-    freeMem runningTime
-    freeMem allHeaders
-    freeMem count
-    return (result', runningTime', allHeaders'', count')
-
-
--- function gst_video_event_parse_still_frame
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to parse", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "in_still", argType = TBasicType TBoolean, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "\n    A boolean to receive the still-frame status from the event, or NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_parse_still_frame" gst_video_event_parse_still_frame :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr CInt ->                             -- in_still : TBasicType TBoolean
-    IO CInt
-
-{- |
-Parse a 'GI.Gst.Structs.Event.Event', identify if it is a Still Frame event, and
-return the still-frame state from the event if it is.
-If the event represents the start of a still frame, the in_still
-variable will be set to TRUE, otherwise FALSE. It is OK to pass NULL for the
-in_still variable order to just check whether the event is a valid still-frame
-event.
-
-Create a still frame event using 'GI.GstVideo.Functions.videoEventNewStillFrame'
--}
-videoEventParseStillFrame ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to parse -}
-    -> m ((Bool, Bool))
-    {- ^ __Returns:__ 'True' if the event is a valid still-frame event. 'False' if not -}
-videoEventParseStillFrame event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    inStill <- allocMem :: IO (Ptr CInt)
-    result <- gst_video_event_parse_still_frame event' inStill
-    let result' = (/= 0) result
-    inStill' <- peek inStill
-    let inStill'' = (/= 0) inStill'
-    touchManagedPtr event
-    freeMem inStill
-    return (result', inStill'')
-
-
--- function gst_video_event_parse_downstream_force_key_unit
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to parse", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "timestamp", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the timestamp in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "stream_time", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the stream-time in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "running_time", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the running-time in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "all_headers", argType = TBasicType TBoolean, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the all_headers flag in the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "count", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to the count field of the event", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_parse_downstream_force_key_unit" gst_video_event_parse_downstream_force_key_unit :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr Word64 ->                           -- timestamp : TBasicType TUInt64
-    Ptr Word64 ->                           -- stream_time : TBasicType TUInt64
-    Ptr Word64 ->                           -- running_time : TBasicType TUInt64
-    Ptr CInt ->                             -- all_headers : TBasicType TBoolean
-    Ptr Word32 ->                           -- count : TBasicType TUInt
-    IO CInt
-
-{- |
-Get timestamp, stream-time, running-time, all-headers and count in the force
-key unit event. See 'GI.GstVideo.Functions.videoEventNewDownstreamForceKeyUnit' for a
-full description of the downstream force key unit event.
-
-/@runningTime@/ will be adjusted for any pad offsets of pads it was passing through.
--}
-videoEventParseDownstreamForceKeyUnit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to parse -}
-    -> m ((Bool, Word64, Word64, Word64, Bool, Word32))
-    {- ^ __Returns:__ 'True' if the event is a valid downstream force key unit event. -}
-videoEventParseDownstreamForceKeyUnit event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    timestamp <- allocMem :: IO (Ptr Word64)
-    streamTime <- allocMem :: IO (Ptr Word64)
-    runningTime <- allocMem :: IO (Ptr Word64)
-    allHeaders <- allocMem :: IO (Ptr CInt)
-    count <- allocMem :: IO (Ptr Word32)
-    result <- gst_video_event_parse_downstream_force_key_unit event' timestamp streamTime runningTime allHeaders count
-    let result' = (/= 0) result
-    timestamp' <- peek timestamp
-    streamTime' <- peek streamTime
-    runningTime' <- peek runningTime
-    allHeaders' <- peek allHeaders
-    let allHeaders'' = (/= 0) allHeaders'
-    count' <- peek count
-    touchManagedPtr event
-    freeMem timestamp
-    freeMem streamTime
-    freeMem runningTime
-    freeMem allHeaders
-    freeMem count
-    return (result', timestamp', streamTime', runningTime', allHeaders'', count')
-
-
--- function gst_video_event_new_upstream_force_key_unit
--- Args : [Arg {argCName = "running_time", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the running_time at which a new key unit should be produced", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "all_headers", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%TRUE to produce headers when starting a new key unit", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "integer that can be used to number key units", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Event"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_new_upstream_force_key_unit" gst_video_event_new_upstream_force_key_unit :: 
-    Word64 ->                               -- running_time : TBasicType TUInt64
-    CInt ->                                 -- all_headers : TBasicType TBoolean
-    Word32 ->                               -- count : TBasicType TUInt
-    IO (Ptr Gst.Event.Event)
-
-{- |
-Creates a new upstream force key unit event. An upstream force key unit event
-can be sent to request upstream elements to produce a key unit.
-
-/@runningTime@/ can be set to request a new key unit at a specific
-running_time. If set to GST_CLOCK_TIME_NONE, upstream elements will produce a
-new key unit as soon as possible.
-
-To parse an event created by 'GI.GstVideo.Functions.videoEventNewDownstreamForceKeyUnit' use
-'GI.GstVideo.Functions.videoEventParseDownstreamForceKeyUnit'.
--}
-videoEventNewUpstreamForceKeyUnit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word64
-    {- ^ /@runningTime@/: the running_time at which a new key unit should be produced -}
-    -> Bool
-    {- ^ /@allHeaders@/: 'True' to produce headers when starting a new key unit -}
-    -> Word32
-    {- ^ /@count@/: integer that can be used to number key units -}
-    -> m Gst.Event.Event
-    {- ^ __Returns:__ The new GstEvent -}
-videoEventNewUpstreamForceKeyUnit runningTime allHeaders count = liftIO $ do
-    let allHeaders' = (fromIntegral . fromEnum) allHeaders
-    result <- gst_video_event_new_upstream_force_key_unit runningTime allHeaders' count
-    checkUnexpectedReturnNULL "videoEventNewUpstreamForceKeyUnit" result
-    result' <- (wrapBoxed Gst.Event.Event) result
-    return result'
-
-
--- function gst_video_event_new_still_frame
--- Args : [Arg {argCName = "in_still", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "boolean value for the still-frame state of the event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Event"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_new_still_frame" gst_video_event_new_still_frame :: 
-    CInt ->                                 -- in_still : TBasicType TBoolean
-    IO (Ptr Gst.Event.Event)
-
-{- |
-Creates a new Still Frame event. If /@inStill@/ is 'True', then the event
-represents the start of a still frame sequence. If it is 'False', then
-the event ends a still frame sequence.
-
-To parse an event created by 'GI.GstVideo.Functions.videoEventNewStillFrame' use
-'GI.GstVideo.Functions.videoEventParseStillFrame'.
--}
-videoEventNewStillFrame ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Bool
-    {- ^ /@inStill@/: boolean value for the still-frame state of the event. -}
-    -> m Gst.Event.Event
-    {- ^ __Returns:__ The new GstEvent -}
-videoEventNewStillFrame inStill = liftIO $ do
-    let inStill' = (fromIntegral . fromEnum) inStill
-    result <- gst_video_event_new_still_frame inStill'
-    checkUnexpectedReturnNULL "videoEventNewStillFrame" result
-    result' <- (wrapBoxed Gst.Event.Event) result
-    return result'
-
-
--- function gst_video_event_new_downstream_force_key_unit
--- Args : [Arg {argCName = "timestamp", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the timestamp of the buffer that starts a new key unit", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stream_time", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the stream_time of the buffer that starts a new key unit", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "running_time", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the running_time of the buffer that starts a new key unit", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "all_headers", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%TRUE to produce headers when starting a new key unit", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "integer that can be used to number key units", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Event"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_new_downstream_force_key_unit" gst_video_event_new_downstream_force_key_unit :: 
-    Word64 ->                               -- timestamp : TBasicType TUInt64
-    Word64 ->                               -- stream_time : TBasicType TUInt64
-    Word64 ->                               -- running_time : TBasicType TUInt64
-    CInt ->                                 -- all_headers : TBasicType TBoolean
-    Word32 ->                               -- count : TBasicType TUInt
-    IO (Ptr Gst.Event.Event)
-
-{- |
-Creates a new downstream force key unit event. A downstream force key unit
-event can be sent down the pipeline to request downstream elements to produce
-a key unit. A downstream force key unit event must also be sent when handling
-an upstream force key unit event to notify downstream that the latter has been
-handled.
-
-To parse an event created by 'GI.GstVideo.Functions.videoEventNewDownstreamForceKeyUnit' use
-'GI.GstVideo.Functions.videoEventParseDownstreamForceKeyUnit'.
--}
-videoEventNewDownstreamForceKeyUnit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word64
-    {- ^ /@timestamp@/: the timestamp of the buffer that starts a new key unit -}
-    -> Word64
-    {- ^ /@streamTime@/: the stream_time of the buffer that starts a new key unit -}
-    -> Word64
-    {- ^ /@runningTime@/: the running_time of the buffer that starts a new key unit -}
-    -> Bool
-    {- ^ /@allHeaders@/: 'True' to produce headers when starting a new key unit -}
-    -> Word32
-    {- ^ /@count@/: integer that can be used to number key units -}
-    -> m Gst.Event.Event
-    {- ^ __Returns:__ The new GstEvent -}
-videoEventNewDownstreamForceKeyUnit timestamp streamTime runningTime allHeaders count = liftIO $ do
-    let allHeaders' = (fromIntegral . fromEnum) allHeaders
-    result <- gst_video_event_new_downstream_force_key_unit timestamp streamTime runningTime allHeaders' count
-    checkUnexpectedReturnNULL "videoEventNewDownstreamForceKeyUnit" result
-    result' <- (wrapBoxed Gst.Event.Event) result
-    return result'
-
-
--- function gst_video_event_is_force_key_unit
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to check", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_event_is_force_key_unit" gst_video_event_is_force_key_unit :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    IO CInt
-
-{- |
-Checks if an event is a force key unit event. Returns true for both upstream
-and downstream force key unit events.
--}
-videoEventIsForceKeyUnit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to check -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if the event is a valid force key unit event -}
-videoEventIsForceKeyUnit event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    result <- gst_video_event_is_force_key_unit event'
-    let result' = (/= 0) result
-    touchManagedPtr event
-    return result'
-
-
--- function gst_video_crop_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_crop_meta_api_get_type" gst_video_crop_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoCropMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoCropMetaApiGetType  = liftIO $ do
-    result <- gst_video_crop_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_convert_sample_async
--- Args : [Arg {argCName = "sample", argType = TInterface (Name {namespace = "Gst", name = "Sample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstSample", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "to_caps", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstCaps to convert to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "timeout", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the maximum amount of time allowed for the processing.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "callback", argType = TInterface (Name {namespace = "GstVideo", name = "VideoConvertSampleCallback"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%GstVideoConvertSampleCallback that will be called after conversion.", sinceVersion = Nothing}, argScope = ScopeTypeNotified, argClosure = 4, argDestroy = 5, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "extra data that will be passed to the @callback", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "destroy_notify", argType = TInterface (Name {namespace = "GLib", name = "DestroyNotify"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%GDestroyNotify to be called after @user_data is not needed anymore", sinceVersion = Nothing}, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_convert_sample_async" gst_video_convert_sample_async :: 
-    Ptr Gst.Sample.Sample ->                -- sample : TInterface (Name {namespace = "Gst", name = "Sample"})
-    Ptr Gst.Caps.Caps ->                    -- to_caps : TInterface (Name {namespace = "Gst", name = "Caps"})
-    Word64 ->                               -- timeout : TBasicType TUInt64
-    FunPtr GstVideo.Callbacks.C_VideoConvertSampleCallback -> -- callback : TInterface (Name {namespace = "GstVideo", name = "VideoConvertSampleCallback"})
-    Ptr () ->                               -- user_data : TBasicType TPtr
-    FunPtr GLib.Callbacks.C_DestroyNotify -> -- destroy_notify : TInterface (Name {namespace = "GLib", name = "DestroyNotify"})
-    IO ()
-
-{- |
-Converts a raw video buffer into the specified output caps.
-
-The output caps can be any raw video formats or any image formats (jpeg, png, ...).
-
-The width, height and pixel-aspect-ratio can also be specified in the output caps.
-
-/@callback@/ will be called after conversion, when an error occured or if conversion didn\'t
-finish after /@timeout@/. /@callback@/ will always be called from the thread default
-@/GMainContext/@, see 'GI.GLib.Functions.mainContextGetThreadDefault'. If GLib before 2.22 is used,
-this will always be the global default main context.
-
-/@destroyNotify@/ will be called after the callback was called and /@userData@/ is not needed
-anymore.
--}
-videoConvertSampleAsync ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Sample.Sample
-    {- ^ /@sample@/: a 'GI.Gst.Structs.Sample.Sample' -}
-    -> Gst.Caps.Caps
-    {- ^ /@toCaps@/: the 'GI.Gst.Structs.Caps.Caps' to convert to -}
-    -> Word64
-    {- ^ /@timeout@/: the maximum amount of time allowed for the processing. -}
-    -> GstVideo.Callbacks.VideoConvertSampleCallback
-    {- ^ /@callback@/: @/GstVideoConvertSampleCallback/@ that will be called after conversion. -}
-    -> m ()
-videoConvertSampleAsync sample toCaps timeout callback = liftIO $ do
-    sample' <- unsafeManagedPtrGetPtr sample
-    toCaps' <- unsafeManagedPtrGetPtr toCaps
-    callback' <- GstVideo.Callbacks.mk_VideoConvertSampleCallback (GstVideo.Callbacks.wrap_VideoConvertSampleCallback Nothing (GstVideo.Callbacks.drop_closures_VideoConvertSampleCallback callback))
-    let userData = castFunPtrToPtr callback'
-    let destroyNotify = safeFreeFunPtrPtr
-    gst_video_convert_sample_async sample' toCaps' timeout callback' userData destroyNotify
-    touchManagedPtr sample
-    touchManagedPtr toCaps
-    return ()
-
-
--- function gst_video_convert_sample
--- Args : [Arg {argCName = "sample", argType = TInterface (Name {namespace = "Gst", name = "Sample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstSample", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "to_caps", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstCaps to convert to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "timeout", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the maximum amount of time allowed for the processing.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Sample"}))
--- throws : True
--- Skip return : False
-
-foreign import ccall "gst_video_convert_sample" gst_video_convert_sample :: 
-    Ptr Gst.Sample.Sample ->                -- sample : TInterface (Name {namespace = "Gst", name = "Sample"})
-    Ptr Gst.Caps.Caps ->                    -- to_caps : TInterface (Name {namespace = "Gst", name = "Caps"})
-    Word64 ->                               -- timeout : TBasicType TUInt64
-    Ptr (Ptr GError) ->                     -- error
-    IO (Ptr Gst.Sample.Sample)
-
-{- |
-Converts a raw video buffer into the specified output caps.
-
-The output caps can be any raw video formats or any image formats (jpeg, png, ...).
-
-The width, height and pixel-aspect-ratio can also be specified in the output caps.
--}
-videoConvertSample ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Sample.Sample
-    {- ^ /@sample@/: a 'GI.Gst.Structs.Sample.Sample' -}
-    -> Gst.Caps.Caps
-    {- ^ /@toCaps@/: the 'GI.Gst.Structs.Caps.Caps' to convert to -}
-    -> Word64
-    {- ^ /@timeout@/: the maximum amount of time allowed for the processing. -}
-    -> m Gst.Sample.Sample
-    {- ^ __Returns:__ The converted 'GI.Gst.Structs.Sample.Sample', or 'Nothing' if an error happened (in which case /@err@/
-will point to the 'GError'). /(Can throw 'Data.GI.Base.GError.GError')/ -}
-videoConvertSample sample toCaps timeout = liftIO $ do
-    sample' <- unsafeManagedPtrGetPtr sample
-    toCaps' <- unsafeManagedPtrGetPtr toCaps
-    onException (do
-        result <- propagateGError $ gst_video_convert_sample sample' toCaps' timeout
-        checkUnexpectedReturnNULL "videoConvertSample" result
-        result' <- (wrapBoxed Gst.Sample.Sample) result
-        touchManagedPtr sample
-        touchManagedPtr toCaps
-        return result'
-     ) (do
-        return ()
-     )
-
-
--- function gst_video_color_transfer_encode
--- Args : [Arg {argCName = "func", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTransferFunction"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTransferFunction", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "val", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a value", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TDouble)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_color_transfer_encode" gst_video_color_transfer_encode :: 
-    CUInt ->                                -- func : TInterface (Name {namespace = "GstVideo", name = "VideoTransferFunction"})
-    CDouble ->                              -- val : TBasicType TDouble
-    IO CDouble
-
-{- |
-Convert /@val@/ to its gamma encoded value.
-
-For a linear value L in the range [0..1], conversion to the non-linear
-(gamma encoded) L\' is in general performed with a power function like:
-
->
->   L' = L ^ (1 / gamma)
-
-
-Depending on /@func@/, different formulas might be applied. Some formulas
-encode a linear segment in the lower range.
-
-/Since: 1.6/
--}
-videoColorTransferEncode ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.Enums.VideoTransferFunction
-    {- ^ /@func@/: a 'GI.GstVideo.Enums.VideoTransferFunction' -}
-    -> Double
-    {- ^ /@val@/: a value -}
-    -> m Double
-    {- ^ __Returns:__ the gamme encoded value of /@val@/ -}
-videoColorTransferEncode func val = liftIO $ do
-    let func' = (fromIntegral . fromEnum) func
-    let val' = realToFrac val
-    result <- gst_video_color_transfer_encode func' val'
-    let result' = realToFrac result
-    return result'
-
-
--- function gst_video_color_transfer_decode
--- Args : [Arg {argCName = "func", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTransferFunction"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTransferFunction", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "val", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a value", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TDouble)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_color_transfer_decode" gst_video_color_transfer_decode :: 
-    CUInt ->                                -- func : TInterface (Name {namespace = "GstVideo", name = "VideoTransferFunction"})
-    CDouble ->                              -- val : TBasicType TDouble
-    IO CDouble
-
-{- |
-Convert /@val@/ to its gamma decoded value. This is the inverse operation of
-/@gstVideoColorTransferEncode@/().
-
-For a non-linear value L\' in the range [0..1], conversion to the linear
-L is in general performed with a power function like:
-
->
->   L = L' ^ gamma
-
-
-Depending on /@func@/, different formulas might be applied. Some formulas
-encode a linear segment in the lower range.
-
-/Since: 1.6/
--}
-videoColorTransferDecode ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.Enums.VideoTransferFunction
-    {- ^ /@func@/: a 'GI.GstVideo.Enums.VideoTransferFunction' -}
-    -> Double
-    {- ^ /@val@/: a value -}
-    -> m Double
-    {- ^ __Returns:__ the gamme decoded value of /@val@/ -}
-videoColorTransferDecode func val = liftIO $ do
-    let func' = (fromIntegral . fromEnum) func
-    let val' = realToFrac val
-    result <- gst_video_color_transfer_decode func' val'
-    let result' = realToFrac result
-    return result'
-
-
--- function gst_video_chroma_to_string
--- Args : [Arg {argCName = "site", argType = TInterface (Name {namespace = "GstVideo", name = "VideoChromaSite"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoChromaSite", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUTF8)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_chroma_to_string" gst_video_chroma_to_string :: 
-    CUInt ->                                -- site : TInterface (Name {namespace = "GstVideo", name = "VideoChromaSite"})
-    IO CString
-
-{- |
-Converts /@site@/ to its string representation.
--}
-videoChromaToString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    [GstVideo.Flags.VideoChromaSite]
-    {- ^ /@site@/: a 'GI.GstVideo.Flags.VideoChromaSite' -}
-    -> m T.Text
-    {- ^ __Returns:__ a string describing /@site@/. -}
-videoChromaToString site = liftIO $ do
-    let site' = gflagsToWord site
-    result <- gst_video_chroma_to_string site'
-    checkUnexpectedReturnNULL "videoChromaToString" result
-    result' <- cstringToText result
-    return result'
-
-
--- function gst_video_chroma_resample
--- Args : [Arg {argCName = "resample", argType = TInterface (Name {namespace = "GstVideo", name = "VideoChromaResample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoChromaResample", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "lines", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "pixel lines", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of pixels on one line", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_chroma_resample" gst_video_chroma_resample :: 
-    Ptr GstVideo.VideoChromaResample.VideoChromaResample -> -- resample : TInterface (Name {namespace = "GstVideo", name = "VideoChromaResample"})
-    Ptr () ->                               -- lines : TBasicType TPtr
-    Int32 ->                                -- width : TBasicType TInt
-    IO ()
-
-{- |
-Perform resampling of /@width@/ chroma pixels in /@lines@/.
--}
-videoChromaResample ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.VideoChromaResample.VideoChromaResample
-    {- ^ /@resample@/: a 'GI.GstVideo.Structs.VideoChromaResample.VideoChromaResample' -}
-    -> Ptr ()
-    {- ^ /@lines@/: pixel lines -}
-    -> Int32
-    {- ^ /@width@/: the number of pixels on one line -}
-    -> m ()
-videoChromaResample resample lines width = liftIO $ do
-    resample' <- unsafeManagedPtrGetPtr resample
-    gst_video_chroma_resample resample' lines width
-    touchManagedPtr resample
-    return ()
-
-
--- function gst_video_chroma_from_string
--- Args : [Arg {argCName = "s", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a chromasite string", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoChromaSite"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_chroma_from_string" gst_video_chroma_from_string :: 
-    CString ->                              -- s : TBasicType TUTF8
-    IO CUInt
-
-{- |
-Convert /@s@/ to a 'GI.GstVideo.Flags.VideoChromaSite'
--}
-videoChromaFromString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    T.Text
-    {- ^ /@s@/: a chromasite string -}
-    -> m [GstVideo.Flags.VideoChromaSite]
-    {- ^ __Returns:__ a 'GI.GstVideo.Flags.VideoChromaSite' or 'GI.GstVideo.Flags.VideoChromaSiteUnknown' when /@s@/ does
-not contain a valid chroma description. -}
-videoChromaFromString s = liftIO $ do
-    s' <- textToCString s
-    result <- gst_video_chroma_from_string s'
-    let result' = wordToGFlags result
-    freeMem s'
-    return result'
-
-
--- function gst_video_caption_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_caption_meta_api_get_type" gst_video_caption_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoCaptionMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoCaptionMetaApiGetType  = liftIO $ do
-    result <- gst_video_caption_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_video_calculate_display_ratio
--- Args : [Arg {argCName = "dar_n", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the calculated display_ratio", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "dar_d", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the calculated display_ratio", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "video_width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Width of the video frame in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "video_height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Height of the video frame in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "video_par_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the pixel aspect ratio of the input video.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "video_par_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the pixel aspect ratio of the input video.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "display_par_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the pixel aspect ratio of the display device", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "display_par_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the pixel aspect ratio of the display device", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_calculate_display_ratio" gst_video_calculate_display_ratio :: 
-    Ptr Word32 ->                           -- dar_n : TBasicType TUInt
-    Ptr Word32 ->                           -- dar_d : TBasicType TUInt
-    Word32 ->                               -- video_width : TBasicType TUInt
-    Word32 ->                               -- video_height : TBasicType TUInt
-    Word32 ->                               -- video_par_n : TBasicType TUInt
-    Word32 ->                               -- video_par_d : TBasicType TUInt
-    Word32 ->                               -- display_par_n : TBasicType TUInt
-    Word32 ->                               -- display_par_d : TBasicType TUInt
-    IO CInt
-
-{- |
-Given the Pixel Aspect Ratio and size of an input video frame, and the
-pixel aspect ratio of the intended display device, calculates the actual
-display ratio the video will be rendered with.
--}
-videoCalculateDisplayRatio ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word32
-    {- ^ /@videoWidth@/: Width of the video frame in pixels -}
-    -> Word32
-    {- ^ /@videoHeight@/: Height of the video frame in pixels -}
-    -> Word32
-    {- ^ /@videoParN@/: Numerator of the pixel aspect ratio of the input video. -}
-    -> Word32
-    {- ^ /@videoParD@/: Denominator of the pixel aspect ratio of the input video. -}
-    -> Word32
-    {- ^ /@displayParN@/: Numerator of the pixel aspect ratio of the display device -}
-    -> Word32
-    {- ^ /@displayParD@/: Denominator of the pixel aspect ratio of the display device -}
-    -> m ((Bool, Word32, Word32))
-    {- ^ __Returns:__ A boolean indicating success and a calculated Display Ratio in the
-dar_n and dar_d parameters.
-The return value is FALSE in the case of integer overflow or other error. -}
-videoCalculateDisplayRatio videoWidth videoHeight videoParN videoParD displayParN displayParD = liftIO $ do
-    darN <- allocMem :: IO (Ptr Word32)
-    darD <- allocMem :: IO (Ptr Word32)
-    result <- gst_video_calculate_display_ratio darN darD videoWidth videoHeight videoParN videoParD displayParN displayParD
-    let result' = (/= 0) result
-    darN' <- peek darN
-    darD' <- peek darD
-    freeMem darN
-    freeMem darD
-    return (result', darN', darD')
-
-
--- function gst_video_blend_scale_linear_RGBA
--- Args : [Arg {argCName = "src", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoInfo describing the video data in @src_buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src_buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the source buffer containing video pixels to scale", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_height", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the height in pixels to scale the video data in @src_buffer to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the width in pixels to scale the video data in @src_buffer to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "pointer to a #GstVideoInfo structure that will be filled in\n    with the details for @dest_buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "dest_buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a pointer to a #GstBuffer variable, which will be\n    set to a newly-allocated buffer containing the scaled pixels.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_blend_scale_linear_RGBA" gst_video_blend_scale_linear_RGBA :: 
-    Ptr GstVideo.VideoInfo.VideoInfo ->     -- src : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr Gst.Buffer.Buffer ->                -- src_buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Int32 ->                                -- dest_height : TBasicType TInt
-    Int32 ->                                -- dest_width : TBasicType TInt
-    Ptr GstVideo.VideoInfo.VideoInfo ->     -- dest : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr (Ptr Gst.Buffer.Buffer) ->          -- dest_buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    IO ()
-
-{- |
-Scales a buffer containing RGBA (or AYUV) video. This is an internal
-helper function which is used to scale subtitle overlays, and may be
-deprecated in the near future. Use 'GI.GstVideo.Structs.VideoScaler.VideoScaler' to scale video buffers
-instead.
--}
-videoBlendScaleLinearRGBA ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.VideoInfo.VideoInfo
-    {- ^ /@src@/: the 'GI.GstVideo.Structs.VideoInfo.VideoInfo' describing the video data in /@srcBuffer@/ -}
-    -> Gst.Buffer.Buffer
-    {- ^ /@srcBuffer@/: the source buffer containing video pixels to scale -}
-    -> Int32
-    {- ^ /@destHeight@/: the height in pixels to scale the video data in /@srcBuffer@/ to -}
-    -> Int32
-    {- ^ /@destWidth@/: the width in pixels to scale the video data in /@srcBuffer@/ to -}
-    -> m ((GstVideo.VideoInfo.VideoInfo, Gst.Buffer.Buffer))
-videoBlendScaleLinearRGBA src srcBuffer destHeight destWidth = liftIO $ do
-    src' <- unsafeManagedPtrGetPtr src
-    srcBuffer' <- unsafeManagedPtrGetPtr srcBuffer
-    dest <- callocBoxedBytes 120 :: IO (Ptr GstVideo.VideoInfo.VideoInfo)
-    destBuffer <- allocMem :: IO (Ptr (Ptr Gst.Buffer.Buffer))
-    gst_video_blend_scale_linear_RGBA src' srcBuffer' destHeight destWidth dest destBuffer
-    dest' <- (wrapBoxed GstVideo.VideoInfo.VideoInfo) dest
-    destBuffer' <- peek destBuffer
-    destBuffer'' <- (wrapBoxed Gst.Buffer.Buffer) destBuffer'
-    touchManagedPtr src
-    touchManagedPtr srcBuffer
-    freeMem destBuffer
-    return (dest', destBuffer'')
-
-
--- function gst_video_blend
--- Args : [Arg {argCName = "dest", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The #GstVideoFrame where to blend @src in", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoFrame that we want to blend into", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The x offset in pixel where the @src image should be blended", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the y offset in pixel where the @src image should be blended", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "global_alpha", argType = TBasicType TFloat, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the global_alpha each per-pixel alpha value is multiplied\n               with", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_blend" gst_video_blend :: 
-    Ptr GstVideo.VideoFrame.VideoFrame ->   -- dest : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Ptr GstVideo.VideoFrame.VideoFrame ->   -- src : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Int32 ->                                -- x : TBasicType TInt
-    Int32 ->                                -- y : TBasicType TInt
-    CFloat ->                               -- global_alpha : TBasicType TFloat
-    IO CInt
-
-{- |
-Lets you blend the /@src@/ image into the /@dest@/ image
--}
-videoBlend ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.VideoFrame.VideoFrame
-    {- ^ /@dest@/: The 'GI.GstVideo.Structs.VideoFrame.VideoFrame' where to blend /@src@/ in -}
-    -> GstVideo.VideoFrame.VideoFrame
-    {- ^ /@src@/: the 'GI.GstVideo.Structs.VideoFrame.VideoFrame' that we want to blend into -}
-    -> Int32
-    {- ^ /@x@/: The x offset in pixel where the /@src@/ image should be blended -}
-    -> Int32
-    {- ^ /@y@/: the y offset in pixel where the /@src@/ image should be blended -}
-    -> Float
-    {- ^ /@globalAlpha@/: the global_alpha each per-pixel alpha value is multiplied
-               with -}
-    -> m Bool
-videoBlend dest src x y globalAlpha = liftIO $ do
-    dest' <- unsafeManagedPtrGetPtr dest
-    src' <- unsafeManagedPtrGetPtr src
-    let globalAlpha' = realToFrac globalAlpha
-    result <- gst_video_blend dest' src' x y globalAlpha'
-    let result' = (/= 0) result
-    touchManagedPtr dest
-    touchManagedPtr src
-    return result'
-
-
--- function gst_video_affine_transformation_meta_api_get_type
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TGType)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_affine_transformation_meta_api_get_type" gst_video_affine_transformation_meta_api_get_type :: 
-    IO CGType
-
-{- |
-/No description available in the introspection data./
--}
-videoAffineTransformationMetaApiGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m GType
-videoAffineTransformationMetaApiGetType  = liftIO $ do
-    result <- gst_video_affine_transformation_meta_api_get_type
-    let result' = GType result
-    return result'
-
-
--- function gst_is_video_overlay_prepare_window_handle_message
--- Args : [Arg {argCName = "msg", argType = TInterface (Name {namespace = "Gst", name = "Message"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstMessage", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_is_video_overlay_prepare_window_handle_message" gst_is_video_overlay_prepare_window_handle_message :: 
-    Ptr Gst.Message.Message ->              -- msg : TInterface (Name {namespace = "Gst", name = "Message"})
-    IO CInt
-
-{- |
-Convenience function to check if the given message is a
-\"prepare-window-handle\" message from a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay'.
--}
-isVideoOverlayPrepareWindowHandleMessage ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Message.Message
-    {- ^ /@msg@/: a 'GI.Gst.Structs.Message.Message' -}
-    -> m Bool
-    {- ^ __Returns:__ whether /@msg@/ is a \"prepare-window-handle\" message -}
-isVideoOverlayPrepareWindowHandleMessage msg = liftIO $ do
-    msg' <- unsafeManagedPtrGetPtr msg
-    result <- gst_is_video_overlay_prepare_window_handle_message msg'
-    let result' = (/= 0) result
-    touchManagedPtr msg
-    return result'
-
-
--- function gst_buffer_pool_config_set_video_alignment
--- Args : [Arg {argCName = "config", argType = TInterface (Name {namespace = "Gst", name = "Structure"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstStructure", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "align", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAlignment", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_pool_config_set_video_alignment" gst_buffer_pool_config_set_video_alignment :: 
-    Ptr Gst.Structure.Structure ->          -- config : TInterface (Name {namespace = "Gst", name = "Structure"})
-    Ptr GstVideo.VideoAlignment.VideoAlignment -> -- align : TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"})
-    IO ()
-
-{- |
-Set the video alignment in /@align@/ to the bufferpool configuration
-/@config@/
--}
-bufferPoolConfigSetVideoAlignment ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Structure.Structure
-    {- ^ /@config@/: a 'GI.Gst.Structs.Structure.Structure' -}
-    -> GstVideo.VideoAlignment.VideoAlignment
-    {- ^ /@align@/: a 'GI.GstVideo.Structs.VideoAlignment.VideoAlignment' -}
-    -> m ()
-bufferPoolConfigSetVideoAlignment config align = liftIO $ do
-    config' <- unsafeManagedPtrGetPtr config
-    align' <- unsafeManagedPtrGetPtr align
-    gst_buffer_pool_config_set_video_alignment config' align'
-    touchManagedPtr config
-    touchManagedPtr align
-    return ()
-
-
--- function gst_buffer_pool_config_get_video_alignment
--- Args : [Arg {argCName = "config", argType = TInterface (Name {namespace = "Gst", name = "Structure"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstStructure", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "align", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAlignment", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_pool_config_get_video_alignment" gst_buffer_pool_config_get_video_alignment :: 
-    Ptr Gst.Structure.Structure ->          -- config : TInterface (Name {namespace = "Gst", name = "Structure"})
-    Ptr GstVideo.VideoAlignment.VideoAlignment -> -- align : TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"})
-    IO CInt
-
-{- |
-Get the video alignment from the bufferpool configuration /@config@/ in
-in /@align@/
--}
-bufferPoolConfigGetVideoAlignment ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Structure.Structure
-    {- ^ /@config@/: a 'GI.Gst.Structs.Structure.Structure' -}
-    -> GstVideo.VideoAlignment.VideoAlignment
-    {- ^ /@align@/: a 'GI.GstVideo.Structs.VideoAlignment.VideoAlignment' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if /@config@/ could be parsed correctly. -}
-bufferPoolConfigGetVideoAlignment config align = liftIO $ do
-    config' <- unsafeManagedPtrGetPtr config
-    align' <- unsafeManagedPtrGetPtr align
-    result <- gst_buffer_pool_config_get_video_alignment config' align'
-    let result' = (/= 0) result
-    touchManagedPtr config
-    touchManagedPtr align
-    return result'
-
-
--- function gst_buffer_get_video_region_of_interest_meta_id
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "id", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a metadata id", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_get_video_region_of_interest_meta_id" gst_buffer_get_video_region_of_interest_meta_id :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Int32 ->                                -- id : TBasicType TInt
-    IO (Ptr GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta)
-
-{- |
-Find the 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' on /@buffer@/ with the given /@id@/.
-
-Buffers can contain multiple 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' metadata items if
-multiple regions of interests are marked on a frame.
--}
-bufferGetVideoRegionOfInterestMetaId ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> Int32
-    {- ^ /@id@/: a metadata id -}
-    -> m GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' with /@id@/ or 'Nothing' when there is
-no such metadata on /@buffer@/. -}
-bufferGetVideoRegionOfInterestMetaId buffer id = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    result <- gst_buffer_get_video_region_of_interest_meta_id buffer' id
-    checkUnexpectedReturnNULL "bufferGetVideoRegionOfInterestMetaId" result
-    result' <- (newPtr GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta) result
-    touchManagedPtr buffer
-    return result'
-
-
--- function gst_buffer_get_video_meta_id
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "id", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a metadata id", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_get_video_meta_id" gst_buffer_get_video_meta_id :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Int32 ->                                -- id : TBasicType TInt
-    IO (Ptr GstVideo.VideoMeta.VideoMeta)
-
-{- |
-Find the 'GI.GstVideo.Structs.VideoMeta.VideoMeta' on /@buffer@/ with the given /@id@/.
-
-Buffers can contain multiple 'GI.GstVideo.Structs.VideoMeta.VideoMeta' metadata items when dealing with
-multiview buffers.
--}
-bufferGetVideoMetaId ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> Int32
-    {- ^ /@id@/: a metadata id -}
-    -> m GstVideo.VideoMeta.VideoMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoMeta.VideoMeta' with /@id@/ or 'Nothing' when there is no such metadata
-on /@buffer@/. -}
-bufferGetVideoMetaId buffer id = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    result <- gst_buffer_get_video_meta_id buffer' id
-    checkUnexpectedReturnNULL "bufferGetVideoMetaId" result
-    result' <- (newPtr GstVideo.VideoMeta.VideoMeta) result
-    touchManagedPtr buffer
-    return result'
-
-
--- function gst_buffer_get_video_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_get_video_meta" gst_buffer_get_video_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    IO (Ptr GstVideo.VideoMeta.VideoMeta)
-
-{- |
-Find the 'GI.GstVideo.Structs.VideoMeta.VideoMeta' on /@buffer@/ with the lowest /@id@/.
-
-Buffers can contain multiple 'GI.GstVideo.Structs.VideoMeta.VideoMeta' metadata items when dealing with
-multiview buffers.
--}
-bufferGetVideoMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> m GstVideo.VideoMeta.VideoMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoMeta.VideoMeta' with lowest id (usually 0) or 'Nothing' when there
-is no such metadata on /@buffer@/. -}
-bufferGetVideoMeta buffer = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    result <- gst_buffer_get_video_meta buffer'
-    checkUnexpectedReturnNULL "bufferGetVideoMeta" result
-    result' <- (newPtr GstVideo.VideoMeta.VideoMeta) result
-    touchManagedPtr buffer
-    return result'
-
-
--- function gst_buffer_add_video_time_code_meta_full
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "framerate numerator", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "framerate denominator", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "latest_daily_jam", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GDateTime for the latest daily jam", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "hours", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "hours since the daily jam", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "minutes", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "minutes since the daily jam", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "seconds", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "seconds since the daily jam", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frames", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "frames since the daily jam", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "fields since the daily jam", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_time_code_meta_full" gst_buffer_add_video_time_code_meta_full :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- latest_daily_jam : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- hours : TBasicType TUInt
-    Word32 ->                               -- minutes : TBasicType TUInt
-    Word32 ->                               -- seconds : TBasicType TUInt
-    Word32 ->                               -- frames : TBasicType TUInt
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO (Ptr GstVideo.VideoTimeCodeMeta.VideoTimeCodeMeta)
-
-{- |
-Attaches 'GI.GstVideo.Structs.VideoTimeCodeMeta.VideoTimeCodeMeta' metadata to /@buffer@/ with the given
-parameters.
-
-/Since: 1.10/
--}
-bufferAddVideoTimeCodeMetaFull ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> Word32
-    {- ^ /@fpsN@/: framerate numerator -}
-    -> Word32
-    {- ^ /@fpsD@/: framerate denominator -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@latestDailyJam@/: a 'GI.GLib.Structs.DateTime.DateTime' for the latest daily jam -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: a 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@hours@/: hours since the daily jam -}
-    -> Word32
-    {- ^ /@minutes@/: minutes since the daily jam -}
-    -> Word32
-    {- ^ /@seconds@/: seconds since the daily jam -}
-    -> Word32
-    {- ^ /@frames@/: frames since the daily jam -}
-    -> Word32
-    {- ^ /@fieldCount@/: fields since the daily jam -}
-    -> m GstVideo.VideoTimeCodeMeta.VideoTimeCodeMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoTimeCodeMeta.VideoTimeCodeMeta' on /@buffer@/, or
-(since 1.16) 'Nothing' if the timecode was invalid. -}
-bufferAddVideoTimeCodeMetaFull buffer fpsN fpsD latestDailyJam flags hours minutes seconds frames fieldCount = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    latestDailyJam' <- unsafeManagedPtrGetPtr latestDailyJam
-    let flags' = gflagsToWord flags
-    result <- gst_buffer_add_video_time_code_meta_full buffer' fpsN fpsD latestDailyJam' flags' hours minutes seconds frames fieldCount
-    checkUnexpectedReturnNULL "bufferAddVideoTimeCodeMetaFull" result
-    result' <- (newPtr GstVideo.VideoTimeCodeMeta.VideoTimeCodeMeta) result
-    touchManagedPtr buffer
-    touchManagedPtr latestDailyJam
-    return result'
-
-
--- function gst_buffer_add_video_time_code_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_time_code_meta" gst_buffer_add_video_time_code_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Ptr GstVideo.VideoTimeCode.VideoTimeCode -> -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO (Ptr GstVideo.VideoTimeCodeMeta.VideoTimeCodeMeta)
-
-{- |
-Attaches 'GI.GstVideo.Structs.VideoTimeCodeMeta.VideoTimeCodeMeta' metadata to /@buffer@/ with the given
-parameters.
-
-/Since: 1.10/
--}
-bufferAddVideoTimeCodeMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> GstVideo.VideoTimeCode.VideoTimeCode
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m (Maybe GstVideo.VideoTimeCodeMeta.VideoTimeCodeMeta)
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoTimeCodeMeta.VideoTimeCodeMeta' on /@buffer@/, or
-(since 1.16) 'Nothing' if the timecode was invalid. -}
-bufferAddVideoTimeCodeMeta buffer tc = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_buffer_add_video_time_code_meta buffer' tc'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (newPtr GstVideo.VideoTimeCodeMeta.VideoTimeCodeMeta) result'
-        return result''
-    touchManagedPtr buffer
-    touchManagedPtr tc
-    return maybeResult
-
-
--- function gst_buffer_add_video_region_of_interest_meta_id
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "roi_type", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Type of the region of interest (e.g. \"face\")", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "X position", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Y position", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "w", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "h", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_region_of_interest_meta_id" gst_buffer_add_video_region_of_interest_meta_id :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Word32 ->                               -- roi_type : TBasicType TUInt32
-    Word32 ->                               -- x : TBasicType TUInt
-    Word32 ->                               -- y : TBasicType TUInt
-    Word32 ->                               -- w : TBasicType TUInt
-    Word32 ->                               -- h : TBasicType TUInt
-    IO (Ptr GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta)
-
-{- |
-Attaches 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' metadata to /@buffer@/ with the given
-parameters.
--}
-bufferAddVideoRegionOfInterestMetaId ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> Word32
-    {- ^ /@roiType@/: Type of the region of interest (e.g. \"face\") -}
-    -> Word32
-    {- ^ /@x@/: X position -}
-    -> Word32
-    {- ^ /@y@/: Y position -}
-    -> Word32
-    {- ^ /@w@/: width -}
-    -> Word32
-    {- ^ /@h@/: height -}
-    -> m GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' on /@buffer@/. -}
-bufferAddVideoRegionOfInterestMetaId buffer roiType x y w h = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    result <- gst_buffer_add_video_region_of_interest_meta_id buffer' roiType x y w h
-    checkUnexpectedReturnNULL "bufferAddVideoRegionOfInterestMetaId" result
-    result' <- (newPtr GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta) result
-    touchManagedPtr buffer
-    return result'
-
-
--- function gst_buffer_add_video_region_of_interest_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "roi_type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Type of the region of interest (e.g. \"face\")", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "X position", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Y position", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "w", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "h", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_region_of_interest_meta" gst_buffer_add_video_region_of_interest_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    CString ->                              -- roi_type : TBasicType TUTF8
-    Word32 ->                               -- x : TBasicType TUInt
-    Word32 ->                               -- y : TBasicType TUInt
-    Word32 ->                               -- w : TBasicType TUInt
-    Word32 ->                               -- h : TBasicType TUInt
-    IO (Ptr GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta)
-
-{- |
-Attaches 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' metadata to /@buffer@/ with the given
-parameters.
--}
-bufferAddVideoRegionOfInterestMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> T.Text
-    {- ^ /@roiType@/: Type of the region of interest (e.g. \"face\") -}
-    -> Word32
-    {- ^ /@x@/: X position -}
-    -> Word32
-    {- ^ /@y@/: Y position -}
-    -> Word32
-    {- ^ /@w@/: width -}
-    -> Word32
-    {- ^ /@h@/: height -}
-    -> m GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' on /@buffer@/. -}
-bufferAddVideoRegionOfInterestMeta buffer roiType x y w h = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    roiType' <- textToCString roiType
-    result <- gst_buffer_add_video_region_of_interest_meta buffer' roiType' x y w h
-    checkUnexpectedReturnNULL "bufferAddVideoRegionOfInterestMeta" result
-    result' <- (newPtr GstVideo.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta) result
-    touchManagedPtr buffer
-    freeMem roiType'
-    return result'
-
-
--- function gst_buffer_add_video_overlay_composition_meta
--- Args : [Arg {argCName = "buf", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayCompositionMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_overlay_composition_meta" gst_buffer_add_video_overlay_composition_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buf : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Ptr GstVideo.VideoOverlayComposition.VideoOverlayComposition -> -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    IO (Ptr GstVideo.VideoOverlayCompositionMeta.VideoOverlayCompositionMeta)
-
-{- |
-Sets an overlay composition on a buffer. The buffer will obtain its own
-reference to the composition, meaning this function does not take ownership
-of /@comp@/.
--}
-bufferAddVideoOverlayCompositionMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buf@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> Maybe (GstVideo.VideoOverlayComposition.VideoOverlayComposition)
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' -}
-    -> m GstVideo.VideoOverlayCompositionMeta.VideoOverlayCompositionMeta
-    {- ^ __Returns:__ a 'GI.GstVideo.Structs.VideoOverlayCompositionMeta.VideoOverlayCompositionMeta' -}
-bufferAddVideoOverlayCompositionMeta buf comp = liftIO $ do
-    buf' <- unsafeManagedPtrGetPtr buf
-    maybeComp <- case comp of
-        Nothing -> return nullPtr
-        Just jComp -> do
-            jComp' <- unsafeManagedPtrGetPtr jComp
-            return jComp'
-    result <- gst_buffer_add_video_overlay_composition_meta buf' maybeComp
-    checkUnexpectedReturnNULL "bufferAddVideoOverlayCompositionMeta" result
-    result' <- (newPtr GstVideo.VideoOverlayCompositionMeta.VideoOverlayCompositionMeta) result
-    touchManagedPtr buf
-    whenJust comp touchManagedPtr
-    return result'
-
-
--- function gst_buffer_add_video_meta_full
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrameFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoFrameFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_planes", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "number of planes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "offset", argType = TCArray False 4 (-1) (TBasicType TUInt64), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "offset of each plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stride", argType = TCArray False 4 (-1) (TBasicType TInt), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "stride of each plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_meta_full" gst_buffer_add_video_meta_full :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoFrameFlags"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    Word32 ->                               -- n_planes : TBasicType TUInt
-    Ptr Word64 ->                           -- offset : TCArray False 4 (-1) (TBasicType TUInt64)
-    Ptr Int32 ->                            -- stride : TCArray False 4 (-1) (TBasicType TInt)
-    IO (Ptr GstVideo.VideoMeta.VideoMeta)
-
-{- |
-Attaches GstVideoMeta metadata to /@buffer@/ with the given parameters.
--}
-bufferAddVideoMetaFull ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> [GstVideo.Flags.VideoFrameFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoFrameFlags' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' -}
-    -> Word32
-    {- ^ /@width@/: the width -}
-    -> Word32
-    {- ^ /@height@/: the height -}
-    -> Word32
-    {- ^ /@nPlanes@/: number of planes -}
-    -> [Word64]
-    {- ^ /@offset@/: offset of each plane -}
-    -> [Int32]
-    {- ^ /@stride@/: stride of each plane -}
-    -> m GstVideo.VideoMeta.VideoMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoMeta.VideoMeta' on /@buffer@/. -}
-bufferAddVideoMetaFull buffer flags format width height nPlanes offset stride = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    let flags' = gflagsToWord flags
-    let format' = (fromIntegral . fromEnum) format
-    offset' <- packStorableArray offset
-    stride' <- packStorableArray stride
-    result <- gst_buffer_add_video_meta_full buffer' flags' format' width height nPlanes offset' stride'
-    checkUnexpectedReturnNULL "bufferAddVideoMetaFull" result
-    result' <- (newPtr GstVideo.VideoMeta.VideoMeta) result
-    touchManagedPtr buffer
-    freeMem offset'
-    freeMem stride'
-    return result'
-
-
--- function gst_buffer_add_video_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrameFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoFrameFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_meta" gst_buffer_add_video_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoFrameFlags"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    IO (Ptr GstVideo.VideoMeta.VideoMeta)
-
-{- |
-Attaches GstVideoMeta metadata to /@buffer@/ with the given parameters and the
-default offsets and strides for /@format@/ and /@width@/ x /@height@/.
-
-This function calculates the default offsets and strides and then calls
-'GI.GstVideo.Functions.bufferAddVideoMetaFull' with them.
--}
-bufferAddVideoMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> [GstVideo.Flags.VideoFrameFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoFrameFlags' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' -}
-    -> Word32
-    {- ^ /@width@/: the width -}
-    -> Word32
-    {- ^ /@height@/: the height -}
-    -> m GstVideo.VideoMeta.VideoMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoMeta.VideoMeta' on /@buffer@/. -}
-bufferAddVideoMeta buffer flags format width height = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    let flags' = gflagsToWord flags
-    let format' = (fromIntegral . fromEnum) format
-    result <- gst_buffer_add_video_meta buffer' flags' format' width height
-    checkUnexpectedReturnNULL "bufferAddVideoMeta" result
-    result' <- (newPtr GstVideo.VideoMeta.VideoMeta) result
-    touchManagedPtr buffer
-    return result'
-
-
--- function gst_buffer_add_video_gl_texture_upload_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "texture_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoGLTextureOrientation", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_textures", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of textures", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "texture_type", argType = TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureType"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "array of #GstVideoGLTextureType", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "upload", argType = TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUpload"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the function to upload the buffer to a specific texture ID", sinceVersion = Nothing}, argScope = ScopeTypeCall, argClosure = 5, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "user data for the implementor of @upload", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data_copy", argType = TInterface (Name {namespace = "GObject", name = "BoxedCopyFunc"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "function to copy @user_data", sinceVersion = Nothing}, argScope = ScopeTypeCall, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data_free", argType = TInterface (Name {namespace = "GObject", name = "BoxedFreeFunc"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "function to free @user_data", sinceVersion = Nothing}, argScope = ScopeTypeCall, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUploadMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_gl_texture_upload_meta" gst_buffer_add_video_gl_texture_upload_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    CUInt ->                                -- texture_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureOrientation"})
-    Word32 ->                               -- n_textures : TBasicType TUInt
-    CUInt ->                                -- texture_type : TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureType"})
-    FunPtr GstVideo.Callbacks.C_VideoGLTextureUpload -> -- upload : TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUpload"})
-    Ptr () ->                               -- user_data : TBasicType TPtr
-    FunPtr GObject.Callbacks.C_BoxedCopyFunc -> -- user_data_copy : TInterface (Name {namespace = "GObject", name = "BoxedCopyFunc"})
-    FunPtr GObject.Callbacks.C_BoxedFreeFunc -> -- user_data_free : TInterface (Name {namespace = "GObject", name = "BoxedFreeFunc"})
-    IO (Ptr GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta)
-
-{- |
-Attaches GstVideoGLTextureUploadMeta metadata to /@buffer@/ with the given
-parameters.
--}
-bufferAddVideoGlTextureUploadMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> GstVideo.Enums.VideoGLTextureOrientation
-    {- ^ /@textureOrientation@/: the 'GI.GstVideo.Enums.VideoGLTextureOrientation' -}
-    -> Word32
-    {- ^ /@nTextures@/: the number of textures -}
-    -> GstVideo.Enums.VideoGLTextureType
-    {- ^ /@textureType@/: array of 'GI.GstVideo.Enums.VideoGLTextureType' -}
-    -> GstVideo.Callbacks.VideoGLTextureUpload
-    {- ^ /@upload@/: the function to upload the buffer to a specific texture ID -}
-    -> GObject.Callbacks.BoxedCopyFunc
-    {- ^ /@userDataCopy@/: function to copy /@userData@/ -}
-    -> GObject.Callbacks.BoxedFreeFunc
-    {- ^ /@userDataFree@/: function to free /@userData@/ -}
-    -> m GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta' on /@buffer@/. -}
-bufferAddVideoGlTextureUploadMeta buffer textureOrientation nTextures textureType upload userDataCopy userDataFree = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    let textureOrientation' = (fromIntegral . fromEnum) textureOrientation
-    let textureType' = (fromIntegral . fromEnum) textureType
-    upload' <- GstVideo.Callbacks.mk_VideoGLTextureUpload (GstVideo.Callbacks.wrap_VideoGLTextureUpload Nothing upload)
-    userDataCopy' <- GObject.Callbacks.mk_BoxedCopyFunc (GObject.Callbacks.wrap_BoxedCopyFunc Nothing userDataCopy)
-    userDataFree' <- GObject.Callbacks.mk_BoxedFreeFunc (GObject.Callbacks.wrap_BoxedFreeFunc Nothing userDataFree)
-    let userData = nullPtr
-    result <- gst_buffer_add_video_gl_texture_upload_meta buffer' textureOrientation' nTextures textureType' upload' userData userDataCopy' userDataFree'
-    checkUnexpectedReturnNULL "bufferAddVideoGlTextureUploadMeta" result
-    result' <- (newPtr GstVideo.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta) result
-    safeFreeFunPtr $ castFunPtrToPtr upload'
-    safeFreeFunPtr $ castFunPtrToPtr userDataCopy'
-    safeFreeFunPtr $ castFunPtrToPtr userDataFree'
-    touchManagedPtr buffer
-    return result'
-
-
--- function gst_buffer_add_video_caption_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "caption_type", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCaptionType"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The type of Closed Caption to add", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TCArray False (-1) 3 (TBasicType TUInt8), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The Closed Caption data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "size", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The size of @data in bytes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : [Arg {argCName = "size", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The size of @data in bytes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCaptionMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_caption_meta" gst_buffer_add_video_caption_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    CUInt ->                                -- caption_type : TInterface (Name {namespace = "GstVideo", name = "VideoCaptionType"})
-    Ptr Word8 ->                            -- data : TCArray False (-1) 3 (TBasicType TUInt8)
-    Word64 ->                               -- size : TBasicType TUInt64
-    IO (Ptr GstVideo.VideoCaptionMeta.VideoCaptionMeta)
-
-{- |
-Attaches 'GI.GstVideo.Structs.VideoCaptionMeta.VideoCaptionMeta' metadata to /@buffer@/ with the given
-parameters.
-
-/Since: 1.16/
--}
-bufferAddVideoCaptionMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> GstVideo.Enums.VideoCaptionType
-    {- ^ /@captionType@/: The type of Closed Caption to add -}
-    -> ByteString
-    {- ^ /@data@/: The Closed Caption data -}
-    -> m GstVideo.VideoCaptionMeta.VideoCaptionMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoCaptionMeta.VideoCaptionMeta' on /@buffer@/. -}
-bufferAddVideoCaptionMeta buffer captionType data_ = liftIO $ do
-    let size = fromIntegral $ B.length data_
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    let captionType' = (fromIntegral . fromEnum) captionType
-    data_' <- packByteString data_
-    result <- gst_buffer_add_video_caption_meta buffer' captionType' data_' size
-    checkUnexpectedReturnNULL "bufferAddVideoCaptionMeta" result
-    result' <- (newPtr GstVideo.VideoCaptionMeta.VideoCaptionMeta) result
-    touchManagedPtr buffer
-    freeMem data_'
-    return result'
-
-
--- function gst_buffer_add_video_affine_transformation_meta
--- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoAffineTransformationMeta"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_buffer_add_video_affine_transformation_meta" gst_buffer_add_video_affine_transformation_meta :: 
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    IO (Ptr GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta)
-
-{- |
-Attaches GstVideoAffineTransformationMeta metadata to /@buffer@/ with
-the given parameters.
-
-/Since: 1.8/
--}
-bufferAddVideoAffineTransformationMeta ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@buffer@/: a 'GI.Gst.Structs.Buffer.Buffer' -}
-    -> m GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoAffineTransformationMeta.VideoAffineTransformationMeta' on /@buffer@/. -}
-bufferAddVideoAffineTransformationMeta buffer = liftIO $ do
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    result <- gst_buffer_add_video_affine_transformation_meta buffer'
-    checkUnexpectedReturnNULL "bufferAddVideoAffineTransformationMeta" result
-    result' <- (newPtr GstVideo.VideoAffineTransformationMeta.VideoAffineTransformationMeta) result
-    touchManagedPtr buffer
-    return result'
-
-
-
diff --git a/GI/GstVideo/Interfaces.hs b/GI/GstVideo/Interfaces.hs
deleted file mode 100644
--- a/GI/GstVideo/Interfaces.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Interfaces
-    (     module GI.GstVideo.Interfaces.ColorBalance,
-    module GI.GstVideo.Interfaces.Navigation,
-    module GI.GstVideo.Interfaces.VideoDirection,
-    module GI.GstVideo.Interfaces.VideoOrientation,
-    module GI.GstVideo.Interfaces.VideoOverlay,
-
-
-    ) where
-
-import GI.GstVideo.Interfaces.ColorBalance
-import GI.GstVideo.Interfaces.Navigation
-import GI.GstVideo.Interfaces.VideoDirection
-import GI.GstVideo.Interfaces.VideoOrientation
-import GI.GstVideo.Interfaces.VideoOverlay
-
-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.ManagedPtr as B.ManagedPtr
-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.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
-
-
-
diff --git a/GI/GstVideo/Interfaces/ColorBalance.hs b/GI/GstVideo/Interfaces/ColorBalance.hs
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/ColorBalance.hs
+++ /dev/null
@@ -1,482 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-This interface is implemented by elements which can perform some color
-balance operation on video frames they process. For example, modifying
-the brightness, contrast, hue or saturation.
-
-Example elements are \'xvimagesink\' and \'colorbalance\'
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Interfaces.ColorBalance
-    ( 
-
--- * Exported types
-    ColorBalance(..)                        ,
-    noColorBalance                          ,
-    IsColorBalance                          ,
-    toColorBalance                          ,
-
-
- -- * Methods
--- ** getBalanceType #method:getBalanceType#
-
-#if ENABLE_OVERLOADING
-    ColorBalanceGetBalanceTypeMethodInfo    ,
-#endif
-    colorBalanceGetBalanceType              ,
-
-
--- ** getValue #method:getValue#
-
-#if ENABLE_OVERLOADING
-    ColorBalanceGetValueMethodInfo          ,
-#endif
-    colorBalanceGetValue                    ,
-
-
--- ** listChannels #method:listChannels#
-
-#if ENABLE_OVERLOADING
-    ColorBalanceListChannelsMethodInfo      ,
-#endif
-    colorBalanceListChannels                ,
-
-
--- ** setValue #method:setValue#
-
-#if ENABLE_OVERLOADING
-    ColorBalanceSetValueMethodInfo          ,
-#endif
-    colorBalanceSetValue                    ,
-
-
--- ** valueChanged #method:valueChanged#
-
-#if ENABLE_OVERLOADING
-    ColorBalanceValueChangedMethodInfo      ,
-#endif
-    colorBalanceValueChanged                ,
-
-
-
-
- -- * Signals
--- ** valueChanged #signal:valueChanged#
-
-    C_ColorBalanceValueChangedCallback      ,
-    ColorBalanceValueChangedCallback        ,
-#if ENABLE_OVERLOADING
-    ColorBalanceValueChangedSignalInfo      ,
-#endif
-    afterColorBalanceValueChanged           ,
-    genClosure_ColorBalanceValueChanged     ,
-    mk_ColorBalanceValueChangedCallback     ,
-    noColorBalanceValueChangedCallback      ,
-    onColorBalanceValueChanged              ,
-    wrap_ColorBalanceValueChangedCallback   ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Objects.ColorBalanceChannel as GstVideo.ColorBalanceChannel
-
--- interface ColorBalance 
--- | Memory-managed wrapper type.
-newtype ColorBalance = ColorBalance (ManagedPtr ColorBalance)
--- | A convenience alias for `Nothing` :: `Maybe` `ColorBalance`.
-noColorBalance :: Maybe ColorBalance
-noColorBalance = Nothing
-
--- signal ColorBalance::value-changed
-{- |
-Fired when the value of the indicated channel has changed.
--}
-type ColorBalanceValueChangedCallback =
-    GstVideo.ColorBalanceChannel.ColorBalanceChannel
-    {- ^ /@channel@/: The 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' -}
-    -> Int32
-    {- ^ /@value@/: The new value -}
-    -> IO ()
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `ColorBalanceValueChangedCallback`@.
-noColorBalanceValueChangedCallback :: Maybe ColorBalanceValueChangedCallback
-noColorBalanceValueChangedCallback = Nothing
-
--- | Type for the callback on the (unwrapped) C side.
-type C_ColorBalanceValueChangedCallback =
-    Ptr () ->                               -- object
-    Ptr GstVideo.ColorBalanceChannel.ColorBalanceChannel ->
-    Int32 ->
-    Ptr () ->                               -- user_data
-    IO ()
-
--- | Generate a function pointer callable from C code, from a `C_ColorBalanceValueChangedCallback`.
-foreign import ccall "wrapper"
-    mk_ColorBalanceValueChangedCallback :: C_ColorBalanceValueChangedCallback -> IO (FunPtr C_ColorBalanceValueChangedCallback)
-
--- | Wrap the callback into a `GClosure`.
-genClosure_ColorBalanceValueChanged :: MonadIO m => ColorBalanceValueChangedCallback -> m (GClosure C_ColorBalanceValueChangedCallback)
-genClosure_ColorBalanceValueChanged cb = liftIO $ do
-    let cb' = wrap_ColorBalanceValueChangedCallback cb
-    mk_ColorBalanceValueChangedCallback cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `ColorBalanceValueChangedCallback` into a `C_ColorBalanceValueChangedCallback`.
-wrap_ColorBalanceValueChangedCallback ::
-    ColorBalanceValueChangedCallback ->
-    C_ColorBalanceValueChangedCallback
-wrap_ColorBalanceValueChangedCallback _cb _ channel value _ = do
-    channel' <- (newObject GstVideo.ColorBalanceChannel.ColorBalanceChannel) channel
-    _cb  channel' value
-
-
-{- |
-Connect a signal handler for the “@value-changed@” signal, to be run before the default handler.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Signals.on' colorBalance #valueChanged callback
-@
--}
-onColorBalanceValueChanged :: (IsColorBalance a, MonadIO m) => a -> ColorBalanceValueChangedCallback -> m SignalHandlerId
-onColorBalanceValueChanged obj cb = liftIO $ do
-    let cb' = wrap_ColorBalanceValueChangedCallback cb
-    cb'' <- mk_ColorBalanceValueChangedCallback cb'
-    connectSignalFunPtr obj "value-changed" cb'' SignalConnectBefore
-
-{- |
-Connect a signal handler for the “@value-changed@” signal, to be run after the default handler.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Signals.after' colorBalance #valueChanged callback
-@
--}
-afterColorBalanceValueChanged :: (IsColorBalance a, MonadIO m) => a -> ColorBalanceValueChangedCallback -> m SignalHandlerId
-afterColorBalanceValueChanged obj cb = liftIO $ do
-    let cb' = wrap_ColorBalanceValueChangedCallback cb
-    cb'' <- mk_ColorBalanceValueChangedCallback cb'
-    connectSignalFunPtr obj "value-changed" cb'' SignalConnectAfter
-
-
-#if ENABLE_OVERLOADING
-data ColorBalanceValueChangedSignalInfo
-instance SignalInfo ColorBalanceValueChangedSignalInfo where
-    type HaskellCallbackType ColorBalanceValueChangedSignalInfo = ColorBalanceValueChangedCallback
-    connectSignal _ obj cb connectMode = do
-        let cb' = wrap_ColorBalanceValueChangedCallback cb
-        cb'' <- mk_ColorBalanceValueChangedCallback cb'
-        connectSignalFunPtr obj "value-changed" cb'' connectMode
-
-type instance O.SignalList ColorBalance = ColorBalanceSignalList
-type ColorBalanceSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo), '("valueChanged", ColorBalanceValueChangedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
-foreign import ccall "gst_color_balance_get_type"
-    c_gst_color_balance_get_type :: IO GType
-
-instance GObject ColorBalance where
-    gobjectType = c_gst_color_balance_get_type
-    
-
--- | Type class for types which can be safely cast to `ColorBalance`, for instance with `toColorBalance`.
-class (GObject o, O.IsDescendantOf ColorBalance o) => IsColorBalance o
-instance (GObject o, O.IsDescendantOf ColorBalance o) => IsColorBalance o
-
-instance O.HasParentTypes ColorBalance
-type instance O.ParentTypes ColorBalance = '[GObject.Object.Object]
-
--- | Cast to `ColorBalance`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toColorBalance :: (MonadIO m, IsColorBalance o) => o -> m ColorBalance
-toColorBalance = liftIO . unsafeCastTo ColorBalance
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList ColorBalance
-type instance O.AttributeList ColorBalance = ColorBalanceAttributeList
-type ColorBalanceAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveColorBalanceMethod (t :: Symbol) (o :: *) :: * where
-    ResolveColorBalanceMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveColorBalanceMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveColorBalanceMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveColorBalanceMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveColorBalanceMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveColorBalanceMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveColorBalanceMethod "listChannels" o = ColorBalanceListChannelsMethodInfo
-    ResolveColorBalanceMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveColorBalanceMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveColorBalanceMethod "ref" o = GObject.Object.ObjectRefMethodInfo
-    ResolveColorBalanceMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveColorBalanceMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveColorBalanceMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveColorBalanceMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveColorBalanceMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveColorBalanceMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
-    ResolveColorBalanceMethod "valueChanged" o = ColorBalanceValueChangedMethodInfo
-    ResolveColorBalanceMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveColorBalanceMethod "getBalanceType" o = ColorBalanceGetBalanceTypeMethodInfo
-    ResolveColorBalanceMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveColorBalanceMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveColorBalanceMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveColorBalanceMethod "getValue" o = ColorBalanceGetValueMethodInfo
-    ResolveColorBalanceMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveColorBalanceMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveColorBalanceMethod "setValue" o = ColorBalanceSetValueMethodInfo
-    ResolveColorBalanceMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveColorBalanceMethod t ColorBalance, O.MethodInfo info ColorBalance p) => OL.IsLabel t (ColorBalance -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- method ColorBalance::get_balance_type
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "balance", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalance"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The #GstColorBalance implementation", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "ColorBalanceType"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_color_balance_get_balance_type" gst_color_balance_get_balance_type :: 
-    Ptr ColorBalance ->                     -- balance : TInterface (Name {namespace = "GstVideo", name = "ColorBalance"})
-    IO CUInt
-
-{- |
-Get the 'GI.GstVideo.Enums.ColorBalanceType' of this implementation.
--}
-colorBalanceGetBalanceType ::
-    (B.CallStack.HasCallStack, MonadIO m, IsColorBalance a) =>
-    a
-    {- ^ /@balance@/: The 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance' implementation -}
-    -> m GstVideo.Enums.ColorBalanceType
-    {- ^ __Returns:__ A the 'GI.GstVideo.Enums.ColorBalanceType'. -}
-colorBalanceGetBalanceType balance = liftIO $ do
-    balance' <- unsafeManagedPtrCastPtr balance
-    result <- gst_color_balance_get_balance_type balance'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr balance
-    return result'
-
-#if ENABLE_OVERLOADING
-data ColorBalanceGetBalanceTypeMethodInfo
-instance (signature ~ (m GstVideo.Enums.ColorBalanceType), MonadIO m, IsColorBalance a) => O.MethodInfo ColorBalanceGetBalanceTypeMethodInfo a signature where
-    overloadedMethod _ = colorBalanceGetBalanceType
-
-#endif
-
--- method ColorBalance::get_value
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "balance", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalance"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalance instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "channel", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalanceChannel instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_color_balance_get_value" gst_color_balance_get_value :: 
-    Ptr ColorBalance ->                     -- balance : TInterface (Name {namespace = "GstVideo", name = "ColorBalance"})
-    Ptr GstVideo.ColorBalanceChannel.ColorBalanceChannel -> -- channel : TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"})
-    IO Int32
-
-{- |
-Retrieve the current value of the indicated channel, between min_value
-and max_value.
-
-See Also: The 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel'.@/min_value/@ and
-        'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel'.@/max_value/@ members of the
-        'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' object.
--}
-colorBalanceGetValue ::
-    (B.CallStack.HasCallStack, MonadIO m, IsColorBalance a, GstVideo.ColorBalanceChannel.IsColorBalanceChannel b) =>
-    a
-    {- ^ /@balance@/: A 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance' instance -}
-    -> b
-    {- ^ /@channel@/: A 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' instance -}
-    -> m Int32
-    {- ^ __Returns:__ The current value of the channel. -}
-colorBalanceGetValue balance channel = liftIO $ do
-    balance' <- unsafeManagedPtrCastPtr balance
-    channel' <- unsafeManagedPtrCastPtr channel
-    result <- gst_color_balance_get_value balance' channel'
-    touchManagedPtr balance
-    touchManagedPtr channel
-    return result
-
-#if ENABLE_OVERLOADING
-data ColorBalanceGetValueMethodInfo
-instance (signature ~ (b -> m Int32), MonadIO m, IsColorBalance a, GstVideo.ColorBalanceChannel.IsColorBalanceChannel b) => O.MethodInfo ColorBalanceGetValueMethodInfo a signature where
-    overloadedMethod _ = colorBalanceGetValue
-
-#endif
-
--- method ColorBalance::list_channels
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "balance", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalance"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalance instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TGList (TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"})))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_color_balance_list_channels" gst_color_balance_list_channels :: 
-    Ptr ColorBalance ->                     -- balance : TInterface (Name {namespace = "GstVideo", name = "ColorBalance"})
-    IO (Ptr (GList (Ptr GstVideo.ColorBalanceChannel.ColorBalanceChannel)))
-
-{- |
-Retrieve a list of the available channels.
--}
-colorBalanceListChannels ::
-    (B.CallStack.HasCallStack, MonadIO m, IsColorBalance a) =>
-    a
-    {- ^ /@balance@/: A 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance' instance -}
-    -> m [GstVideo.ColorBalanceChannel.ColorBalanceChannel]
-    {- ^ __Returns:__ A
-         GList containing pointers to 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel'
-         objects. The list is owned by the 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance'
-         instance and must not be freed. -}
-colorBalanceListChannels balance = liftIO $ do
-    balance' <- unsafeManagedPtrCastPtr balance
-    result <- gst_color_balance_list_channels balance'
-    result' <- unpackGList result
-    result'' <- mapM (newObject GstVideo.ColorBalanceChannel.ColorBalanceChannel) result'
-    touchManagedPtr balance
-    return result''
-
-#if ENABLE_OVERLOADING
-data ColorBalanceListChannelsMethodInfo
-instance (signature ~ (m [GstVideo.ColorBalanceChannel.ColorBalanceChannel]), MonadIO m, IsColorBalance a) => O.MethodInfo ColorBalanceListChannelsMethodInfo a signature where
-    overloadedMethod _ = colorBalanceListChannels
-
-#endif
-
--- method ColorBalance::set_value
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "balance", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalance"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalance instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "channel", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalanceChannel instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The new value for the channel.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_color_balance_set_value" gst_color_balance_set_value :: 
-    Ptr ColorBalance ->                     -- balance : TInterface (Name {namespace = "GstVideo", name = "ColorBalance"})
-    Ptr GstVideo.ColorBalanceChannel.ColorBalanceChannel -> -- channel : TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"})
-    Int32 ->                                -- value : TBasicType TInt
-    IO ()
-
-{- |
-Sets the current value of the channel to the passed value, which must
-be between min_value and max_value.
-
-See Also: The 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel'.@/min_value/@ and
-        'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel'.@/max_value/@ members of the
-        'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' object.
--}
-colorBalanceSetValue ::
-    (B.CallStack.HasCallStack, MonadIO m, IsColorBalance a, GstVideo.ColorBalanceChannel.IsColorBalanceChannel b) =>
-    a
-    {- ^ /@balance@/: A 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance' instance -}
-    -> b
-    {- ^ /@channel@/: A 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' instance -}
-    -> Int32
-    {- ^ /@value@/: The new value for the channel. -}
-    -> m ()
-colorBalanceSetValue balance channel value = liftIO $ do
-    balance' <- unsafeManagedPtrCastPtr balance
-    channel' <- unsafeManagedPtrCastPtr channel
-    gst_color_balance_set_value balance' channel' value
-    touchManagedPtr balance
-    touchManagedPtr channel
-    return ()
-
-#if ENABLE_OVERLOADING
-data ColorBalanceSetValueMethodInfo
-instance (signature ~ (b -> Int32 -> m ()), MonadIO m, IsColorBalance a, GstVideo.ColorBalanceChannel.IsColorBalanceChannel b) => O.MethodInfo ColorBalanceSetValueMethodInfo a signature where
-    overloadedMethod _ = colorBalanceSetValue
-
-#endif
-
--- method ColorBalance::value_changed
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "balance", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalance"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalance instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "channel", argType = TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstColorBalanceChannel whose value has changed", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The new value of the channel", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_color_balance_value_changed" gst_color_balance_value_changed :: 
-    Ptr ColorBalance ->                     -- balance : TInterface (Name {namespace = "GstVideo", name = "ColorBalance"})
-    Ptr GstVideo.ColorBalanceChannel.ColorBalanceChannel -> -- channel : TInterface (Name {namespace = "GstVideo", name = "ColorBalanceChannel"})
-    Int32 ->                                -- value : TBasicType TInt
-    IO ()
-
-{- |
-A helper function called by implementations of the GstColorBalance
-interface. It fires the 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance'::@/value-changed/@ signal on the
-instance, and the 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel'::@/value-changed/@ signal on the
-channel object.
--}
-colorBalanceValueChanged ::
-    (B.CallStack.HasCallStack, MonadIO m, IsColorBalance a, GstVideo.ColorBalanceChannel.IsColorBalanceChannel b) =>
-    a
-    {- ^ /@balance@/: A 'GI.GstVideo.Interfaces.ColorBalance.ColorBalance' instance -}
-    -> b
-    {- ^ /@channel@/: A 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' whose value has changed -}
-    -> Int32
-    {- ^ /@value@/: The new value of the channel -}
-    -> m ()
-colorBalanceValueChanged balance channel value = liftIO $ do
-    balance' <- unsafeManagedPtrCastPtr balance
-    channel' <- unsafeManagedPtrCastPtr channel
-    gst_color_balance_value_changed balance' channel' value
-    touchManagedPtr balance
-    touchManagedPtr channel
-    return ()
-
-#if ENABLE_OVERLOADING
-data ColorBalanceValueChangedMethodInfo
-instance (signature ~ (b -> Int32 -> m ()), MonadIO m, IsColorBalance a, GstVideo.ColorBalanceChannel.IsColorBalanceChannel b) => O.MethodInfo ColorBalanceValueChangedMethodInfo a signature where
-    overloadedMethod _ = colorBalanceValueChanged
-
-#endif
-
-
diff --git a/GI/GstVideo/Interfaces/ColorBalance.hs-boot b/GI/GstVideo/Interfaces/ColorBalance.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/ColorBalance.hs-boot
+++ /dev/null
@@ -1,47 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Interfaces.ColorBalance 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype ColorBalance = ColorBalance (ManagedPtr ColorBalance)
-#if ENABLE_OVERLOADING
-data ColorBalanceValueChangedSignalInfo
-#endif
-instance GObject ColorBalance where
-class (GObject o, O.IsDescendantOf ColorBalance o) => IsColorBalance o
-instance (GObject o, O.IsDescendantOf ColorBalance o) => IsColorBalance o
-instance O.HasParentTypes ColorBalance
-#if ENABLE_OVERLOADING
-data ColorBalanceGetBalanceTypeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data ColorBalanceGetValueMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data ColorBalanceListChannelsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data ColorBalanceSetValueMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data ColorBalanceValueChangedMethodInfo
-#endif
diff --git a/GI/GstVideo/Interfaces/Navigation.hs b/GI/GstVideo/Interfaces/Navigation.hs
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/Navigation.hs
+++ /dev/null
@@ -1,1201 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-The Navigation interface is used for creating and injecting navigation related
-events such as mouse button presses, cursor motion and key presses. The associated
-library also provides methods for parsing received events, and for sending and
-receiving navigation related bus events. One main usecase is DVD menu navigation.
-
-The main parts of the API are:
-
-* The GstNavigation interface, implemented by elements which provide an application
-  with the ability to create and inject navigation events into the pipeline.
-* GstNavigation event handling API. GstNavigation events are created in response to
-  calls on a GstNavigation interface implementation, and sent in the pipeline. Upstream
-  elements can use the navigation event API functions to parse the contents of received
-  messages.
-
-* GstNavigation message handling API. GstNavigation messages may be sent on the message
-  bus to inform applications of navigation related changes in the pipeline, such as the
-  mouse moving over a clickable region, or the set of available angles changing.
-
-The GstNavigation message functions provide functions for creating and parsing
-custom bus messages for signaling GstNavigation changes.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Interfaces.Navigation
-    ( 
-
--- * Exported types
-    Navigation(..)                          ,
-    noNavigation                            ,
-    IsNavigation                            ,
-
-
- -- * Methods
--- ** eventGetType #method:eventGetType#
-
-    navigationEventGetType                  ,
-
-
--- ** eventParseCommand #method:eventParseCommand#
-
-    navigationEventParseCommand             ,
-
-
--- ** eventParseKeyEvent #method:eventParseKeyEvent#
-
-    navigationEventParseKeyEvent            ,
-
-
--- ** eventParseMouseButtonEvent #method:eventParseMouseButtonEvent#
-
-    navigationEventParseMouseButtonEvent    ,
-
-
--- ** eventParseMouseMoveEvent #method:eventParseMouseMoveEvent#
-
-    navigationEventParseMouseMoveEvent      ,
-
-
--- ** messageGetType #method:messageGetType#
-
-    navigationMessageGetType                ,
-
-
--- ** messageNewAnglesChanged #method:messageNewAnglesChanged#
-
-    navigationMessageNewAnglesChanged       ,
-
-
--- ** messageNewCommandsChanged #method:messageNewCommandsChanged#
-
-    navigationMessageNewCommandsChanged     ,
-
-
--- ** messageNewEvent #method:messageNewEvent#
-
-    navigationMessageNewEvent               ,
-
-
--- ** messageNewMouseOver #method:messageNewMouseOver#
-
-    navigationMessageNewMouseOver           ,
-
-
--- ** messageParseAnglesChanged #method:messageParseAnglesChanged#
-
-    navigationMessageParseAnglesChanged     ,
-
-
--- ** messageParseEvent #method:messageParseEvent#
-
-    navigationMessageParseEvent             ,
-
-
--- ** messageParseMouseOver #method:messageParseMouseOver#
-
-    navigationMessageParseMouseOver         ,
-
-
--- ** queryGetType #method:queryGetType#
-
-    navigationQueryGetType                  ,
-
-
--- ** queryNewAngles #method:queryNewAngles#
-
-    navigationQueryNewAngles                ,
-
-
--- ** queryNewCommands #method:queryNewCommands#
-
-    navigationQueryNewCommands              ,
-
-
--- ** queryParseAngles #method:queryParseAngles#
-
-    navigationQueryParseAngles              ,
-
-
--- ** queryParseCommandsLength #method:queryParseCommandsLength#
-
-    navigationQueryParseCommandsLength      ,
-
-
--- ** queryParseCommandsNth #method:queryParseCommandsNth#
-
-    navigationQueryParseCommandsNth         ,
-
-
--- ** querySetAngles #method:querySetAngles#
-
-    navigationQuerySetAngles                ,
-
-
--- ** querySetCommandsv #method:querySetCommandsv#
-
-    navigationQuerySetCommandsv             ,
-
-
--- ** sendCommand #method:sendCommand#
-
-#if ENABLE_OVERLOADING
-    NavigationSendCommandMethodInfo         ,
-#endif
-    navigationSendCommand                   ,
-
-
--- ** sendEvent #method:sendEvent#
-
-#if ENABLE_OVERLOADING
-    NavigationSendEventMethodInfo           ,
-#endif
-    navigationSendEvent                     ,
-
-
--- ** sendKeyEvent #method:sendKeyEvent#
-
-#if ENABLE_OVERLOADING
-    NavigationSendKeyEventMethodInfo        ,
-#endif
-    navigationSendKeyEvent                  ,
-
-
--- ** sendMouseEvent #method:sendMouseEvent#
-
-#if ENABLE_OVERLOADING
-    NavigationSendMouseEventMethodInfo      ,
-#endif
-    navigationSendMouseEvent                ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Objects.Object as Gst.Object
-import qualified GI.Gst.Structs.Event as Gst.Event
-import qualified GI.Gst.Structs.Message as Gst.Message
-import qualified GI.Gst.Structs.Query as Gst.Query
-import qualified GI.Gst.Structs.Structure as Gst.Structure
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- interface Navigation 
--- | Memory-managed wrapper type.
-newtype Navigation = Navigation (ManagedPtr Navigation)
--- | A convenience alias for `Nothing` :: `Maybe` `Navigation`.
-noNavigation :: Maybe Navigation
-noNavigation = Nothing
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList Navigation = NavigationSignalList
-type NavigationSignalList = ('[ ] :: [(Symbol, *)])
-
-#endif
-
--- | Type class for types which implement `Navigation`.
-class ManagedPtrNewtype a => IsNavigation a
-instance IsNavigation Navigation
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr Navigation where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
-
-#if ENABLE_OVERLOADING
-type family ResolveNavigationMethod (t :: Symbol) (o :: *) :: * where
-    ResolveNavigationMethod "sendCommand" o = NavigationSendCommandMethodInfo
-    ResolveNavigationMethod "sendEvent" o = NavigationSendEventMethodInfo
-    ResolveNavigationMethod "sendKeyEvent" o = NavigationSendKeyEventMethodInfo
-    ResolveNavigationMethod "sendMouseEvent" o = NavigationSendMouseEventMethodInfo
-    ResolveNavigationMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveNavigationMethod t Navigation, O.MethodInfo info Navigation p) => OL.IsLabel t (Navigation -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- method Navigation::send_command
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "navigation", argType = TInterface (Name {namespace = "GstVideo", name = "Navigation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The navigation interface instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "command", argType = TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The command to issue", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_send_command" gst_navigation_send_command :: 
-    Ptr Navigation ->                       -- navigation : TInterface (Name {namespace = "GstVideo", name = "Navigation"})
-    CUInt ->                                -- command : TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"})
-    IO ()
-
-{- |
-Sends the indicated command to the navigation interface.
--}
-navigationSendCommand ::
-    (B.CallStack.HasCallStack, MonadIO m, IsNavigation a) =>
-    a
-    {- ^ /@navigation@/: The navigation interface instance -}
-    -> GstVideo.Enums.NavigationCommand
-    {- ^ /@command@/: The command to issue -}
-    -> m ()
-navigationSendCommand navigation command = liftIO $ do
-    navigation' <- unsafeManagedPtrCastPtr navigation
-    let command' = (fromIntegral . fromEnum) command
-    gst_navigation_send_command navigation' command'
-    touchManagedPtr navigation
-    return ()
-
-#if ENABLE_OVERLOADING
-data NavigationSendCommandMethodInfo
-instance (signature ~ (GstVideo.Enums.NavigationCommand -> m ()), MonadIO m, IsNavigation a) => O.MethodInfo NavigationSendCommandMethodInfo a signature where
-    overloadedMethod _ = navigationSendCommand
-
-#endif
-
--- method Navigation::send_event
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "navigation", argType = TInterface (Name {namespace = "GstVideo", name = "Navigation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "structure", argType = TInterface (Name {namespace = "Gst", name = "Structure"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_send_event" gst_navigation_send_event :: 
-    Ptr Navigation ->                       -- navigation : TInterface (Name {namespace = "GstVideo", name = "Navigation"})
-    Ptr Gst.Structure.Structure ->          -- structure : TInterface (Name {namespace = "Gst", name = "Structure"})
-    IO ()
-
-{- |
-/No description available in the introspection data./
--}
-navigationSendEvent ::
-    (B.CallStack.HasCallStack, MonadIO m, IsNavigation a) =>
-    a
-    -> Gst.Structure.Structure
-    -> m ()
-navigationSendEvent navigation structure = liftIO $ do
-    navigation' <- unsafeManagedPtrCastPtr navigation
-    structure' <- unsafeManagedPtrGetPtr structure
-    gst_navigation_send_event navigation' structure'
-    touchManagedPtr navigation
-    touchManagedPtr structure
-    return ()
-
-#if ENABLE_OVERLOADING
-data NavigationSendEventMethodInfo
-instance (signature ~ (Gst.Structure.Structure -> m ()), MonadIO m, IsNavigation a) => O.MethodInfo NavigationSendEventMethodInfo a signature where
-    overloadedMethod _ = navigationSendEvent
-
-#endif
-
--- method Navigation::send_key_event
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "navigation", argType = TInterface (Name {namespace = "GstVideo", name = "Navigation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The navigation interface instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "event", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The type of the key event. Recognised values are \"key-press\" and\n\"key-release\"", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Character representation of the key. This is typically as produced\nby XKeysymToString.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_send_key_event" gst_navigation_send_key_event :: 
-    Ptr Navigation ->                       -- navigation : TInterface (Name {namespace = "GstVideo", name = "Navigation"})
-    CString ->                              -- event : TBasicType TUTF8
-    CString ->                              -- key : TBasicType TUTF8
-    IO ()
-
-{- |
-/No description available in the introspection data./
--}
-navigationSendKeyEvent ::
-    (B.CallStack.HasCallStack, MonadIO m, IsNavigation a) =>
-    a
-    {- ^ /@navigation@/: The navigation interface instance -}
-    -> T.Text
-    {- ^ /@event@/: The type of the key event. Recognised values are \"key-press\" and
-\"key-release\" -}
-    -> T.Text
-    {- ^ /@key@/: Character representation of the key. This is typically as produced
-by XKeysymToString. -}
-    -> m ()
-navigationSendKeyEvent navigation event key = liftIO $ do
-    navigation' <- unsafeManagedPtrCastPtr navigation
-    event' <- textToCString event
-    key' <- textToCString key
-    gst_navigation_send_key_event navigation' event' key'
-    touchManagedPtr navigation
-    freeMem event'
-    freeMem key'
-    return ()
-
-#if ENABLE_OVERLOADING
-data NavigationSendKeyEventMethodInfo
-instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsNavigation a) => O.MethodInfo NavigationSendKeyEventMethodInfo a signature where
-    overloadedMethod _ = navigationSendKeyEvent
-
-#endif
-
--- method Navigation::send_mouse_event
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "navigation", argType = TInterface (Name {namespace = "GstVideo", name = "Navigation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The navigation interface instance", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "event", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The type of mouse event, as a text string. Recognised values are\n\"mouse-button-press\", \"mouse-button-release\" and \"mouse-move\".", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "button", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The button number of the button being pressed or released. Pass 0\nfor mouse-move events.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The x coordinate of the mouse event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The y coordinate of the mouse event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_send_mouse_event" gst_navigation_send_mouse_event :: 
-    Ptr Navigation ->                       -- navigation : TInterface (Name {namespace = "GstVideo", name = "Navigation"})
-    CString ->                              -- event : TBasicType TUTF8
-    Int32 ->                                -- button : TBasicType TInt
-    CDouble ->                              -- x : TBasicType TDouble
-    CDouble ->                              -- y : TBasicType TDouble
-    IO ()
-
-{- |
-Sends a mouse event to the navigation interface. Mouse event coordinates
-are sent relative to the display space of the related output area. This is
-usually the size in pixels of the window associated with the element
-implementing the 'GI.GstVideo.Interfaces.Navigation.Navigation' interface.
--}
-navigationSendMouseEvent ::
-    (B.CallStack.HasCallStack, MonadIO m, IsNavigation a) =>
-    a
-    {- ^ /@navigation@/: The navigation interface instance -}
-    -> T.Text
-    {- ^ /@event@/: The type of mouse event, as a text string. Recognised values are
-\"mouse-button-press\", \"mouse-button-release\" and \"mouse-move\". -}
-    -> Int32
-    {- ^ /@button@/: The button number of the button being pressed or released. Pass 0
-for mouse-move events. -}
-    -> Double
-    {- ^ /@x@/: The x coordinate of the mouse event. -}
-    -> Double
-    {- ^ /@y@/: The y coordinate of the mouse event. -}
-    -> m ()
-navigationSendMouseEvent navigation event button x y = liftIO $ do
-    navigation' <- unsafeManagedPtrCastPtr navigation
-    event' <- textToCString event
-    let x' = realToFrac x
-    let y' = realToFrac y
-    gst_navigation_send_mouse_event navigation' event' button x' y'
-    touchManagedPtr navigation
-    freeMem event'
-    return ()
-
-#if ENABLE_OVERLOADING
-data NavigationSendMouseEventMethodInfo
-instance (signature ~ (T.Text -> Int32 -> Double -> Double -> m ()), MonadIO m, IsNavigation a) => O.MethodInfo NavigationSendMouseEventMethodInfo a signature where
-    overloadedMethod _ = navigationSendMouseEvent
-
-#endif
-
--- method Navigation::event_get_type
--- method type : MemberFunction
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "NavigationEventType"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_event_get_type" gst_navigation_event_get_type :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    IO CUInt
-
-{- |
-Inspect a 'GI.Gst.Structs.Event.Event' and return the 'GI.GstVideo.Enums.NavigationEventType' of the event, or
-@/GST_NAVIGATION_EVENT_INVALID/@ if the event is not a 'GI.GstVideo.Interfaces.Navigation.Navigation' event.
--}
-navigationEventGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to inspect. -}
-    -> m GstVideo.Enums.NavigationEventType
-navigationEventGetType event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    result <- gst_navigation_event_get_type event'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr event
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::event_parse_command
--- method type : MemberFunction
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "command", argType = TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to GstNavigationCommand to receive the\n    type of the navigation event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_event_parse_command" gst_navigation_event_parse_command :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr CUInt ->                            -- command : TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"})
-    IO CInt
-
-{- |
-Inspect a 'GI.GstVideo.Interfaces.Navigation.Navigation' command event and retrieve the enum value of the
-associated command.
--}
-navigationEventParseCommand ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to inspect. -}
-    -> m ((Bool, GstVideo.Enums.NavigationCommand))
-    {- ^ __Returns:__ TRUE if the navigation command could be extracted, otherwise FALSE. -}
-navigationEventParseCommand event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    command <- allocMem :: IO (Ptr CUInt)
-    result <- gst_navigation_event_parse_command event' command
-    let result' = (/= 0) result
-    command' <- peek command
-    let command'' = (toEnum . fromIntegral) command'
-    touchManagedPtr event
-    freeMem command
-    return (result', command'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::event_parse_key_event
--- method type : MemberFunction
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "key", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to a location to receive\n    the string identifying the key press. The returned string is owned by the\n    event, and valid only until the event is unreffed.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_event_parse_key_event" gst_navigation_event_parse_key_event :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr CString ->                          -- key : TBasicType TUTF8
-    IO CInt
-
-{- |
-/No description available in the introspection data./
--}
-navigationEventParseKeyEvent ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to inspect. -}
-    -> m ((Bool, T.Text))
-navigationEventParseKeyEvent event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    key <- allocMem :: IO (Ptr CString)
-    result <- gst_navigation_event_parse_key_event event' key
-    let result' = (/= 0) result
-    key' <- peek key
-    key'' <- cstringToText key'
-    touchManagedPtr event
-    freeMem key
-    return (result', key'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::event_parse_mouse_button_event
--- method type : MemberFunction
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "button", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a gint that will receive the button\n    number associated with the event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "x", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a gdouble to receive the x coordinate of the\n    mouse button event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "y", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a gdouble to receive the y coordinate of the\n    mouse button event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_event_parse_mouse_button_event" gst_navigation_event_parse_mouse_button_event :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr Int32 ->                            -- button : TBasicType TInt
-    Ptr CDouble ->                          -- x : TBasicType TDouble
-    Ptr CDouble ->                          -- y : TBasicType TDouble
-    IO CInt
-
-{- |
-Retrieve the details of either a 'GI.GstVideo.Interfaces.Navigation.Navigation' mouse button press event or
-a mouse button release event. Determine which type the event is using
-'GI.GstVideo.Functions.navigationEventGetType' to retrieve the 'GI.GstVideo.Enums.NavigationEventType'.
--}
-navigationEventParseMouseButtonEvent ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to inspect. -}
-    -> m ((Bool, Int32, Double, Double))
-    {- ^ __Returns:__ TRUE if the button number and both coordinates could be extracted,
-    otherwise FALSE. -}
-navigationEventParseMouseButtonEvent event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    button <- allocMem :: IO (Ptr Int32)
-    x <- allocMem :: IO (Ptr CDouble)
-    y <- allocMem :: IO (Ptr CDouble)
-    result <- gst_navigation_event_parse_mouse_button_event event' button x y
-    let result' = (/= 0) result
-    button' <- peek button
-    x' <- peek x
-    let x'' = realToFrac x'
-    y' <- peek y
-    let y'' = realToFrac y'
-    touchManagedPtr event
-    freeMem button
-    freeMem x
-    freeMem y
-    return (result', button', x'', y'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::event_parse_mouse_move_event
--- method type : MemberFunction
--- Args : [Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstEvent to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a gdouble to receive the x coordinate of the\n    mouse movement.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "y", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a gdouble to receive the y coordinate of the\n    mouse movement.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_event_parse_mouse_move_event" gst_navigation_event_parse_mouse_move_event :: 
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    Ptr CDouble ->                          -- x : TBasicType TDouble
-    Ptr CDouble ->                          -- y : TBasicType TDouble
-    IO CInt
-
-{- |
-Inspect a 'GI.GstVideo.Interfaces.Navigation.Navigation' mouse movement event and extract the coordinates
-of the event.
--}
-navigationEventParseMouseMoveEvent ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Event.Event
-    {- ^ /@event@/: A 'GI.Gst.Structs.Event.Event' to inspect. -}
-    -> m ((Bool, Double, Double))
-    {- ^ __Returns:__ TRUE if both coordinates could be extracted, otherwise FALSE. -}
-navigationEventParseMouseMoveEvent event = liftIO $ do
-    event' <- unsafeManagedPtrGetPtr event
-    x <- allocMem :: IO (Ptr CDouble)
-    y <- allocMem :: IO (Ptr CDouble)
-    result <- gst_navigation_event_parse_mouse_move_event event' x y
-    let result' = (/= 0) result
-    x' <- peek x
-    let x'' = realToFrac x'
-    y' <- peek y
-    let y'' = realToFrac y'
-    touchManagedPtr event
-    freeMem x
-    freeMem y
-    return (result', x'', y'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_get_type
--- method type : MemberFunction
--- Args : [Arg {argCName = "message", argType = TInterface (Name {namespace = "Gst", name = "Message"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstMessage to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "NavigationMessageType"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_get_type" gst_navigation_message_get_type :: 
-    Ptr Gst.Message.Message ->              -- message : TInterface (Name {namespace = "Gst", name = "Message"})
-    IO CUInt
-
-{- |
-Check a bus message to see if it is a 'GI.GstVideo.Interfaces.Navigation.Navigation' event, and return
-the 'GI.GstVideo.Enums.NavigationMessageType' identifying the type of the message if so.
--}
-navigationMessageGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Message.Message
-    {- ^ /@message@/: A 'GI.Gst.Structs.Message.Message' to inspect. -}
-    -> m GstVideo.Enums.NavigationMessageType
-    {- ^ __Returns:__ The type of the 'GI.Gst.Structs.Message.Message', or
-@/GST_NAVIGATION_MESSAGE_INVALID/@ if the message is not a 'GI.GstVideo.Interfaces.Navigation.Navigation'
-notification. -}
-navigationMessageGetType message = liftIO $ do
-    message' <- unsafeManagedPtrGetPtr message
-    result <- gst_navigation_message_get_type message'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr message
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_new_angles_changed
--- method type : MemberFunction
--- Args : [Arg {argCName = "src", argType = TInterface (Name {namespace = "Gst", name = "Object"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstObject to set as source of the new message.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cur_angle", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The currently selected angle.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_angles", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The number of viewing angles now available.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Message"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_new_angles_changed" gst_navigation_message_new_angles_changed :: 
-    Ptr Gst.Object.Object ->                -- src : TInterface (Name {namespace = "Gst", name = "Object"})
-    Word32 ->                               -- cur_angle : TBasicType TUInt
-    Word32 ->                               -- n_angles : TBasicType TUInt
-    IO (Ptr Gst.Message.Message)
-
-{- |
-Creates a new 'GI.GstVideo.Interfaces.Navigation.Navigation' message with type
-@/GST_NAVIGATION_MESSAGE_ANGLES_CHANGED/@ for notifying an application
-that the current angle, or current number of angles available in a
-multiangle video has changed.
--}
-navigationMessageNewAnglesChanged ::
-    (B.CallStack.HasCallStack, MonadIO m, Gst.Object.IsObject a) =>
-    a
-    {- ^ /@src@/: A 'GI.Gst.Objects.Object.Object' to set as source of the new message. -}
-    -> Word32
-    {- ^ /@curAngle@/: The currently selected angle. -}
-    -> Word32
-    {- ^ /@nAngles@/: The number of viewing angles now available. -}
-    -> m Gst.Message.Message
-    {- ^ __Returns:__ The new 'GI.Gst.Structs.Message.Message'. -}
-navigationMessageNewAnglesChanged src curAngle nAngles = liftIO $ do
-    src' <- unsafeManagedPtrCastPtr src
-    result <- gst_navigation_message_new_angles_changed src' curAngle nAngles
-    checkUnexpectedReturnNULL "navigationMessageNewAnglesChanged" result
-    result' <- (wrapBoxed Gst.Message.Message) result
-    touchManagedPtr src
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_new_commands_changed
--- method type : MemberFunction
--- Args : [Arg {argCName = "src", argType = TInterface (Name {namespace = "Gst", name = "Object"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstObject to set as source of the new message.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Message"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_new_commands_changed" gst_navigation_message_new_commands_changed :: 
-    Ptr Gst.Object.Object ->                -- src : TInterface (Name {namespace = "Gst", name = "Object"})
-    IO (Ptr Gst.Message.Message)
-
-{- |
-Creates a new 'GI.GstVideo.Interfaces.Navigation.Navigation' message with type
-@/GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED/@
--}
-navigationMessageNewCommandsChanged ::
-    (B.CallStack.HasCallStack, MonadIO m, Gst.Object.IsObject a) =>
-    a
-    {- ^ /@src@/: A 'GI.Gst.Objects.Object.Object' to set as source of the new message. -}
-    -> m Gst.Message.Message
-    {- ^ __Returns:__ The new 'GI.Gst.Structs.Message.Message'. -}
-navigationMessageNewCommandsChanged src = liftIO $ do
-    src' <- unsafeManagedPtrCastPtr src
-    result <- gst_navigation_message_new_commands_changed src'
-    checkUnexpectedReturnNULL "navigationMessageNewCommandsChanged" result
-    result' <- (wrapBoxed Gst.Message.Message) result
-    touchManagedPtr src
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_new_event
--- method type : MemberFunction
--- Args : [Arg {argCName = "src", argType = TInterface (Name {namespace = "Gst", name = "Object"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstObject to set as source of the new message.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A navigation #GstEvent", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Message"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_new_event" gst_navigation_message_new_event :: 
-    Ptr Gst.Object.Object ->                -- src : TInterface (Name {namespace = "Gst", name = "Object"})
-    Ptr Gst.Event.Event ->                  -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    IO (Ptr Gst.Message.Message)
-
-{- |
-Creates a new 'GI.GstVideo.Interfaces.Navigation.Navigation' message with type
-@/GST_NAVIGATION_MESSAGE_EVENT/@.
-
-/Since: 1.6/
--}
-navigationMessageNewEvent ::
-    (B.CallStack.HasCallStack, MonadIO m, Gst.Object.IsObject a) =>
-    a
-    {- ^ /@src@/: A 'GI.Gst.Objects.Object.Object' to set as source of the new message. -}
-    -> Gst.Event.Event
-    {- ^ /@event@/: A navigation 'GI.Gst.Structs.Event.Event' -}
-    -> m Gst.Message.Message
-    {- ^ __Returns:__ The new 'GI.Gst.Structs.Message.Message'. -}
-navigationMessageNewEvent src event = liftIO $ do
-    src' <- unsafeManagedPtrCastPtr src
-    event' <- unsafeManagedPtrGetPtr event
-    result <- gst_navigation_message_new_event src' event'
-    checkUnexpectedReturnNULL "navigationMessageNewEvent" result
-    result' <- (wrapBoxed Gst.Message.Message) result
-    touchManagedPtr src
-    touchManagedPtr event
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_new_mouse_over
--- method type : MemberFunction
--- Args : [Arg {argCName = "src", argType = TInterface (Name {namespace = "Gst", name = "Object"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstObject to set as source of the new message.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "active", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%TRUE if the mouse has entered a clickable area of the display.\n%FALSE if it over a non-clickable area.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Message"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_new_mouse_over" gst_navigation_message_new_mouse_over :: 
-    Ptr Gst.Object.Object ->                -- src : TInterface (Name {namespace = "Gst", name = "Object"})
-    CInt ->                                 -- active : TBasicType TBoolean
-    IO (Ptr Gst.Message.Message)
-
-{- |
-Creates a new 'GI.GstVideo.Interfaces.Navigation.Navigation' message with type
-@/GST_NAVIGATION_MESSAGE_MOUSE_OVER/@.
--}
-navigationMessageNewMouseOver ::
-    (B.CallStack.HasCallStack, MonadIO m, Gst.Object.IsObject a) =>
-    a
-    {- ^ /@src@/: A 'GI.Gst.Objects.Object.Object' to set as source of the new message. -}
-    -> Bool
-    {- ^ /@active@/: 'True' if the mouse has entered a clickable area of the display.
-'False' if it over a non-clickable area. -}
-    -> m Gst.Message.Message
-    {- ^ __Returns:__ The new 'GI.Gst.Structs.Message.Message'. -}
-navigationMessageNewMouseOver src active = liftIO $ do
-    src' <- unsafeManagedPtrCastPtr src
-    let active' = (fromIntegral . fromEnum) active
-    result <- gst_navigation_message_new_mouse_over src' active'
-    checkUnexpectedReturnNULL "navigationMessageNewMouseOver" result
-    result' <- (wrapBoxed Gst.Message.Message) result
-    touchManagedPtr src
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_parse_angles_changed
--- method type : MemberFunction
--- Args : [Arg {argCName = "message", argType = TInterface (Name {namespace = "Gst", name = "Message"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstMessage to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cur_angle", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to a #guint to receive the new\n    current angle number, or NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "n_angles", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to a #guint to receive the new angle\n    count, or NULL.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_parse_angles_changed" gst_navigation_message_parse_angles_changed :: 
-    Ptr Gst.Message.Message ->              -- message : TInterface (Name {namespace = "Gst", name = "Message"})
-    Ptr Word32 ->                           -- cur_angle : TBasicType TUInt
-    Ptr Word32 ->                           -- n_angles : TBasicType TUInt
-    IO CInt
-
-{- |
-Parse a 'GI.GstVideo.Interfaces.Navigation.Navigation' message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
-and extract the /@curAngle@/ and /@nAngles@/ parameters.
--}
-navigationMessageParseAnglesChanged ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Message.Message
-    {- ^ /@message@/: A 'GI.Gst.Structs.Message.Message' to inspect. -}
-    -> m ((Bool, Word32, Word32))
-    {- ^ __Returns:__ 'True' if the message could be successfully parsed. 'False' if not. -}
-navigationMessageParseAnglesChanged message = liftIO $ do
-    message' <- unsafeManagedPtrGetPtr message
-    curAngle <- allocMem :: IO (Ptr Word32)
-    nAngles <- allocMem :: IO (Ptr Word32)
-    result <- gst_navigation_message_parse_angles_changed message' curAngle nAngles
-    let result' = (/= 0) result
-    curAngle' <- peek curAngle
-    nAngles' <- peek nAngles
-    touchManagedPtr message
-    freeMem curAngle
-    freeMem nAngles
-    return (result', curAngle', nAngles')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_parse_event
--- method type : MemberFunction
--- Args : [Arg {argCName = "message", argType = TInterface (Name {namespace = "Gst", name = "Message"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstMessage to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "event", argType = TInterface (Name {namespace = "Gst", name = "Event"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a pointer to a #GstEvent to receive\n    the contained navigation event.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_parse_event" gst_navigation_message_parse_event :: 
-    Ptr Gst.Message.Message ->              -- message : TInterface (Name {namespace = "Gst", name = "Message"})
-    Ptr (Ptr Gst.Event.Event) ->            -- event : TInterface (Name {namespace = "Gst", name = "Event"})
-    IO CInt
-
-{- |
-Parse a 'GI.GstVideo.Interfaces.Navigation.Navigation' message of type @/GST_NAVIGATION_MESSAGE_EVENT/@
-and extract contained 'GI.Gst.Structs.Event.Event'. The caller must unref the /@event@/ when done
-with it.
-
-/Since: 1.6/
--}
-navigationMessageParseEvent ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Message.Message
-    {- ^ /@message@/: A 'GI.Gst.Structs.Message.Message' to inspect. -}
-    -> m ((Bool, Gst.Event.Event))
-    {- ^ __Returns:__ 'True' if the message could be successfully parsed. 'False' if not. -}
-navigationMessageParseEvent message = liftIO $ do
-    message' <- unsafeManagedPtrGetPtr message
-    event <- allocMem :: IO (Ptr (Ptr Gst.Event.Event))
-    result <- gst_navigation_message_parse_event message' event
-    let result' = (/= 0) result
-    event' <- peek event
-    event'' <- (wrapBoxed Gst.Event.Event) event'
-    touchManagedPtr message
-    freeMem event
-    return (result', event'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::message_parse_mouse_over
--- method type : MemberFunction
--- Args : [Arg {argCName = "message", argType = TInterface (Name {namespace = "Gst", name = "Message"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstMessage to inspect.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "active", argType = TBasicType TBoolean, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A pointer to a gboolean to receive the\n    active/inactive state, or NULL.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_message_parse_mouse_over" gst_navigation_message_parse_mouse_over :: 
-    Ptr Gst.Message.Message ->              -- message : TInterface (Name {namespace = "Gst", name = "Message"})
-    Ptr CInt ->                             -- active : TBasicType TBoolean
-    IO CInt
-
-{- |
-Parse a 'GI.GstVideo.Interfaces.Navigation.Navigation' message of type @/GST_NAVIGATION_MESSAGE_MOUSE_OVER/@
-and extract the active\/inactive flag. If the mouse over event is marked
-active, it indicates that the mouse is over a clickable area.
--}
-navigationMessageParseMouseOver ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Message.Message
-    {- ^ /@message@/: A 'GI.Gst.Structs.Message.Message' to inspect. -}
-    -> m ((Bool, Bool))
-    {- ^ __Returns:__ 'True' if the message could be successfully parsed. 'False' if not. -}
-navigationMessageParseMouseOver message = liftIO $ do
-    message' <- unsafeManagedPtrGetPtr message
-    active <- allocMem :: IO (Ptr CInt)
-    result <- gst_navigation_message_parse_mouse_over message' active
-    let result' = (/= 0) result
-    active' <- peek active
-    let active'' = (/= 0) active'
-    touchManagedPtr message
-    freeMem active
-    return (result', active'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_get_type
--- method type : MemberFunction
--- Args : [Arg {argCName = "query", argType = TInterface (Name {namespace = "Gst", name = "Query"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The query to inspect", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "NavigationQueryType"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_get_type" gst_navigation_query_get_type :: 
-    Ptr Gst.Query.Query ->                  -- query : TInterface (Name {namespace = "Gst", name = "Query"})
-    IO CUInt
-
-{- |
-Inspect a 'GI.Gst.Structs.Query.Query' and return the 'GI.GstVideo.Enums.NavigationQueryType' associated with
-it if it is a 'GI.GstVideo.Interfaces.Navigation.Navigation' query.
--}
-navigationQueryGetType ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Query.Query
-    {- ^ /@query@/: The query to inspect -}
-    -> m GstVideo.Enums.NavigationQueryType
-    {- ^ __Returns:__ The 'GI.GstVideo.Enums.NavigationQueryType' of the query, or
-@/GST_NAVIGATION_QUERY_INVALID/@ -}
-navigationQueryGetType query = liftIO $ do
-    query' <- unsafeManagedPtrGetPtr query
-    result <- gst_navigation_query_get_type query'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr query
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_new_angles
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Query"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_new_angles" gst_navigation_query_new_angles :: 
-    IO (Ptr Gst.Query.Query)
-
-{- |
-Create a new 'GI.GstVideo.Interfaces.Navigation.Navigation' angles query. When executed, it will
-query the pipeline for the set of currently available angles, which may be
-greater than one in a multiangle video.
--}
-navigationQueryNewAngles ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.Query.Query
-    {- ^ __Returns:__ The new query. -}
-navigationQueryNewAngles  = liftIO $ do
-    result <- gst_navigation_query_new_angles
-    checkUnexpectedReturnNULL "navigationQueryNewAngles" result
-    result' <- (wrapBoxed Gst.Query.Query) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_new_commands
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Query"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_new_commands" gst_navigation_query_new_commands :: 
-    IO (Ptr Gst.Query.Query)
-
-{- |
-Create a new 'GI.GstVideo.Interfaces.Navigation.Navigation' commands query. When executed, it will
-query the pipeline for the set of currently available commands.
--}
-navigationQueryNewCommands ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.Query.Query
-    {- ^ __Returns:__ The new query. -}
-navigationQueryNewCommands  = liftIO $ do
-    result <- gst_navigation_query_new_commands
-    checkUnexpectedReturnNULL "navigationQueryNewCommands" result
-    result' <- (wrapBoxed Gst.Query.Query) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_parse_angles
--- method type : MemberFunction
--- Args : [Arg {argCName = "query", argType = TInterface (Name {namespace = "Gst", name = "Query"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstQuery", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cur_angle", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a #guint into which to store the\n    currently selected angle value from the query, or NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "n_angles", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Pointer to a #guint into which to store the\n    number of angles value from the query, or NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_parse_angles" gst_navigation_query_parse_angles :: 
-    Ptr Gst.Query.Query ->                  -- query : TInterface (Name {namespace = "Gst", name = "Query"})
-    Ptr Word32 ->                           -- cur_angle : TBasicType TUInt
-    Ptr Word32 ->                           -- n_angles : TBasicType TUInt
-    IO CInt
-
-{- |
-Parse the current angle number in the 'GI.GstVideo.Interfaces.Navigation.Navigation' angles /@query@/ into the
-@/guint/@ pointed to by the /@curAngle@/ variable, and the number of available
-angles into the @/guint/@ pointed to by the /@nAngles@/ variable.
--}
-navigationQueryParseAngles ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Query.Query
-    {- ^ /@query@/: a 'GI.Gst.Structs.Query.Query' -}
-    -> m ((Bool, Word32, Word32))
-    {- ^ __Returns:__ 'True' if the query could be successfully parsed. 'False' if not. -}
-navigationQueryParseAngles query = liftIO $ do
-    query' <- unsafeManagedPtrGetPtr query
-    curAngle <- allocMem :: IO (Ptr Word32)
-    nAngles <- allocMem :: IO (Ptr Word32)
-    result <- gst_navigation_query_parse_angles query' curAngle nAngles
-    let result' = (/= 0) result
-    curAngle' <- peek curAngle
-    nAngles' <- peek nAngles
-    touchManagedPtr query
-    freeMem curAngle
-    freeMem nAngles
-    return (result', curAngle', nAngles')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_parse_commands_length
--- method type : MemberFunction
--- Args : [Arg {argCName = "query", argType = TInterface (Name {namespace = "Gst", name = "Query"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstQuery", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_cmds", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of commands in this query.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_parse_commands_length" gst_navigation_query_parse_commands_length :: 
-    Ptr Gst.Query.Query ->                  -- query : TInterface (Name {namespace = "Gst", name = "Query"})
-    Ptr Word32 ->                           -- n_cmds : TBasicType TUInt
-    IO CInt
-
-{- |
-Parse the number of commands in the 'GI.GstVideo.Interfaces.Navigation.Navigation' commands /@query@/.
--}
-navigationQueryParseCommandsLength ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Query.Query
-    {- ^ /@query@/: a 'GI.Gst.Structs.Query.Query' -}
-    -> m ((Bool, Word32))
-    {- ^ __Returns:__ 'True' if the query could be successfully parsed. 'False' if not. -}
-navigationQueryParseCommandsLength query = liftIO $ do
-    query' <- unsafeManagedPtrGetPtr query
-    nCmds <- allocMem :: IO (Ptr Word32)
-    result <- gst_navigation_query_parse_commands_length query' nCmds
-    let result' = (/= 0) result
-    nCmds' <- peek nCmds
-    touchManagedPtr query
-    freeMem nCmds
-    return (result', nCmds')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_parse_commands_nth
--- method type : MemberFunction
--- Args : [Arg {argCName = "query", argType = TInterface (Name {namespace = "Gst", name = "Query"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstQuery", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "nth", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the nth command to retrieve.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cmd", argType = TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a pointer to store the nth command into.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_parse_commands_nth" gst_navigation_query_parse_commands_nth :: 
-    Ptr Gst.Query.Query ->                  -- query : TInterface (Name {namespace = "Gst", name = "Query"})
-    Word32 ->                               -- nth : TBasicType TUInt
-    Ptr CUInt ->                            -- cmd : TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"})
-    IO CInt
-
-{- |
-Parse the 'GI.GstVideo.Interfaces.Navigation.Navigation' command query and retrieve the /@nth@/ command from
-it into /@cmd@/. If the list contains less elements than /@nth@/, /@cmd@/ will be
-set to @/GST_NAVIGATION_COMMAND_INVALID/@.
--}
-navigationQueryParseCommandsNth ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Query.Query
-    {- ^ /@query@/: a 'GI.Gst.Structs.Query.Query' -}
-    -> Word32
-    {- ^ /@nth@/: the nth command to retrieve. -}
-    -> m ((Bool, GstVideo.Enums.NavigationCommand))
-    {- ^ __Returns:__ 'True' if the query could be successfully parsed. 'False' if not. -}
-navigationQueryParseCommandsNth query nth = liftIO $ do
-    query' <- unsafeManagedPtrGetPtr query
-    cmd <- allocMem :: IO (Ptr CUInt)
-    result <- gst_navigation_query_parse_commands_nth query' nth cmd
-    let result' = (/= 0) result
-    cmd' <- peek cmd
-    let cmd'' = (toEnum . fromIntegral) cmd'
-    touchManagedPtr query
-    freeMem cmd
-    return (result', cmd'')
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_set_angles
--- method type : MemberFunction
--- Args : [Arg {argCName = "query", argType = TInterface (Name {namespace = "Gst", name = "Query"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstQuery", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cur_angle", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the current viewing angle to set.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_angles", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of viewing angles to set.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_set_angles" gst_navigation_query_set_angles :: 
-    Ptr Gst.Query.Query ->                  -- query : TInterface (Name {namespace = "Gst", name = "Query"})
-    Word32 ->                               -- cur_angle : TBasicType TUInt
-    Word32 ->                               -- n_angles : TBasicType TUInt
-    IO ()
-
-{- |
-Set the 'GI.GstVideo.Interfaces.Navigation.Navigation' angles query result field in /@query@/.
--}
-navigationQuerySetAngles ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Query.Query
-    {- ^ /@query@/: a 'GI.Gst.Structs.Query.Query' -}
-    -> Word32
-    {- ^ /@curAngle@/: the current viewing angle to set. -}
-    -> Word32
-    {- ^ /@nAngles@/: the number of viewing angles to set. -}
-    -> m ()
-navigationQuerySetAngles query curAngle nAngles = liftIO $ do
-    query' <- unsafeManagedPtrGetPtr query
-    gst_navigation_query_set_angles query' curAngle nAngles
-    touchManagedPtr query
-    return ()
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method Navigation::query_set_commandsv
--- method type : MemberFunction
--- Args : [Arg {argCName = "query", argType = TInterface (Name {namespace = "Gst", name = "Query"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstQuery", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_cmds", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of commands to set.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cmds", argType = TCArray False (-1) 1 (TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"})), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "An array containing @n_cmds\n    @GstNavigationCommand values.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : [Arg {argCName = "n_cmds", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of commands to set.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_navigation_query_set_commandsv" gst_navigation_query_set_commandsv :: 
-    Ptr Gst.Query.Query ->                  -- query : TInterface (Name {namespace = "Gst", name = "Query"})
-    Int32 ->                                -- n_cmds : TBasicType TInt
-    Ptr CUInt ->                            -- cmds : TCArray False (-1) 1 (TInterface (Name {namespace = "GstVideo", name = "NavigationCommand"}))
-    IO ()
-
-{- |
-Set the 'GI.GstVideo.Interfaces.Navigation.Navigation' command query result fields in /@query@/. The number
-of commands passed must be equal to /@nCommands@/.
--}
-navigationQuerySetCommandsv ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Query.Query
-    {- ^ /@query@/: a 'GI.Gst.Structs.Query.Query' -}
-    -> [GstVideo.Enums.NavigationCommand]
-    {- ^ /@cmds@/: An array containing /@nCmds@/
-    /@gstNavigationCommand@/ values. -}
-    -> m ()
-navigationQuerySetCommandsv query cmds = liftIO $ do
-    let nCmds = fromIntegral $ length cmds
-    query' <- unsafeManagedPtrGetPtr query
-    let cmds' = map (fromIntegral . fromEnum) cmds
-    cmds'' <- packStorableArray cmds'
-    gst_navigation_query_set_commandsv query' nCmds cmds''
-    touchManagedPtr query
-    freeMem cmds''
-    return ()
-
-#if ENABLE_OVERLOADING
-#endif
-
-
diff --git a/GI/GstVideo/Interfaces/Navigation.hs-boot b/GI/GstVideo/Interfaces/Navigation.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/Navigation.hs-boot
+++ /dev/null
@@ -1,39 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Interfaces.Navigation 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype Navigation = Navigation (ManagedPtr Navigation)
-class ManagedPtrNewtype a => IsNavigation a
-instance WrappedPtr Navigation where
-#if ENABLE_OVERLOADING
-data NavigationSendCommandMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data NavigationSendEventMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data NavigationSendKeyEventMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data NavigationSendMouseEventMethodInfo
-#endif
diff --git a/GI/GstVideo/Interfaces/VideoDirection.hs b/GI/GstVideo/Interfaces/VideoDirection.hs
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/VideoDirection.hs
+++ /dev/null
@@ -1,194 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-The interface allows unified access to control flipping and rotation
-operations of video-sources or operators.
-
-/Since: 1.10/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Interfaces.VideoDirection
-    ( 
-
--- * Exported types
-    VideoDirection(..)                      ,
-    noVideoDirection                        ,
-    IsVideoDirection                        ,
-    toVideoDirection                        ,
-
-
- -- * Properties
--- ** videoDirection #attr:videoDirection#
-{- | /No description available in the introspection data./
--}
-#if ENABLE_OVERLOADING
-    VideoDirectionVideoDirectionPropertyInfo,
-#endif
-    constructVideoDirectionVideoDirection   ,
-    getVideoDirectionVideoDirection         ,
-    setVideoDirectionVideoDirection         ,
-#if ENABLE_OVERLOADING
-    videoDirectionVideoDirection            ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- interface VideoDirection 
--- | Memory-managed wrapper type.
-newtype VideoDirection = VideoDirection (ManagedPtr VideoDirection)
--- | A convenience alias for `Nothing` :: `Maybe` `VideoDirection`.
-noVideoDirection :: Maybe VideoDirection
-noVideoDirection = Nothing
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoDirection = VideoDirectionSignalList
-type VideoDirectionSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-
-#endif
-
-foreign import ccall "gst_video_direction_get_type"
-    c_gst_video_direction_get_type :: IO GType
-
-instance GObject VideoDirection where
-    gobjectType = c_gst_video_direction_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoDirection`, for instance with `toVideoDirection`.
-class (GObject o, O.IsDescendantOf VideoDirection o) => IsVideoDirection o
-instance (GObject o, O.IsDescendantOf VideoDirection o) => IsVideoDirection o
-
-instance O.HasParentTypes VideoDirection
-type instance O.ParentTypes VideoDirection = '[GObject.Object.Object]
-
--- | Cast to `VideoDirection`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoDirection :: (MonadIO m, IsVideoDirection o) => o -> m VideoDirection
-toVideoDirection = liftIO . unsafeCastTo VideoDirection
-
--- VVV Prop "video-direction"
-   -- Type: TInterface (Name {namespace = "GstVideo", name = "VideoOrientationMethod"})
-   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]
-   -- Nullable: (Nothing,Nothing)
-
-{- |
-Get the value of the “@video-direction@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoDirection #videoDirection
-@
--}
-getVideoDirectionVideoDirection :: (MonadIO m, IsVideoDirection o) => o -> m GstVideo.Enums.VideoOrientationMethod
-getVideoDirectionVideoDirection obj = liftIO $ B.Properties.getObjectPropertyEnum obj "video-direction"
-
-{- |
-Set the value of the “@video-direction@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoDirection [ #videoDirection 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoDirectionVideoDirection :: (MonadIO m, IsVideoDirection o) => o -> GstVideo.Enums.VideoOrientationMethod -> m ()
-setVideoDirectionVideoDirection obj val = liftIO $ B.Properties.setObjectPropertyEnum obj "video-direction" val
-
-{- |
-Construct a `GValueConstruct` with valid value for the “@video-direction@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
--}
-constructVideoDirectionVideoDirection :: (IsVideoDirection o) => GstVideo.Enums.VideoOrientationMethod -> IO (GValueConstruct o)
-constructVideoDirectionVideoDirection val = B.Properties.constructObjectPropertyEnum "video-direction" val
-
-#if ENABLE_OVERLOADING
-data VideoDirectionVideoDirectionPropertyInfo
-instance AttrInfo VideoDirectionVideoDirectionPropertyInfo where
-    type AttrAllowedOps VideoDirectionVideoDirectionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
-    type AttrSetTypeConstraint VideoDirectionVideoDirectionPropertyInfo = (~) GstVideo.Enums.VideoOrientationMethod
-    type AttrBaseTypeConstraint VideoDirectionVideoDirectionPropertyInfo = IsVideoDirection
-    type AttrGetType VideoDirectionVideoDirectionPropertyInfo = GstVideo.Enums.VideoOrientationMethod
-    type AttrLabel VideoDirectionVideoDirectionPropertyInfo = "video-direction"
-    type AttrOrigin VideoDirectionVideoDirectionPropertyInfo = VideoDirection
-    attrGet _ = getVideoDirectionVideoDirection
-    attrSet _ = setVideoDirectionVideoDirection
-    attrConstruct _ = constructVideoDirectionVideoDirection
-    attrClear _ = undefined
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoDirection
-type instance O.AttributeList VideoDirection = VideoDirectionAttributeList
-type VideoDirectionAttributeList = ('[ '("videoDirection", VideoDirectionVideoDirectionPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-videoDirectionVideoDirection :: AttrLabelProxy "videoDirection"
-videoDirectionVideoDirection = AttrLabelProxy
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoDirectionMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoDirectionMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoDirectionMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoDirectionMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoDirectionMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoDirectionMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoDirectionMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoDirectionMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoDirectionMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoDirectionMethod "ref" o = GObject.Object.ObjectRefMethodInfo
-    ResolveVideoDirectionMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoDirectionMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoDirectionMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoDirectionMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoDirectionMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoDirectionMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
-    ResolveVideoDirectionMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoDirectionMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoDirectionMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoDirectionMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoDirectionMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoDirectionMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoDirectionMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoDirectionMethod t VideoDirection, O.MethodInfo info VideoDirection p) => OL.IsLabel t (VideoDirection -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Interfaces/VideoDirection.hs-boot b/GI/GstVideo/Interfaces/VideoDirection.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/VideoDirection.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Interfaces.VideoDirection 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoDirection = VideoDirection (ManagedPtr VideoDirection)
-instance GObject VideoDirection where
-class (GObject o, O.IsDescendantOf VideoDirection o) => IsVideoDirection o
-instance (GObject o, O.IsDescendantOf VideoDirection o) => IsVideoDirection o
-instance O.HasParentTypes VideoDirection
-#if ENABLE_OVERLOADING
-data VideoDirectionVideoDirectionPropertyInfo
-#endif
diff --git a/GI/GstVideo/Interfaces/VideoOrientation.hs b/GI/GstVideo/Interfaces/VideoOrientation.hs
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/VideoOrientation.hs
+++ /dev/null
@@ -1,470 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-The interface allows unified access to control flipping and autocenter
-operation of video-sources or operators.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Interfaces.VideoOrientation
-    ( 
-
--- * Exported types
-    VideoOrientation(..)                    ,
-    noVideoOrientation                      ,
-    IsVideoOrientation                      ,
-
-
- -- * Methods
--- ** getHcenter #method:getHcenter#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationGetHcenterMethodInfo    ,
-#endif
-    videoOrientationGetHcenter              ,
-
-
--- ** getHflip #method:getHflip#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationGetHflipMethodInfo      ,
-#endif
-    videoOrientationGetHflip                ,
-
-
--- ** getVcenter #method:getVcenter#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationGetVcenterMethodInfo    ,
-#endif
-    videoOrientationGetVcenter              ,
-
-
--- ** getVflip #method:getVflip#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationGetVflipMethodInfo      ,
-#endif
-    videoOrientationGetVflip                ,
-
-
--- ** setHcenter #method:setHcenter#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationSetHcenterMethodInfo    ,
-#endif
-    videoOrientationSetHcenter              ,
-
-
--- ** setHflip #method:setHflip#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationSetHflipMethodInfo      ,
-#endif
-    videoOrientationSetHflip                ,
-
-
--- ** setVcenter #method:setVcenter#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationSetVcenterMethodInfo    ,
-#endif
-    videoOrientationSetVcenter              ,
-
-
--- ** setVflip #method:setVflip#
-
-#if ENABLE_OVERLOADING
-    VideoOrientationSetVflipMethodInfo      ,
-#endif
-    videoOrientationSetVflip                ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- interface VideoOrientation 
--- | Memory-managed wrapper type.
-newtype VideoOrientation = VideoOrientation (ManagedPtr VideoOrientation)
--- | A convenience alias for `Nothing` :: `Maybe` `VideoOrientation`.
-noVideoOrientation :: Maybe VideoOrientation
-noVideoOrientation = Nothing
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoOrientation = VideoOrientationSignalList
-type VideoOrientationSignalList = ('[ ] :: [(Symbol, *)])
-
-#endif
-
--- | Type class for types which implement `VideoOrientation`.
-class ManagedPtrNewtype a => IsVideoOrientation a
-instance IsVideoOrientation VideoOrientation
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr VideoOrientation where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoOrientationMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoOrientationMethod "getHcenter" o = VideoOrientationGetHcenterMethodInfo
-    ResolveVideoOrientationMethod "getHflip" o = VideoOrientationGetHflipMethodInfo
-    ResolveVideoOrientationMethod "getVcenter" o = VideoOrientationGetVcenterMethodInfo
-    ResolveVideoOrientationMethod "getVflip" o = VideoOrientationGetVflipMethodInfo
-    ResolveVideoOrientationMethod "setHcenter" o = VideoOrientationSetHcenterMethodInfo
-    ResolveVideoOrientationMethod "setHflip" o = VideoOrientationSetHflipMethodInfo
-    ResolveVideoOrientationMethod "setVcenter" o = VideoOrientationSetVcenterMethodInfo
-    ResolveVideoOrientationMethod "setVflip" o = VideoOrientationSetVflipMethodInfo
-    ResolveVideoOrientationMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoOrientationMethod t VideoOrientation, O.MethodInfo info VideoOrientation p) => OL.IsLabel t (VideoOrientation -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- method VideoOrientation::get_hcenter
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the result", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_get_hcenter" gst_video_orientation_get_hcenter :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    Ptr Int32 ->                            -- center : TBasicType TInt
-    IO CInt
-
-{- |
-Get the horizontal centering offset from the given object.
--}
-videoOrientationGetHcenter ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> m ((Bool, Int32))
-    {- ^ __Returns:__ 'True' in case the element supports centering -}
-videoOrientationGetHcenter videoOrientation = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    center <- allocMem :: IO (Ptr Int32)
-    result <- gst_video_orientation_get_hcenter videoOrientation' center
-    let result' = (/= 0) result
-    center' <- peek center
-    touchManagedPtr videoOrientation
-    freeMem center
-    return (result', center')
-
-#if ENABLE_OVERLOADING
-data VideoOrientationGetHcenterMethodInfo
-instance (signature ~ (m ((Bool, Int32))), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationGetHcenterMethodInfo a signature where
-    overloadedMethod _ = videoOrientationGetHcenter
-
-#endif
-
--- method VideoOrientation::get_hflip
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the result", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_get_hflip" gst_video_orientation_get_hflip :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    Ptr CInt ->                             -- flip : TBasicType TBoolean
-    IO CInt
-
-{- |
-Get the horizontal flipping state ('True' for flipped) from the given object.
--}
-videoOrientationGetHflip ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> m ((Bool, Bool))
-    {- ^ __Returns:__ 'True' in case the element supports flipping -}
-videoOrientationGetHflip videoOrientation = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    flip <- allocMem :: IO (Ptr CInt)
-    result <- gst_video_orientation_get_hflip videoOrientation' flip
-    let result' = (/= 0) result
-    flip' <- peek flip
-    let flip'' = (/= 0) flip'
-    touchManagedPtr videoOrientation
-    freeMem flip
-    return (result', flip'')
-
-#if ENABLE_OVERLOADING
-data VideoOrientationGetHflipMethodInfo
-instance (signature ~ (m ((Bool, Bool))), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationGetHflipMethodInfo a signature where
-    overloadedMethod _ = videoOrientationGetHflip
-
-#endif
-
--- method VideoOrientation::get_vcenter
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the result", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_get_vcenter" gst_video_orientation_get_vcenter :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    Ptr Int32 ->                            -- center : TBasicType TInt
-    IO CInt
-
-{- |
-Get the vertical centering offset from the given object.
--}
-videoOrientationGetVcenter ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> m ((Bool, Int32))
-    {- ^ __Returns:__ 'True' in case the element supports centering -}
-videoOrientationGetVcenter videoOrientation = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    center <- allocMem :: IO (Ptr Int32)
-    result <- gst_video_orientation_get_vcenter videoOrientation' center
-    let result' = (/= 0) result
-    center' <- peek center
-    touchManagedPtr videoOrientation
-    freeMem center
-    return (result', center')
-
-#if ENABLE_OVERLOADING
-data VideoOrientationGetVcenterMethodInfo
-instance (signature ~ (m ((Bool, Int32))), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationGetVcenterMethodInfo a signature where
-    overloadedMethod _ = videoOrientationGetVcenter
-
-#endif
-
--- method VideoOrientation::get_vflip
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the result", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_get_vflip" gst_video_orientation_get_vflip :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    Ptr CInt ->                             -- flip : TBasicType TBoolean
-    IO CInt
-
-{- |
-Get the vertical flipping state ('True' for flipped) from the given object.
--}
-videoOrientationGetVflip ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> m ((Bool, Bool))
-    {- ^ __Returns:__ 'True' in case the element supports flipping -}
-videoOrientationGetVflip videoOrientation = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    flip <- allocMem :: IO (Ptr CInt)
-    result <- gst_video_orientation_get_vflip videoOrientation' flip
-    let result' = (/= 0) result
-    flip' <- peek flip
-    let flip'' = (/= 0) flip'
-    touchManagedPtr videoOrientation
-    freeMem flip
-    return (result', flip'')
-
-#if ENABLE_OVERLOADING
-data VideoOrientationGetVflipMethodInfo
-instance (signature ~ (m ((Bool, Bool))), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationGetVflipMethodInfo a signature where
-    overloadedMethod _ = videoOrientationGetVflip
-
-#endif
-
--- method VideoOrientation::set_hcenter
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "centering offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_set_hcenter" gst_video_orientation_set_hcenter :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    Int32 ->                                -- center : TBasicType TInt
-    IO CInt
-
-{- |
-Set the horizontal centering offset for the given object.
--}
-videoOrientationSetHcenter ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> Int32
-    {- ^ /@center@/: centering offset -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' in case the element supports centering -}
-videoOrientationSetHcenter videoOrientation center = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    result <- gst_video_orientation_set_hcenter videoOrientation' center
-    let result' = (/= 0) result
-    touchManagedPtr videoOrientation
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOrientationSetHcenterMethodInfo
-instance (signature ~ (Int32 -> m Bool), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationSetHcenterMethodInfo a signature where
-    overloadedMethod _ = videoOrientationSetHcenter
-
-#endif
-
--- method VideoOrientation::set_hflip
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "use flipping", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_set_hflip" gst_video_orientation_set_hflip :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    CInt ->                                 -- flip : TBasicType TBoolean
-    IO CInt
-
-{- |
-Set the horizontal flipping state ('True' for flipped) for the given object.
--}
-videoOrientationSetHflip ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> Bool
-    {- ^ /@flip@/: use flipping -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' in case the element supports flipping -}
-videoOrientationSetHflip videoOrientation flip = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    let flip' = (fromIntegral . fromEnum) flip
-    result <- gst_video_orientation_set_hflip videoOrientation' flip'
-    let result' = (/= 0) result
-    touchManagedPtr videoOrientation
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOrientationSetHflipMethodInfo
-instance (signature ~ (Bool -> m Bool), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationSetHflipMethodInfo a signature where
-    overloadedMethod _ = videoOrientationSetHflip
-
-#endif
-
--- method VideoOrientation::set_vcenter
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "centering offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_set_vcenter" gst_video_orientation_set_vcenter :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    Int32 ->                                -- center : TBasicType TInt
-    IO CInt
-
-{- |
-Set the vertical centering offset for the given object.
--}
-videoOrientationSetVcenter ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> Int32
-    {- ^ /@center@/: centering offset -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' in case the element supports centering -}
-videoOrientationSetVcenter videoOrientation center = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    result <- gst_video_orientation_set_vcenter videoOrientation' center
-    let result' = (/= 0) result
-    touchManagedPtr videoOrientation
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOrientationSetVcenterMethodInfo
-instance (signature ~ (Int32 -> m Bool), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationSetVcenterMethodInfo a signature where
-    overloadedMethod _ = videoOrientationSetVcenter
-
-#endif
-
--- method VideoOrientation::set_vflip
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "video_orientation", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoOrientation interface of a #GstElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "use flipping", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_orientation_set_vflip" gst_video_orientation_set_vflip :: 
-    Ptr VideoOrientation ->                 -- video_orientation : TInterface (Name {namespace = "GstVideo", name = "VideoOrientation"})
-    CInt ->                                 -- flip : TBasicType TBoolean
-    IO CInt
-
-{- |
-Set the vertical flipping state ('True' for flipped) for the given object.
--}
-videoOrientationSetVflip ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOrientation a) =>
-    a
-    {- ^ /@videoOrientation@/: 'GI.GstVideo.Interfaces.VideoOrientation.VideoOrientation' interface of a 'GI.Gst.Objects.Element.Element' -}
-    -> Bool
-    {- ^ /@flip@/: use flipping -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' in case the element supports flipping -}
-videoOrientationSetVflip videoOrientation flip = liftIO $ do
-    videoOrientation' <- unsafeManagedPtrCastPtr videoOrientation
-    let flip' = (fromIntegral . fromEnum) flip
-    result <- gst_video_orientation_set_vflip videoOrientation' flip'
-    let result' = (/= 0) result
-    touchManagedPtr videoOrientation
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOrientationSetVflipMethodInfo
-instance (signature ~ (Bool -> m Bool), MonadIO m, IsVideoOrientation a) => O.MethodInfo VideoOrientationSetVflipMethodInfo a signature where
-    overloadedMethod _ = videoOrientationSetVflip
-
-#endif
-
-
diff --git a/GI/GstVideo/Interfaces/VideoOrientation.hs-boot b/GI/GstVideo/Interfaces/VideoOrientation.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/VideoOrientation.hs-boot
+++ /dev/null
@@ -1,51 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Interfaces.VideoOrientation 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoOrientation = VideoOrientation (ManagedPtr VideoOrientation)
-class ManagedPtrNewtype a => IsVideoOrientation a
-instance WrappedPtr VideoOrientation where
-#if ENABLE_OVERLOADING
-data VideoOrientationGetHcenterMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationGetHflipMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationGetVcenterMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationGetVflipMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationSetHcenterMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationSetHflipMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationSetVcenterMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOrientationSetVflipMethodInfo
-#endif
diff --git a/GI/GstVideo/Interfaces/VideoOverlay.hs b/GI/GstVideo/Interfaces/VideoOverlay.hs
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/VideoOverlay.hs
+++ /dev/null
@@ -1,695 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-The 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' interface is used for 2 main purposes :
-
-* To get a grab on the Window where the video sink element is going to render.
-  This is achieved by either being informed about the Window identifier that
-  the video sink element generated, or by forcing the video sink element to use
-  a specific Window identifier for rendering.
-* To force a redrawing of the latest video frame the video sink element
-  displayed on the Window. Indeed if the 'GI.Gst.Objects.Pipeline.Pipeline' is in @/GST_STATE_PAUSED/@
-  state, moving the Window around will damage its content. Application
-  developers will want to handle the Expose events themselves and force the
-  video sink element to refresh the Window\'s content.
-
-Using the Window created by the video sink is probably the simplest scenario,
-in some cases, though, it might not be flexible enough for application
-developers if they need to catch events such as mouse moves and button
-clicks.
-
-Setting a specific Window identifier on the video sink element is the most
-flexible solution but it has some issues. Indeed the application needs to set
-its Window identifier at the right time to avoid internal Window creation
-from the video sink element. To solve this issue a 'GI.Gst.Structs.Message.Message' is posted on
-the bus to inform the application that it should set the Window identifier
-immediately. Here is an example on how to do that correctly:
->
->static GstBusSyncReply
->create_window (GstBus * bus, GstMessage * message, GstPipeline * pipeline)
->{
-> // ignore anything but 'prepare-window-handle' element messages
-> if (!gst_is_video_overlay_prepare_window_handle_message (message))
->   return GST_BUS_PASS;
->
-> win = XCreateSimpleWindow (disp, root, 0, 0, 320, 240, 0, 0, 0);
->
-> XSetWindowBackgroundPixmap (disp, win, None);
->
-> XMapRaised (disp, win);
->
-> XSync (disp, FALSE);
->
-> gst_video_overlay_set_window_handle (GST_VIDEO_OVERLAY (GST_MESSAGE_SRC (message)),
->     win);
->
-> gst_message_unref (message);
->
-> return GST_BUS_DROP;
->}
->...
->int
->main (int argc, char **argv)
->{
->...
-> bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
-> gst_bus_set_sync_handler (bus, (GstBusSyncHandler) create_window, pipeline,
->        NULL);
->...
->}
-
-
-== Two basic usage scenarios
-
-There are two basic usage scenarios: in the simplest case, the application
-uses @/playbin/@ or @/plasink/@ or knows exactly what particular element is used
-for video output, which is usually the case when the application creates
-the videosink to use (e.g. @/xvimagesink/@, @/ximagesink/@, etc.) itself; in this
-case, the application can just create the videosink element, create and
-realize the window to render the video on and then
-call 'GI.GstVideo.Interfaces.VideoOverlay.videoOverlaySetWindowHandle' directly with the XID or native
-window handle, before starting up the pipeline.
-As @/playbin/@ and @/playsink/@ implement the video overlay interface and proxy
-it transparently to the actual video sink even if it is created later, this
-case also applies when using these elements.
-
-In the other and more common case, the application does not know in advance
-what GStreamer video sink element will be used for video output. This is
-usually the case when an element such as @/autovideosink/@ is used.
-In this case, the video sink element itself is created
-asynchronously from a GStreamer streaming thread some time after the
-pipeline has been started up. When that happens, however, the video sink
-will need to know right then whether to render onto an already existing
-application window or whether to create its own window. This is when it
-posts a prepare-window-handle message, and that is also why this message needs
-to be handled in a sync bus handler which will be called from the streaming
-thread directly (because the video sink will need an answer right then).
-
-As response to the prepare-window-handle element message in the bus sync
-handler, the application may use 'GI.GstVideo.Interfaces.VideoOverlay.videoOverlaySetWindowHandle' to tell
-the video sink to render onto an existing window surface. At this point the
-application should already have obtained the window handle \/ XID, so it
-just needs to set it. It is generally not advisable to call any GUI toolkit
-functions or window system functions from the streaming thread in which the
-prepare-window-handle message is handled, because most GUI toolkits and
-windowing systems are not thread-safe at all and a lot of care would be
-required to co-ordinate the toolkit and window system calls of the
-different threads (Gtk+ users please note: prior to Gtk+ 2.18
-@/GDK_WINDOW_XID()/@ was just a simple structure access, so generally fine to do
-within the bus sync handler; this macro was changed to a function call in
-Gtk+ 2.18 and later, which is likely to cause problems when called from a
-sync handler; see below for a better approach without @/GDK_WINDOW_XID()/@
-used in the callback).
-
-== GstVideoOverlay and Gtk+
-
->
->#include &lt;gst/video/videooverlay.h&gt;
->#include &lt;gtk/gtk.h&gt;
->#ifdef GDK_WINDOWING_X11
->#include &lt;gdk/gdkx.h&gt;  // for GDK_WINDOW_XID
->#endif
->#ifdef GDK_WINDOWING_WIN32
->#include &lt;gdk/gdkwin32.h&gt;  // for GDK_WINDOW_HWND
->#endif
->...
->static guintptr video_window_handle = 0;
->...
->static GstBusSyncReply
->bus_sync_handler (GstBus * bus, GstMessage * message, gpointer user_data)
->{
-> // ignore anything but 'prepare-window-handle' element messages
-> if (!gst_is_video_overlay_prepare_window_handle_message (message))
->   return GST_BUS_PASS;
->
-> if (video_window_handle != 0) {
->   GstVideoOverlay *overlay;
->
->   // GST_MESSAGE_SRC (message) will be the video sink element
->   overlay = GST_VIDEO_OVERLAY (GST_MESSAGE_SRC (message));
->   gst_video_overlay_set_window_handle (overlay, video_window_handle);
-> } else {
->   g_warning ("Should have obtained video_window_handle by now!");
-> }
->
-> gst_message_unref (message);
-> return GST_BUS_DROP;
->}
->...
->static void
->video_widget_realize_cb (GtkWidget * widget, gpointer data)
->{
->#if GTK_CHECK_VERSION(2,18,0)
->  // Tell Gtk+/Gdk to create a native window for this widget instead of
->  // drawing onto the parent widget.
->  // This is here just for pedagogical purposes, GDK_WINDOW_XID will call
->  // it as well in newer Gtk versions
->  if (!gdk_window_ensure_native (widget->window))
->    g_error ("Couldn't create native window needed for GstVideoOverlay!");
->#endif
->
->#ifdef GDK_WINDOWING_X11
->  {
->    gulong xid = GDK_WINDOW_XID (gtk_widget_get_window (video_window));
->    video_window_handle = xid;
->  }
->#endif
->#ifdef GDK_WINDOWING_WIN32
->  {
->    HWND wnd = GDK_WINDOW_HWND (gtk_widget_get_window (video_window));
->    video_window_handle = (guintptr) wnd;
->  }
->#endif
->}
->...
->int
->main (int argc, char **argv)
->{
->  GtkWidget *video_window;
->  GtkWidget *app_window;
->  ...
->  app_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
->  ...
->  video_window = gtk_drawing_area_new ();
->  g_signal_connect (video_window, "realize",
->      G_CALLBACK (video_widget_realize_cb), NULL);
->  gtk_widget_set_double_buffered (video_window, FALSE);
->  ...
->  // usually the video_window will not be directly embedded into the
->  // application window like this, but there will be many other widgets
->  // and the video window will be embedded in one of them instead
->  gtk_container_add (GTK_CONTAINER (ap_window), video_window);
->  ...
->  // show the GUI
->  gtk_widget_show_all (app_window);
->
->  // realize window now so that the video window gets created and we can
->  // obtain its XID/HWND before the pipeline is started up and the videosink
->  // asks for the XID/HWND of the window to render onto
->  gtk_widget_realize (video_window);
->
->  // we should have the XID/HWND now
->  g_assert (video_window_handle != 0);
->  ...
->  // set up sync handler for setting the xid once the pipeline is started
->  bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
->  gst_bus_set_sync_handler (bus, (GstBusSyncHandler) bus_sync_handler, NULL,
->      NULL);
->  gst_object_unref (bus);
->  ...
->  gst_element_set_state (pipeline, GST_STATE_PLAYING);
->  ...
->}
-
-
-== GstVideoOverlay and Qt
-
->
->#include &lt;glib.h&gt;
->#include &lt;gst/gst.h&gt;
->#include &lt;gst/video/videooverlay.h&gt;
->
->#include &lt;QApplication&gt;
->#include &lt;QTimer&gt;
->#include &lt;QWidget&gt;
->
->int main(int argc, char *argv[])
->{
->  if (!g_thread_supported ())
->    g_thread_init (NULL);
->
->  gst_init (&argc, &argv);
->  QApplication app(argc, argv);
->  app.connect(&app, SIGNAL(lastWindowClosed()), &app, SLOT(quit ()));
->
->  // prepare the pipeline
->
->  GstElement *pipeline = gst_pipeline_new ("xvoverlay");
->  GstElement *src = gst_element_factory_make ("videotestsrc", NULL);
->  GstElement *sink = gst_element_factory_make ("xvimagesink", NULL);
->  gst_bin_add_many (GST_BIN (pipeline), src, sink, NULL);
->  gst_element_link (src, sink);
->
->  // prepare the ui
->
->  QWidget window;
->  window.resize(320, 240);
->  window.show();
->
->  WId xwinid = window.winId();
->  gst_video_overlay_set_window_handle (GST_VIDEO_OVERLAY (sink), xwinid);
->
->  // run the pipeline
->
->  GstStateChangeReturn sret = gst_element_set_state (pipeline,
->      GST_STATE_PLAYING);
->  if (sret == GST_STATE_CHANGE_FAILURE) {
->    gst_element_set_state (pipeline, GST_STATE_NULL);
->    gst_object_unref (pipeline);
->    // Exit application
->    QTimer::singleShot(0, QApplication::activeWindow(), SLOT(quit()));
->  }
->
->  int ret = app.exec();
->
->  window.hide();
->  gst_element_set_state (pipeline, GST_STATE_NULL);
->  gst_object_unref (pipeline);
->
->  return ret;
->}
-
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Interfaces.VideoOverlay
-    ( 
-
--- * Exported types
-    VideoOverlay(..)                        ,
-    noVideoOverlay                          ,
-    IsVideoOverlay                          ,
-
-
- -- * Methods
--- ** expose #method:expose#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayExposeMethodInfo            ,
-#endif
-    videoOverlayExpose                      ,
-
-
--- ** gotWindowHandle #method:gotWindowHandle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayGotWindowHandleMethodInfo   ,
-#endif
-    videoOverlayGotWindowHandle             ,
-
-
--- ** handleEvents #method:handleEvents#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayHandleEventsMethodInfo      ,
-#endif
-    videoOverlayHandleEvents                ,
-
-
--- ** prepareWindowHandle #method:prepareWindowHandle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayPrepareWindowHandleMethodInfo,
-#endif
-    videoOverlayPrepareWindowHandle         ,
-
-
--- ** setProperty #method:setProperty#
-
-    videoOverlaySetProperty                 ,
-
-
--- ** setRenderRectangle #method:setRenderRectangle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlaySetRenderRectangleMethodInfo,
-#endif
-    videoOverlaySetRenderRectangle          ,
-
-
--- ** setWindowHandle #method:setWindowHandle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlaySetWindowHandleMethodInfo   ,
-#endif
-    videoOverlaySetWindowHandle             ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-
--- interface VideoOverlay 
--- | Memory-managed wrapper type.
-newtype VideoOverlay = VideoOverlay (ManagedPtr VideoOverlay)
--- | A convenience alias for `Nothing` :: `Maybe` `VideoOverlay`.
-noVideoOverlay :: Maybe VideoOverlay
-noVideoOverlay = Nothing
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoOverlay = VideoOverlaySignalList
-type VideoOverlaySignalList = ('[ ] :: [(Symbol, *)])
-
-#endif
-
--- | Type class for types which implement `VideoOverlay`.
-class ManagedPtrNewtype a => IsVideoOverlay a
-instance IsVideoOverlay VideoOverlay
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr VideoOverlay where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoOverlayMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoOverlayMethod "expose" o = VideoOverlayExposeMethodInfo
-    ResolveVideoOverlayMethod "gotWindowHandle" o = VideoOverlayGotWindowHandleMethodInfo
-    ResolveVideoOverlayMethod "handleEvents" o = VideoOverlayHandleEventsMethodInfo
-    ResolveVideoOverlayMethod "prepareWindowHandle" o = VideoOverlayPrepareWindowHandleMethodInfo
-    ResolveVideoOverlayMethod "setRenderRectangle" o = VideoOverlaySetRenderRectangleMethodInfo
-    ResolveVideoOverlayMethod "setWindowHandle" o = VideoOverlaySetWindowHandleMethodInfo
-    ResolveVideoOverlayMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoOverlayMethod t VideoOverlay, O.MethodInfo info VideoOverlay p) => OL.IsLabel t (VideoOverlay -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- method VideoOverlay::expose
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "overlay", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlay to expose.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_expose" gst_video_overlay_expose :: 
-    Ptr VideoOverlay ->                     -- overlay : TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"})
-    IO ()
-
-{- |
-Tell an overlay that it has been exposed. This will redraw the current frame
-in the drawable even if the pipeline is PAUSED.
--}
-videoOverlayExpose ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOverlay a) =>
-    a
-    {- ^ /@overlay@/: a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' to expose. -}
-    -> m ()
-videoOverlayExpose overlay = liftIO $ do
-    overlay' <- unsafeManagedPtrCastPtr overlay
-    gst_video_overlay_expose overlay'
-    touchManagedPtr overlay
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayExposeMethodInfo
-instance (signature ~ (m ()), MonadIO m, IsVideoOverlay a) => O.MethodInfo VideoOverlayExposeMethodInfo a signature where
-    overloadedMethod _ = videoOverlayExpose
-
-#endif
-
--- method VideoOverlay::got_window_handle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "overlay", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlay which got a window", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "handle", argType = TBasicType TUIntPtr, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a platform-specific handle referencing the window", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_got_window_handle" gst_video_overlay_got_window_handle :: 
-    Ptr VideoOverlay ->                     -- overlay : TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"})
-    CUIntPtr ->                             -- handle : TBasicType TUIntPtr
-    IO ()
-
-{- |
-This will post a \"have-window-handle\" element message on the bus.
-
-This function should only be used by video overlay plugin developers.
--}
-videoOverlayGotWindowHandle ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOverlay a) =>
-    a
-    {- ^ /@overlay@/: a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' which got a window -}
-    -> CUIntPtr
-    {- ^ /@handle@/: a platform-specific handle referencing the window -}
-    -> m ()
-videoOverlayGotWindowHandle overlay handle = liftIO $ do
-    overlay' <- unsafeManagedPtrCastPtr overlay
-    gst_video_overlay_got_window_handle overlay' handle
-    touchManagedPtr overlay
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayGotWindowHandleMethodInfo
-instance (signature ~ (CUIntPtr -> m ()), MonadIO m, IsVideoOverlay a) => O.MethodInfo VideoOverlayGotWindowHandleMethodInfo a signature where
-    overloadedMethod _ = videoOverlayGotWindowHandle
-
-#endif
-
--- method VideoOverlay::handle_events
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "overlay", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlay to expose.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "handle_events", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #gboolean indicating if events should be handled or not.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_handle_events" gst_video_overlay_handle_events :: 
-    Ptr VideoOverlay ->                     -- overlay : TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"})
-    CInt ->                                 -- handle_events : TBasicType TBoolean
-    IO ()
-
-{- |
-Tell an overlay that it should handle events from the window system. These
-events are forwarded upstream as navigation events. In some window system,
-events are not propagated in the window hierarchy if a client is listening
-for them. This method allows you to disable events handling completely
-from the 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay'.
--}
-videoOverlayHandleEvents ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOverlay a) =>
-    a
-    {- ^ /@overlay@/: a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' to expose. -}
-    -> Bool
-    {- ^ /@handleEvents@/: a 'Bool' indicating if events should be handled or not. -}
-    -> m ()
-videoOverlayHandleEvents overlay handleEvents = liftIO $ do
-    overlay' <- unsafeManagedPtrCastPtr overlay
-    let handleEvents' = (fromIntegral . fromEnum) handleEvents
-    gst_video_overlay_handle_events overlay' handleEvents'
-    touchManagedPtr overlay
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayHandleEventsMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoOverlay a) => O.MethodInfo VideoOverlayHandleEventsMethodInfo a signature where
-    overloadedMethod _ = videoOverlayHandleEvents
-
-#endif
-
--- method VideoOverlay::prepare_window_handle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "overlay", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlay which does not yet have an Window handle set", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_prepare_window_handle" gst_video_overlay_prepare_window_handle :: 
-    Ptr VideoOverlay ->                     -- overlay : TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"})
-    IO ()
-
-{- |
-This will post a \"prepare-window-handle\" element message on the bus
-to give applications an opportunity to call
-'GI.GstVideo.Interfaces.VideoOverlay.videoOverlaySetWindowHandle' before a plugin creates its own
-window.
-
-This function should only be used by video overlay plugin developers.
--}
-videoOverlayPrepareWindowHandle ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOverlay a) =>
-    a
-    {- ^ /@overlay@/: a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' which does not yet have an Window handle set -}
-    -> m ()
-videoOverlayPrepareWindowHandle overlay = liftIO $ do
-    overlay' <- unsafeManagedPtrCastPtr overlay
-    gst_video_overlay_prepare_window_handle overlay'
-    touchManagedPtr overlay
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayPrepareWindowHandleMethodInfo
-instance (signature ~ (m ()), MonadIO m, IsVideoOverlay a) => O.MethodInfo VideoOverlayPrepareWindowHandleMethodInfo a signature where
-    overloadedMethod _ = videoOverlayPrepareWindowHandle
-
-#endif
-
--- method VideoOverlay::set_render_rectangle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "overlay", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlay", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the horizontal offset of the render area inside the window", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the vertical offset of the render area inside the window", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the width of the render area inside the window", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the height of the render area inside the window", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_set_render_rectangle" gst_video_overlay_set_render_rectangle :: 
-    Ptr VideoOverlay ->                     -- overlay : TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"})
-    Int32 ->                                -- x : TBasicType TInt
-    Int32 ->                                -- y : TBasicType TInt
-    Int32 ->                                -- width : TBasicType TInt
-    Int32 ->                                -- height : TBasicType TInt
-    IO CInt
-
-{- |
-Configure a subregion as a video target within the window set by
-'GI.GstVideo.Interfaces.VideoOverlay.videoOverlaySetWindowHandle'. If this is not used or not supported
-the video will fill the area of the window set as the overlay to 100%.
-By specifying the rectangle, the video can be overlayed to a specific region
-of that window only. After setting the new rectangle one should call
-'GI.GstVideo.Interfaces.VideoOverlay.videoOverlayExpose' to force a redraw. To unset the region pass -1 for
-the /@width@/ and /@height@/ parameters.
-
-This method is needed for non fullscreen video overlay in UI toolkits that
-do not support subwindows.
--}
-videoOverlaySetRenderRectangle ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOverlay a) =>
-    a
-    {- ^ /@overlay@/: a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' -}
-    -> Int32
-    {- ^ /@x@/: the horizontal offset of the render area inside the window -}
-    -> Int32
-    {- ^ /@y@/: the vertical offset of the render area inside the window -}
-    -> Int32
-    {- ^ /@width@/: the width of the render area inside the window -}
-    -> Int32
-    {- ^ /@height@/: the height of the render area inside the window -}
-    -> m Bool
-    {- ^ __Returns:__ 'False' if not supported by the sink. -}
-videoOverlaySetRenderRectangle overlay x y width height = liftIO $ do
-    overlay' <- unsafeManagedPtrCastPtr overlay
-    result <- gst_video_overlay_set_render_rectangle overlay' x y width height
-    let result' = (/= 0) result
-    touchManagedPtr overlay
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlaySetRenderRectangleMethodInfo
-instance (signature ~ (Int32 -> Int32 -> Int32 -> Int32 -> m Bool), MonadIO m, IsVideoOverlay a) => O.MethodInfo VideoOverlaySetRenderRectangleMethodInfo a signature where
-    overloadedMethod _ = videoOverlaySetRenderRectangle
-
-#endif
-
--- method VideoOverlay::set_window_handle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "overlay", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlay to set the window on.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "handle", argType = TBasicType TUIntPtr, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a handle referencing the window.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_set_window_handle" gst_video_overlay_set_window_handle :: 
-    Ptr VideoOverlay ->                     -- overlay : TInterface (Name {namespace = "GstVideo", name = "VideoOverlay"})
-    CUIntPtr ->                             -- handle : TBasicType TUIntPtr
-    IO ()
-
-{- |
-This will call the video overlay\'s set_window_handle method. You
-should use this method to tell to an overlay to display video output to a
-specific window (e.g. an XWindow on X11). Passing 0 as the  /@handle@/ will
-tell the overlay to stop using that window and create an internal one.
--}
-videoOverlaySetWindowHandle ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoOverlay a) =>
-    a
-    {- ^ /@overlay@/: a 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay' to set the window on. -}
-    -> CUIntPtr
-    {- ^ /@handle@/: a handle referencing the window. -}
-    -> m ()
-videoOverlaySetWindowHandle overlay handle = liftIO $ do
-    overlay' <- unsafeManagedPtrCastPtr overlay
-    gst_video_overlay_set_window_handle overlay' handle
-    touchManagedPtr overlay
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlaySetWindowHandleMethodInfo
-instance (signature ~ (CUIntPtr -> m ()), MonadIO m, IsVideoOverlay a) => O.MethodInfo VideoOverlaySetWindowHandleMethodInfo a signature where
-    overloadedMethod _ = videoOverlaySetWindowHandle
-
-#endif
-
--- method VideoOverlay::set_property
--- method type : MemberFunction
--- Args : [Arg {argCName = "object", argType = TInterface (Name {namespace = "GObject", name = "Object"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The instance on which the property is set", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "last_prop_id", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The highest property ID.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "property_id", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The property ID", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TInterface (Name {namespace = "GObject", name = "Value"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The #GValue to be set", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_set_property" gst_video_overlay_set_property :: 
-    Ptr GObject.Object.Object ->            -- object : TInterface (Name {namespace = "GObject", name = "Object"})
-    Int32 ->                                -- last_prop_id : TBasicType TInt
-    Word32 ->                               -- property_id : TBasicType TUInt
-    Ptr GValue ->                           -- value : TInterface (Name {namespace = "GObject", name = "Value"})
-    IO CInt
-
-{- |
-This helper shall be used by classes implementing the 'GI.GstVideo.Interfaces.VideoOverlay.VideoOverlay'
-interface that want the render rectangle to be controllable using
-properties. This helper will parse and set the render rectangle calling
-'GI.GstVideo.Interfaces.VideoOverlay.videoOverlaySetRenderRectangle'.
--}
-videoOverlaySetProperty ::
-    (B.CallStack.HasCallStack, MonadIO m, GObject.Object.IsObject a) =>
-    a
-    {- ^ /@object@/: The instance on which the property is set -}
-    -> Int32
-    {- ^ /@lastPropId@/: The highest property ID. -}
-    -> Word32
-    {- ^ /@propertyId@/: The property ID -}
-    -> GValue
-    {- ^ /@value@/: The 'GI.GObject.Structs.Value.Value' to be set -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if the /@propertyId@/ matches the GstVideoOverlay property
-
-Since 1.14 -}
-videoOverlaySetProperty object lastPropId propertyId value = liftIO $ do
-    object' <- unsafeManagedPtrCastPtr object
-    value' <- unsafeManagedPtrGetPtr value
-    result <- gst_video_overlay_set_property object' lastPropId propertyId value'
-    let result' = (/= 0) result
-    touchManagedPtr object
-    touchManagedPtr value
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-
diff --git a/GI/GstVideo/Interfaces/VideoOverlay.hs-boot b/GI/GstVideo/Interfaces/VideoOverlay.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Interfaces/VideoOverlay.hs-boot
+++ /dev/null
@@ -1,45 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Interfaces.VideoOverlay 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoOverlay = VideoOverlay (ManagedPtr VideoOverlay)
-class ManagedPtrNewtype a => IsVideoOverlay a
-instance WrappedPtr VideoOverlay where
-#if ENABLE_OVERLOADING
-data VideoOverlayExposeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayGotWindowHandleMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayHandleEventsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayPrepareWindowHandleMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlaySetRenderRectangleMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlaySetWindowHandleMethodInfo
-#endif
diff --git a/GI/GstVideo/Objects.hs b/GI/GstVideo/Objects.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects.hs
+++ /dev/null
@@ -1,59 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects
-    (     module GI.GstVideo.Objects.ColorBalanceChannel,
-    module GI.GstVideo.Objects.VideoAggregator,
-    module GI.GstVideo.Objects.VideoAggregatorConvertPad,
-    module GI.GstVideo.Objects.VideoAggregatorPad,
-    module GI.GstVideo.Objects.VideoBufferPool,
-    module GI.GstVideo.Objects.VideoDecoder ,
-    module GI.GstVideo.Objects.VideoEncoder ,
-    module GI.GstVideo.Objects.VideoFilter  ,
-    module GI.GstVideo.Objects.VideoMultiviewFlagsSet,
-    module GI.GstVideo.Objects.VideoSink    ,
-
-
-    ) where
-
-import GI.GstVideo.Objects.ColorBalanceChannel
-import GI.GstVideo.Objects.VideoAggregator
-import GI.GstVideo.Objects.VideoAggregatorConvertPad
-import GI.GstVideo.Objects.VideoAggregatorPad
-import GI.GstVideo.Objects.VideoBufferPool
-import GI.GstVideo.Objects.VideoDecoder
-import GI.GstVideo.Objects.VideoEncoder
-import GI.GstVideo.Objects.VideoFilter
-import GI.GstVideo.Objects.VideoMultiviewFlagsSet
-import GI.GstVideo.Objects.VideoSink
-
-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.ManagedPtr as B.ManagedPtr
-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.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
-
-
-
diff --git a/GI/GstVideo/Objects/ColorBalanceChannel.hs b/GI/GstVideo/Objects/ColorBalanceChannel.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/ColorBalanceChannel.hs
+++ /dev/null
@@ -1,217 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-The 'GI.GstVideo.Objects.ColorBalanceChannel.ColorBalanceChannel' object represents a parameter
-for modifying the color balance implemented by an element providing the
-'GI.GstVideo.Interfaces.ColorBalance.ColorBalance' interface. For example, Hue or Saturation.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.ColorBalanceChannel
-    ( 
-
--- * Exported types
-    ColorBalanceChannel(..)                 ,
-    IsColorBalanceChannel                   ,
-    toColorBalanceChannel                   ,
-    noColorBalanceChannel                   ,
-
-
- -- * Signals
--- ** valueChanged #signal:valueChanged#
-
-    C_ColorBalanceChannelValueChangedCallback,
-    ColorBalanceChannelValueChangedCallback ,
-#if ENABLE_OVERLOADING
-    ColorBalanceChannelValueChangedSignalInfo,
-#endif
-    afterColorBalanceChannelValueChanged    ,
-    genClosure_ColorBalanceChannelValueChanged,
-    mk_ColorBalanceChannelValueChangedCallback,
-    noColorBalanceChannelValueChangedCallback,
-    onColorBalanceChannelValueChanged       ,
-    wrap_ColorBalanceChannelValueChangedCallback,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-
--- | Memory-managed wrapper type.
-newtype ColorBalanceChannel = ColorBalanceChannel (ManagedPtr ColorBalanceChannel)
-foreign import ccall "gst_color_balance_channel_get_type"
-    c_gst_color_balance_channel_get_type :: IO GType
-
-instance GObject ColorBalanceChannel where
-    gobjectType = c_gst_color_balance_channel_get_type
-    
-
--- | Type class for types which can be safely cast to `ColorBalanceChannel`, for instance with `toColorBalanceChannel`.
-class (GObject o, O.IsDescendantOf ColorBalanceChannel o) => IsColorBalanceChannel o
-instance (GObject o, O.IsDescendantOf ColorBalanceChannel o) => IsColorBalanceChannel o
-
-instance O.HasParentTypes ColorBalanceChannel
-type instance O.ParentTypes ColorBalanceChannel = '[GObject.Object.Object]
-
--- | Cast to `ColorBalanceChannel`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toColorBalanceChannel :: (MonadIO m, IsColorBalanceChannel o) => o -> m ColorBalanceChannel
-toColorBalanceChannel = liftIO . unsafeCastTo ColorBalanceChannel
-
--- | A convenience alias for `Nothing` :: `Maybe` `ColorBalanceChannel`.
-noColorBalanceChannel :: Maybe ColorBalanceChannel
-noColorBalanceChannel = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveColorBalanceChannelMethod (t :: Symbol) (o :: *) :: * where
-    ResolveColorBalanceChannelMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveColorBalanceChannelMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveColorBalanceChannelMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveColorBalanceChannelMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveColorBalanceChannelMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveColorBalanceChannelMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveColorBalanceChannelMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveColorBalanceChannelMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveColorBalanceChannelMethod "ref" o = GObject.Object.ObjectRefMethodInfo
-    ResolveColorBalanceChannelMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveColorBalanceChannelMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveColorBalanceChannelMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveColorBalanceChannelMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveColorBalanceChannelMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveColorBalanceChannelMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
-    ResolveColorBalanceChannelMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveColorBalanceChannelMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveColorBalanceChannelMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveColorBalanceChannelMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveColorBalanceChannelMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveColorBalanceChannelMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveColorBalanceChannelMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveColorBalanceChannelMethod t ColorBalanceChannel, O.MethodInfo info ColorBalanceChannel p) => OL.IsLabel t (ColorBalanceChannel -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- signal ColorBalanceChannel::value-changed
-{- |
-Fired when the value of the indicated channel has changed.
--}
-type ColorBalanceChannelValueChangedCallback =
-    Int32
-    {- ^ /@value@/: The new value -}
-    -> IO ()
-
--- | A convenience synonym for @`Nothing` :: `Maybe` `ColorBalanceChannelValueChangedCallback`@.
-noColorBalanceChannelValueChangedCallback :: Maybe ColorBalanceChannelValueChangedCallback
-noColorBalanceChannelValueChangedCallback = Nothing
-
--- | Type for the callback on the (unwrapped) C side.
-type C_ColorBalanceChannelValueChangedCallback =
-    Ptr () ->                               -- object
-    Int32 ->
-    Ptr () ->                               -- user_data
-    IO ()
-
--- | Generate a function pointer callable from C code, from a `C_ColorBalanceChannelValueChangedCallback`.
-foreign import ccall "wrapper"
-    mk_ColorBalanceChannelValueChangedCallback :: C_ColorBalanceChannelValueChangedCallback -> IO (FunPtr C_ColorBalanceChannelValueChangedCallback)
-
--- | Wrap the callback into a `GClosure`.
-genClosure_ColorBalanceChannelValueChanged :: MonadIO m => ColorBalanceChannelValueChangedCallback -> m (GClosure C_ColorBalanceChannelValueChangedCallback)
-genClosure_ColorBalanceChannelValueChanged cb = liftIO $ do
-    let cb' = wrap_ColorBalanceChannelValueChangedCallback cb
-    mk_ColorBalanceChannelValueChangedCallback cb' >>= B.GClosure.newGClosure
-
-
--- | Wrap a `ColorBalanceChannelValueChangedCallback` into a `C_ColorBalanceChannelValueChangedCallback`.
-wrap_ColorBalanceChannelValueChangedCallback ::
-    ColorBalanceChannelValueChangedCallback ->
-    C_ColorBalanceChannelValueChangedCallback
-wrap_ColorBalanceChannelValueChangedCallback _cb _ value _ = do
-    _cb  value
-
-
-{- |
-Connect a signal handler for the “@value-changed@” signal, to be run before the default handler.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Signals.on' colorBalanceChannel #valueChanged callback
-@
--}
-onColorBalanceChannelValueChanged :: (IsColorBalanceChannel a, MonadIO m) => a -> ColorBalanceChannelValueChangedCallback -> m SignalHandlerId
-onColorBalanceChannelValueChanged obj cb = liftIO $ do
-    let cb' = wrap_ColorBalanceChannelValueChangedCallback cb
-    cb'' <- mk_ColorBalanceChannelValueChangedCallback cb'
-    connectSignalFunPtr obj "value-changed" cb'' SignalConnectBefore
-
-{- |
-Connect a signal handler for the “@value-changed@” signal, to be run after the default handler.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Signals.after' colorBalanceChannel #valueChanged callback
-@
--}
-afterColorBalanceChannelValueChanged :: (IsColorBalanceChannel a, MonadIO m) => a -> ColorBalanceChannelValueChangedCallback -> m SignalHandlerId
-afterColorBalanceChannelValueChanged obj cb = liftIO $ do
-    let cb' = wrap_ColorBalanceChannelValueChangedCallback cb
-    cb'' <- mk_ColorBalanceChannelValueChangedCallback cb'
-    connectSignalFunPtr obj "value-changed" cb'' SignalConnectAfter
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList ColorBalanceChannel
-type instance O.AttributeList ColorBalanceChannel = ColorBalanceChannelAttributeList
-type ColorBalanceChannelAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-data ColorBalanceChannelValueChangedSignalInfo
-instance SignalInfo ColorBalanceChannelValueChangedSignalInfo where
-    type HaskellCallbackType ColorBalanceChannelValueChangedSignalInfo = ColorBalanceChannelValueChangedCallback
-    connectSignal _ obj cb connectMode = do
-        let cb' = wrap_ColorBalanceChannelValueChangedCallback cb
-        cb'' <- mk_ColorBalanceChannelValueChangedCallback cb'
-        connectSignalFunPtr obj "value-changed" cb'' connectMode
-
-type instance O.SignalList ColorBalanceChannel = ColorBalanceChannelSignalList
-type ColorBalanceChannelSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo), '("valueChanged", ColorBalanceChannelValueChangedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/ColorBalanceChannel.hs-boot b/GI/GstVideo/Objects/ColorBalanceChannel.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/ColorBalanceChannel.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.ColorBalanceChannel 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype ColorBalanceChannel = ColorBalanceChannel (ManagedPtr ColorBalanceChannel)
-instance GObject ColorBalanceChannel where
-class (GObject o, O.IsDescendantOf ColorBalanceChannel o) => IsColorBalanceChannel o
-instance (GObject o, O.IsDescendantOf ColorBalanceChannel o) => IsColorBalanceChannel o
-instance O.HasParentTypes ColorBalanceChannel
-#if ENABLE_OVERLOADING
-data ColorBalanceChannelValueChangedSignalInfo
-#endif
diff --git a/GI/GstVideo/Objects/VideoAggregator.hs b/GI/GstVideo/Objects/VideoAggregator.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoAggregator.hs
+++ /dev/null
@@ -1,224 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-VideoAggregator can accept AYUV, ARGB and BGRA video streams. For each of the requested
-sink pads it will compare the incoming geometry and framerate to define the
-output parameters. Indeed output video frames will have the geometry of the
-biggest incoming video stream and the framerate of the fastest incoming one.
-
-VideoAggregator will do colorspace conversion.
-
-Zorder for each input stream can be configured on the
-'GI.GstVideo.Objects.VideoAggregatorPad.VideoAggregatorPad'.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoAggregator
-    ( 
-
--- * Exported types
-    VideoAggregator(..)                     ,
-    IsVideoAggregator                       ,
-    toVideoAggregator                       ,
-    noVideoAggregator                       ,
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Objects.Element as Gst.Element
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.GstBase.Objects.Aggregator as GstBase.Aggregator
-
--- | Memory-managed wrapper type.
-newtype VideoAggregator = VideoAggregator (ManagedPtr VideoAggregator)
-foreign import ccall "gst_video_aggregator_get_type"
-    c_gst_video_aggregator_get_type :: IO GType
-
-instance GObject VideoAggregator where
-    gobjectType = c_gst_video_aggregator_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoAggregator`, for instance with `toVideoAggregator`.
-class (GObject o, O.IsDescendantOf VideoAggregator o) => IsVideoAggregator o
-instance (GObject o, O.IsDescendantOf VideoAggregator o) => IsVideoAggregator o
-
-instance O.HasParentTypes VideoAggregator
-type instance O.ParentTypes VideoAggregator = '[GstBase.Aggregator.Aggregator, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoAggregator`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoAggregator :: (MonadIO m, IsVideoAggregator o) => o -> m VideoAggregator
-toVideoAggregator = liftIO . unsafeCastTo VideoAggregator
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoAggregator`.
-noVideoAggregator :: Maybe VideoAggregator
-noVideoAggregator = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoAggregatorMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoAggregatorMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
-    ResolveVideoAggregatorMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoAggregatorMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
-    ResolveVideoAggregatorMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
-    ResolveVideoAggregatorMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
-    ResolveVideoAggregatorMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoAggregatorMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoAggregatorMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
-    ResolveVideoAggregatorMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
-    ResolveVideoAggregatorMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
-    ResolveVideoAggregatorMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
-    ResolveVideoAggregatorMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoAggregatorMethod "finishBuffer" o = GstBase.Aggregator.AggregatorFinishBufferMethodInfo
-    ResolveVideoAggregatorMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoAggregatorMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
-    ResolveVideoAggregatorMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
-    ResolveVideoAggregatorMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
-    ResolveVideoAggregatorMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoAggregatorMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoAggregatorMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoAggregatorMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoAggregatorMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoAggregatorMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoAggregatorMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoAggregatorMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
-    ResolveVideoAggregatorMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
-    ResolveVideoAggregatorMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
-    ResolveVideoAggregatorMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
-    ResolveVideoAggregatorMethod "link" o = Gst.Element.ElementLinkMethodInfo
-    ResolveVideoAggregatorMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
-    ResolveVideoAggregatorMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
-    ResolveVideoAggregatorMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
-    ResolveVideoAggregatorMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
-    ResolveVideoAggregatorMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
-    ResolveVideoAggregatorMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
-    ResolveVideoAggregatorMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
-    ResolveVideoAggregatorMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
-    ResolveVideoAggregatorMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoAggregatorMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoAggregatorMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
-    ResolveVideoAggregatorMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
-    ResolveVideoAggregatorMethod "query" o = Gst.Element.ElementQueryMethodInfo
-    ResolveVideoAggregatorMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
-    ResolveVideoAggregatorMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
-    ResolveVideoAggregatorMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
-    ResolveVideoAggregatorMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoAggregatorMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoAggregatorMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
-    ResolveVideoAggregatorMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoAggregatorMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
-    ResolveVideoAggregatorMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
-    ResolveVideoAggregatorMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
-    ResolveVideoAggregatorMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoAggregatorMethod "seek" o = Gst.Element.ElementSeekMethodInfo
-    ResolveVideoAggregatorMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
-    ResolveVideoAggregatorMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
-    ResolveVideoAggregatorMethod "simpleGetNextTime" o = GstBase.Aggregator.AggregatorSimpleGetNextTimeMethodInfo
-    ResolveVideoAggregatorMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoAggregatorMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoAggregatorMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoAggregatorMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
-    ResolveVideoAggregatorMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoAggregatorMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoAggregatorMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
-    ResolveVideoAggregatorMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
-    ResolveVideoAggregatorMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoAggregatorMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoAggregatorMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoAggregatorMethod "getAllocator" o = GstBase.Aggregator.AggregatorGetAllocatorMethodInfo
-    ResolveVideoAggregatorMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
-    ResolveVideoAggregatorMethod "getBufferPool" o = GstBase.Aggregator.AggregatorGetBufferPoolMethodInfo
-    ResolveVideoAggregatorMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
-    ResolveVideoAggregatorMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
-    ResolveVideoAggregatorMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
-    ResolveVideoAggregatorMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
-    ResolveVideoAggregatorMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
-    ResolveVideoAggregatorMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
-    ResolveVideoAggregatorMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
-    ResolveVideoAggregatorMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoAggregatorMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoAggregatorMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoAggregatorMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
-    ResolveVideoAggregatorMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoAggregatorMethod "getLatency" o = GstBase.Aggregator.AggregatorGetLatencyMethodInfo
-    ResolveVideoAggregatorMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
-    ResolveVideoAggregatorMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoAggregatorMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
-    ResolveVideoAggregatorMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
-    ResolveVideoAggregatorMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoAggregatorMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoAggregatorMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoAggregatorMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoAggregatorMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
-    ResolveVideoAggregatorMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
-    ResolveVideoAggregatorMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
-    ResolveVideoAggregatorMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
-    ResolveVideoAggregatorMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoAggregatorMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
-    ResolveVideoAggregatorMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
-    ResolveVideoAggregatorMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
-    ResolveVideoAggregatorMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
-    ResolveVideoAggregatorMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoAggregatorMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoAggregatorMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoAggregatorMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoAggregatorMethod "setLatency" o = GstBase.Aggregator.AggregatorSetLatencyMethodInfo
-    ResolveVideoAggregatorMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
-    ResolveVideoAggregatorMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoAggregatorMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoAggregatorMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoAggregatorMethod "setSrcCaps" o = GstBase.Aggregator.AggregatorSetSrcCapsMethodInfo
-    ResolveVideoAggregatorMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
-    ResolveVideoAggregatorMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
-    ResolveVideoAggregatorMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoAggregatorMethod t VideoAggregator, O.MethodInfo info VideoAggregator p) => OL.IsLabel t (VideoAggregator -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoAggregator
-type instance O.AttributeList VideoAggregator = VideoAggregatorAttributeList
-type VideoAggregatorAttributeList = ('[ '("latency", GstBase.Aggregator.AggregatorLatencyPropertyInfo), '("minUpstreamLatency", GstBase.Aggregator.AggregatorMinUpstreamLatencyPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("startTime", GstBase.Aggregator.AggregatorStartTimePropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoAggregator = VideoAggregatorSignalList
-type VideoAggregatorSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoAggregator.hs-boot b/GI/GstVideo/Objects/VideoAggregator.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoAggregator.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoAggregator 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoAggregator = VideoAggregator (ManagedPtr VideoAggregator)
-instance GObject VideoAggregator where
-class (GObject o, O.IsDescendantOf VideoAggregator o) => IsVideoAggregator o
-instance (GObject o, O.IsDescendantOf VideoAggregator o) => IsVideoAggregator o
-instance O.HasParentTypes VideoAggregator
diff --git a/GI/GstVideo/Objects/VideoAggregatorConvertPad.hs b/GI/GstVideo/Objects/VideoAggregatorConvertPad.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoAggregatorConvertPad.hs
+++ /dev/null
@@ -1,364 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-An implementation of GstPad that can be used with 'GI.GstVideo.Objects.VideoAggregator.VideoAggregator'.
-
-See 'GI.GstVideo.Objects.VideoAggregator.VideoAggregator' for more details.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoAggregatorConvertPad
-    ( 
-
--- * Exported types
-    VideoAggregatorConvertPad(..)           ,
-    IsVideoAggregatorConvertPad             ,
-    toVideoAggregatorConvertPad             ,
-    noVideoAggregatorConvertPad             ,
-
-
- -- * Methods
--- ** updateConversionInfo #method:updateConversionInfo#
-
-#if ENABLE_OVERLOADING
-    VideoAggregatorConvertPadUpdateConversionInfoMethodInfo,
-#endif
-    videoAggregatorConvertPadUpdateConversionInfo,
-
-
-
-
- -- * Properties
--- ** converterConfig #attr:converterConfig#
-{- | /No description available in the introspection data./
--}
-#if ENABLE_OVERLOADING
-    VideoAggregatorConvertPadConverterConfigPropertyInfo,
-#endif
-    clearVideoAggregatorConvertPadConverterConfig,
-    constructVideoAggregatorConvertPadConverterConfig,
-    getVideoAggregatorConvertPadConverterConfig,
-    setVideoAggregatorConvertPadConverterConfig,
-#if ENABLE_OVERLOADING
-    videoAggregatorConvertPadConverterConfig,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.Gst.Objects.Pad as Gst.Pad
-import qualified GI.Gst.Structs.Structure as Gst.Structure
-import qualified GI.GstBase.Objects.AggregatorPad as GstBase.AggregatorPad
-import {-# SOURCE #-} qualified GI.GstVideo.Objects.VideoAggregatorPad as GstVideo.VideoAggregatorPad
-
--- | Memory-managed wrapper type.
-newtype VideoAggregatorConvertPad = VideoAggregatorConvertPad (ManagedPtr VideoAggregatorConvertPad)
-foreign import ccall "gst_video_aggregator_convert_pad_get_type"
-    c_gst_video_aggregator_convert_pad_get_type :: IO GType
-
-instance GObject VideoAggregatorConvertPad where
-    gobjectType = c_gst_video_aggregator_convert_pad_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoAggregatorConvertPad`, for instance with `toVideoAggregatorConvertPad`.
-class (GObject o, O.IsDescendantOf VideoAggregatorConvertPad o) => IsVideoAggregatorConvertPad o
-instance (GObject o, O.IsDescendantOf VideoAggregatorConvertPad o) => IsVideoAggregatorConvertPad o
-
-instance O.HasParentTypes VideoAggregatorConvertPad
-type instance O.ParentTypes VideoAggregatorConvertPad = '[GstVideo.VideoAggregatorPad.VideoAggregatorPad, GstBase.AggregatorPad.AggregatorPad, Gst.Pad.Pad, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoAggregatorConvertPad`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoAggregatorConvertPad :: (MonadIO m, IsVideoAggregatorConvertPad o) => o -> m VideoAggregatorConvertPad
-toVideoAggregatorConvertPad = liftIO . unsafeCastTo VideoAggregatorConvertPad
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoAggregatorConvertPad`.
-noVideoAggregatorConvertPad :: Maybe VideoAggregatorConvertPad
-noVideoAggregatorConvertPad = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoAggregatorConvertPadMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoAggregatorConvertPadMethod "activateMode" o = Gst.Pad.PadActivateModeMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "addProbe" o = Gst.Pad.PadAddProbeMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "canLink" o = Gst.Pad.PadCanLinkMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "chain" o = Gst.Pad.PadChainMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "chainList" o = Gst.Pad.PadChainListMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "checkReconfigure" o = Gst.Pad.PadCheckReconfigureMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "createStreamId" o = Gst.Pad.PadCreateStreamIdMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "dropBuffer" o = GstBase.AggregatorPad.AggregatorPadDropBufferMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "eventDefault" o = Gst.Pad.PadEventDefaultMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "forward" o = Gst.Pad.PadForwardMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasBuffer" o = GstBase.AggregatorPad.AggregatorPadHasBufferMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasCurrentBuffer" o = GstVideo.VideoAggregatorPad.VideoAggregatorPadHasCurrentBufferMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "hasCurrentCaps" o = Gst.Pad.PadHasCurrentCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "isActive" o = Gst.Pad.PadIsActiveMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "isBlocked" o = Gst.Pad.PadIsBlockedMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "isBlocking" o = Gst.Pad.PadIsBlockingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "isEos" o = GstBase.AggregatorPad.AggregatorPadIsEosMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "isLinked" o = Gst.Pad.PadIsLinkedMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "iterateInternalLinks" o = Gst.Pad.PadIterateInternalLinksMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "iterateInternalLinksDefault" o = Gst.Pad.PadIterateInternalLinksDefaultMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "link" o = Gst.Pad.PadLinkMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "linkFull" o = Gst.Pad.PadLinkFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "linkMaybeGhosting" o = Gst.Pad.PadLinkMaybeGhostingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "linkMaybeGhostingFull" o = Gst.Pad.PadLinkMaybeGhostingFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "markReconfigure" o = Gst.Pad.PadMarkReconfigureMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "needsReconfigure" o = Gst.Pad.PadNeedsReconfigureMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "pauseTask" o = Gst.Pad.PadPauseTaskMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peekBuffer" o = GstBase.AggregatorPad.AggregatorPadPeekBufferMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peerQuery" o = Gst.Pad.PadPeerQueryMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peerQueryAcceptCaps" o = Gst.Pad.PadPeerQueryAcceptCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peerQueryCaps" o = Gst.Pad.PadPeerQueryCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peerQueryConvert" o = Gst.Pad.PadPeerQueryConvertMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peerQueryDuration" o = Gst.Pad.PadPeerQueryDurationMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "peerQueryPosition" o = Gst.Pad.PadPeerQueryPositionMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "popBuffer" o = GstBase.AggregatorPad.AggregatorPadPopBufferMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "proxyQueryAcceptCaps" o = Gst.Pad.PadProxyQueryAcceptCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "proxyQueryCaps" o = Gst.Pad.PadProxyQueryCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "pullRange" o = Gst.Pad.PadPullRangeMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "push" o = Gst.Pad.PadPushMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "pushEvent" o = Gst.Pad.PadPushEventMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "pushList" o = Gst.Pad.PadPushListMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "query" o = Gst.Pad.PadQueryMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "queryAcceptCaps" o = Gst.Pad.PadQueryAcceptCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "queryCaps" o = Gst.Pad.PadQueryCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "queryConvert" o = Gst.Pad.PadQueryConvertMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "queryDefault" o = Gst.Pad.PadQueryDefaultMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "queryDuration" o = Gst.Pad.PadQueryDurationMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "queryPosition" o = Gst.Pad.PadQueryPositionMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "removeProbe" o = Gst.Pad.PadRemoveProbeMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "sendEvent" o = Gst.Pad.PadSendEventMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "startTask" o = Gst.Pad.PadStartTaskMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "stickyEventsForeach" o = Gst.Pad.PadStickyEventsForeachMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "stopTask" o = Gst.Pad.PadStopTaskMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "storeStickyEvent" o = Gst.Pad.PadStoreStickyEventMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "unlink" o = Gst.Pad.PadUnlinkMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "updateConversionInfo" o = VideoAggregatorConvertPadUpdateConversionInfoMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "useFixedCaps" o = Gst.Pad.PadUseFixedCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getAllowedCaps" o = Gst.Pad.PadGetAllowedCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getCurrentBuffer" o = GstVideo.VideoAggregatorPad.VideoAggregatorPadGetCurrentBufferMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getCurrentCaps" o = Gst.Pad.PadGetCurrentCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getDirection" o = Gst.Pad.PadGetDirectionMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getElementPrivate" o = Gst.Pad.PadGetElementPrivateMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getLastFlowReturn" o = Gst.Pad.PadGetLastFlowReturnMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getOffset" o = Gst.Pad.PadGetOffsetMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getPadTemplate" o = Gst.Pad.PadGetPadTemplateMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getPadTemplateCaps" o = Gst.Pad.PadGetPadTemplateCapsMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getParentElement" o = Gst.Pad.PadGetParentElementMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getPeer" o = Gst.Pad.PadGetPeerMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getPreparedFrame" o = GstVideo.VideoAggregatorPad.VideoAggregatorPadGetPreparedFrameMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getRange" o = Gst.Pad.PadGetRangeMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getStickyEvent" o = Gst.Pad.PadGetStickyEventMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getStream" o = Gst.Pad.PadGetStreamMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getStreamId" o = Gst.Pad.PadGetStreamIdMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getTaskState" o = Gst.Pad.PadGetTaskStateMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setActivateFunctionFull" o = Gst.Pad.PadSetActivateFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setActivatemodeFunctionFull" o = Gst.Pad.PadSetActivatemodeFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setActive" o = Gst.Pad.PadSetActiveMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setChainFunctionFull" o = Gst.Pad.PadSetChainFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setChainListFunctionFull" o = Gst.Pad.PadSetChainListFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setElementPrivate" o = Gst.Pad.PadSetElementPrivateMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setEventFullFunctionFull" o = Gst.Pad.PadSetEventFullFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setEventFunctionFull" o = Gst.Pad.PadSetEventFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setGetrangeFunctionFull" o = Gst.Pad.PadSetGetrangeFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setIterateInternalLinksFunctionFull" o = Gst.Pad.PadSetIterateInternalLinksFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setLinkFunctionFull" o = Gst.Pad.PadSetLinkFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setNeedsAlpha" o = GstVideo.VideoAggregatorPad.VideoAggregatorPadSetNeedsAlphaMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setOffset" o = Gst.Pad.PadSetOffsetMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setQueryFunctionFull" o = Gst.Pad.PadSetQueryFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod "setUnlinkFunctionFull" o = Gst.Pad.PadSetUnlinkFunctionFullMethodInfo
-    ResolveVideoAggregatorConvertPadMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoAggregatorConvertPadMethod t VideoAggregatorConvertPad, O.MethodInfo info VideoAggregatorConvertPad p) => OL.IsLabel t (VideoAggregatorConvertPad -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- VVV Prop "converter-config"
-   -- Type: TInterface (Name {namespace = "Gst", name = "Structure"})
-   -- Flags: [PropertyReadable,PropertyWritable]
-   -- Nullable: (Nothing,Nothing)
-
-{- |
-Get the value of the “@converter-config@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAggregatorConvertPad #converterConfig
-@
--}
-getVideoAggregatorConvertPadConverterConfig :: (MonadIO m, IsVideoAggregatorConvertPad o) => o -> m (Maybe Gst.Structure.Structure)
-getVideoAggregatorConvertPadConverterConfig obj = liftIO $ B.Properties.getObjectPropertyBoxed obj "converter-config" Gst.Structure.Structure
-
-{- |
-Set the value of the “@converter-config@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAggregatorConvertPad [ #converterConfig 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAggregatorConvertPadConverterConfig :: (MonadIO m, IsVideoAggregatorConvertPad o) => o -> Gst.Structure.Structure -> m ()
-setVideoAggregatorConvertPadConverterConfig obj val = liftIO $ B.Properties.setObjectPropertyBoxed obj "converter-config" (Just val)
-
-{- |
-Construct a `GValueConstruct` with valid value for the “@converter-config@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
--}
-constructVideoAggregatorConvertPadConverterConfig :: (IsVideoAggregatorConvertPad o) => Gst.Structure.Structure -> IO (GValueConstruct o)
-constructVideoAggregatorConvertPadConverterConfig val = B.Properties.constructObjectPropertyBoxed "converter-config" (Just val)
-
-{- |
-Set the value of the “@converter-config@” property to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #converterConfig
-@
--}
-clearVideoAggregatorConvertPadConverterConfig :: (MonadIO m, IsVideoAggregatorConvertPad o) => o -> m ()
-clearVideoAggregatorConvertPadConverterConfig obj = liftIO $ B.Properties.setObjectPropertyBoxed obj "converter-config" (Nothing :: Maybe Gst.Structure.Structure)
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorConvertPadConverterConfigPropertyInfo
-instance AttrInfo VideoAggregatorConvertPadConverterConfigPropertyInfo where
-    type AttrAllowedOps VideoAggregatorConvertPadConverterConfigPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoAggregatorConvertPadConverterConfigPropertyInfo = (~) Gst.Structure.Structure
-    type AttrBaseTypeConstraint VideoAggregatorConvertPadConverterConfigPropertyInfo = IsVideoAggregatorConvertPad
-    type AttrGetType VideoAggregatorConvertPadConverterConfigPropertyInfo = (Maybe Gst.Structure.Structure)
-    type AttrLabel VideoAggregatorConvertPadConverterConfigPropertyInfo = "converter-config"
-    type AttrOrigin VideoAggregatorConvertPadConverterConfigPropertyInfo = VideoAggregatorConvertPad
-    attrGet _ = getVideoAggregatorConvertPadConverterConfig
-    attrSet _ = setVideoAggregatorConvertPadConverterConfig
-    attrConstruct _ = constructVideoAggregatorConvertPadConverterConfig
-    attrClear _ = clearVideoAggregatorConvertPadConverterConfig
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoAggregatorConvertPad
-type instance O.AttributeList VideoAggregatorConvertPad = VideoAggregatorConvertPadAttributeList
-type VideoAggregatorConvertPadAttributeList = ('[ '("caps", Gst.Pad.PadCapsPropertyInfo), '("converterConfig", VideoAggregatorConvertPadConverterConfigPropertyInfo), '("direction", Gst.Pad.PadDirectionPropertyInfo), '("emitSignals", GstBase.AggregatorPad.AggregatorPadEmitSignalsPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("offset", Gst.Pad.PadOffsetPropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("repeatAfterEos", GstVideo.VideoAggregatorPad.VideoAggregatorPadRepeatAfterEosPropertyInfo), '("template", Gst.Pad.PadTemplatePropertyInfo), '("zorder", GstVideo.VideoAggregatorPad.VideoAggregatorPadZorderPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-videoAggregatorConvertPadConverterConfig :: AttrLabelProxy "converterConfig"
-videoAggregatorConvertPadConverterConfig = AttrLabelProxy
-
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoAggregatorConvertPad = VideoAggregatorConvertPadSignalList
-type VideoAggregatorConvertPadSignalList = ('[ '("bufferConsumed", GstBase.AggregatorPad.AggregatorPadBufferConsumedSignalInfo), '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("linked", Gst.Pad.PadLinkedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("unlinked", Gst.Pad.PadUnlinkedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
--- method VideoAggregatorConvertPad::update_conversion_info
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "pad", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorConvertPad"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAggregatorPad", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_aggregator_convert_pad_update_conversion_info" gst_video_aggregator_convert_pad_update_conversion_info :: 
-    Ptr VideoAggregatorConvertPad ->        -- pad : TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorConvertPad"})
-    IO ()
-
-{- |
-Requests the pad to check and update the converter before the next usage to
-update for any changes that have happened.
--}
-videoAggregatorConvertPadUpdateConversionInfo ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoAggregatorConvertPad a) =>
-    a
-    {- ^ /@pad@/: a 'GI.GstVideo.Objects.VideoAggregatorPad.VideoAggregatorPad' -}
-    -> m ()
-videoAggregatorConvertPadUpdateConversionInfo pad = liftIO $ do
-    pad' <- unsafeManagedPtrCastPtr pad
-    gst_video_aggregator_convert_pad_update_conversion_info pad'
-    touchManagedPtr pad
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorConvertPadUpdateConversionInfoMethodInfo
-instance (signature ~ (m ()), MonadIO m, IsVideoAggregatorConvertPad a) => O.MethodInfo VideoAggregatorConvertPadUpdateConversionInfoMethodInfo a signature where
-    overloadedMethod _ = videoAggregatorConvertPadUpdateConversionInfo
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoAggregatorConvertPad.hs-boot b/GI/GstVideo/Objects/VideoAggregatorConvertPad.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoAggregatorConvertPad.hs-boot
+++ /dev/null
@@ -1,35 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoAggregatorConvertPad 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoAggregatorConvertPad = VideoAggregatorConvertPad (ManagedPtr VideoAggregatorConvertPad)
-instance GObject VideoAggregatorConvertPad where
-class (GObject o, O.IsDescendantOf VideoAggregatorConvertPad o) => IsVideoAggregatorConvertPad o
-instance (GObject o, O.IsDescendantOf VideoAggregatorConvertPad o) => IsVideoAggregatorConvertPad o
-instance O.HasParentTypes VideoAggregatorConvertPad
-#if ENABLE_OVERLOADING
-data VideoAggregatorConvertPadConverterConfigPropertyInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoAggregatorConvertPadUpdateConversionInfoMethodInfo
-#endif
diff --git a/GI/GstVideo/Objects/VideoAggregatorPad.hs b/GI/GstVideo/Objects/VideoAggregatorPad.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoAggregatorPad.hs
+++ /dev/null
@@ -1,566 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-/No description available in the introspection data./
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoAggregatorPad
-    ( 
-
--- * Exported types
-    VideoAggregatorPad(..)                  ,
-    IsVideoAggregatorPad                    ,
-    toVideoAggregatorPad                    ,
-    noVideoAggregatorPad                    ,
-
-
- -- * Methods
--- ** getCurrentBuffer #method:getCurrentBuffer#
-
-#if ENABLE_OVERLOADING
-    VideoAggregatorPadGetCurrentBufferMethodInfo,
-#endif
-    videoAggregatorPadGetCurrentBuffer      ,
-
-
--- ** getPreparedFrame #method:getPreparedFrame#
-
-#if ENABLE_OVERLOADING
-    VideoAggregatorPadGetPreparedFrameMethodInfo,
-#endif
-    videoAggregatorPadGetPreparedFrame      ,
-
-
--- ** hasCurrentBuffer #method:hasCurrentBuffer#
-
-#if ENABLE_OVERLOADING
-    VideoAggregatorPadHasCurrentBufferMethodInfo,
-#endif
-    videoAggregatorPadHasCurrentBuffer      ,
-
-
--- ** setNeedsAlpha #method:setNeedsAlpha#
-
-#if ENABLE_OVERLOADING
-    VideoAggregatorPadSetNeedsAlphaMethodInfo,
-#endif
-    videoAggregatorPadSetNeedsAlpha         ,
-
-
-
-
- -- * Properties
--- ** repeatAfterEos #attr:repeatAfterEos#
-{- | /No description available in the introspection data./
--}
-#if ENABLE_OVERLOADING
-    VideoAggregatorPadRepeatAfterEosPropertyInfo,
-#endif
-    constructVideoAggregatorPadRepeatAfterEos,
-    getVideoAggregatorPadRepeatAfterEos     ,
-    setVideoAggregatorPadRepeatAfterEos     ,
-#if ENABLE_OVERLOADING
-    videoAggregatorPadRepeatAfterEos        ,
-#endif
-
-
--- ** zorder #attr:zorder#
-{- | /No description available in the introspection data./
--}
-#if ENABLE_OVERLOADING
-    VideoAggregatorPadZorderPropertyInfo    ,
-#endif
-    constructVideoAggregatorPadZorder       ,
-    getVideoAggregatorPadZorder             ,
-    setVideoAggregatorPadZorder             ,
-#if ENABLE_OVERLOADING
-    videoAggregatorPadZorder                ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.Gst.Objects.Pad as Gst.Pad
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-import qualified GI.GstBase.Objects.AggregatorPad as GstBase.AggregatorPad
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoFrame as GstVideo.VideoFrame
-
--- | Memory-managed wrapper type.
-newtype VideoAggregatorPad = VideoAggregatorPad (ManagedPtr VideoAggregatorPad)
-foreign import ccall "gst_video_aggregator_pad_get_type"
-    c_gst_video_aggregator_pad_get_type :: IO GType
-
-instance GObject VideoAggregatorPad where
-    gobjectType = c_gst_video_aggregator_pad_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoAggregatorPad`, for instance with `toVideoAggregatorPad`.
-class (GObject o, O.IsDescendantOf VideoAggregatorPad o) => IsVideoAggregatorPad o
-instance (GObject o, O.IsDescendantOf VideoAggregatorPad o) => IsVideoAggregatorPad o
-
-instance O.HasParentTypes VideoAggregatorPad
-type instance O.ParentTypes VideoAggregatorPad = '[GstBase.AggregatorPad.AggregatorPad, Gst.Pad.Pad, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoAggregatorPad`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoAggregatorPad :: (MonadIO m, IsVideoAggregatorPad o) => o -> m VideoAggregatorPad
-toVideoAggregatorPad = liftIO . unsafeCastTo VideoAggregatorPad
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoAggregatorPad`.
-noVideoAggregatorPad :: Maybe VideoAggregatorPad
-noVideoAggregatorPad = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoAggregatorPadMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoAggregatorPadMethod "activateMode" o = Gst.Pad.PadActivateModeMethodInfo
-    ResolveVideoAggregatorPadMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoAggregatorPadMethod "addProbe" o = Gst.Pad.PadAddProbeMethodInfo
-    ResolveVideoAggregatorPadMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoAggregatorPadMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoAggregatorPadMethod "canLink" o = Gst.Pad.PadCanLinkMethodInfo
-    ResolveVideoAggregatorPadMethod "chain" o = Gst.Pad.PadChainMethodInfo
-    ResolveVideoAggregatorPadMethod "chainList" o = Gst.Pad.PadChainListMethodInfo
-    ResolveVideoAggregatorPadMethod "checkReconfigure" o = Gst.Pad.PadCheckReconfigureMethodInfo
-    ResolveVideoAggregatorPadMethod "createStreamId" o = Gst.Pad.PadCreateStreamIdMethodInfo
-    ResolveVideoAggregatorPadMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoAggregatorPadMethod "dropBuffer" o = GstBase.AggregatorPad.AggregatorPadDropBufferMethodInfo
-    ResolveVideoAggregatorPadMethod "eventDefault" o = Gst.Pad.PadEventDefaultMethodInfo
-    ResolveVideoAggregatorPadMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoAggregatorPadMethod "forward" o = Gst.Pad.PadForwardMethodInfo
-    ResolveVideoAggregatorPadMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoAggregatorPadMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoAggregatorPadMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoAggregatorPadMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoAggregatorPadMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoAggregatorPadMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoAggregatorPadMethod "hasBuffer" o = GstBase.AggregatorPad.AggregatorPadHasBufferMethodInfo
-    ResolveVideoAggregatorPadMethod "hasCurrentBuffer" o = VideoAggregatorPadHasCurrentBufferMethodInfo
-    ResolveVideoAggregatorPadMethod "hasCurrentCaps" o = Gst.Pad.PadHasCurrentCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "isActive" o = Gst.Pad.PadIsActiveMethodInfo
-    ResolveVideoAggregatorPadMethod "isBlocked" o = Gst.Pad.PadIsBlockedMethodInfo
-    ResolveVideoAggregatorPadMethod "isBlocking" o = Gst.Pad.PadIsBlockingMethodInfo
-    ResolveVideoAggregatorPadMethod "isEos" o = GstBase.AggregatorPad.AggregatorPadIsEosMethodInfo
-    ResolveVideoAggregatorPadMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoAggregatorPadMethod "isLinked" o = Gst.Pad.PadIsLinkedMethodInfo
-    ResolveVideoAggregatorPadMethod "iterateInternalLinks" o = Gst.Pad.PadIterateInternalLinksMethodInfo
-    ResolveVideoAggregatorPadMethod "iterateInternalLinksDefault" o = Gst.Pad.PadIterateInternalLinksDefaultMethodInfo
-    ResolveVideoAggregatorPadMethod "link" o = Gst.Pad.PadLinkMethodInfo
-    ResolveVideoAggregatorPadMethod "linkFull" o = Gst.Pad.PadLinkFullMethodInfo
-    ResolveVideoAggregatorPadMethod "linkMaybeGhosting" o = Gst.Pad.PadLinkMaybeGhostingMethodInfo
-    ResolveVideoAggregatorPadMethod "linkMaybeGhostingFull" o = Gst.Pad.PadLinkMaybeGhostingFullMethodInfo
-    ResolveVideoAggregatorPadMethod "markReconfigure" o = Gst.Pad.PadMarkReconfigureMethodInfo
-    ResolveVideoAggregatorPadMethod "needsReconfigure" o = Gst.Pad.PadNeedsReconfigureMethodInfo
-    ResolveVideoAggregatorPadMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoAggregatorPadMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoAggregatorPadMethod "pauseTask" o = Gst.Pad.PadPauseTaskMethodInfo
-    ResolveVideoAggregatorPadMethod "peekBuffer" o = GstBase.AggregatorPad.AggregatorPadPeekBufferMethodInfo
-    ResolveVideoAggregatorPadMethod "peerQuery" o = Gst.Pad.PadPeerQueryMethodInfo
-    ResolveVideoAggregatorPadMethod "peerQueryAcceptCaps" o = Gst.Pad.PadPeerQueryAcceptCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "peerQueryCaps" o = Gst.Pad.PadPeerQueryCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "peerQueryConvert" o = Gst.Pad.PadPeerQueryConvertMethodInfo
-    ResolveVideoAggregatorPadMethod "peerQueryDuration" o = Gst.Pad.PadPeerQueryDurationMethodInfo
-    ResolveVideoAggregatorPadMethod "peerQueryPosition" o = Gst.Pad.PadPeerQueryPositionMethodInfo
-    ResolveVideoAggregatorPadMethod "popBuffer" o = GstBase.AggregatorPad.AggregatorPadPopBufferMethodInfo
-    ResolveVideoAggregatorPadMethod "proxyQueryAcceptCaps" o = Gst.Pad.PadProxyQueryAcceptCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "proxyQueryCaps" o = Gst.Pad.PadProxyQueryCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "pullRange" o = Gst.Pad.PadPullRangeMethodInfo
-    ResolveVideoAggregatorPadMethod "push" o = Gst.Pad.PadPushMethodInfo
-    ResolveVideoAggregatorPadMethod "pushEvent" o = Gst.Pad.PadPushEventMethodInfo
-    ResolveVideoAggregatorPadMethod "pushList" o = Gst.Pad.PadPushListMethodInfo
-    ResolveVideoAggregatorPadMethod "query" o = Gst.Pad.PadQueryMethodInfo
-    ResolveVideoAggregatorPadMethod "queryAcceptCaps" o = Gst.Pad.PadQueryAcceptCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "queryCaps" o = Gst.Pad.PadQueryCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "queryConvert" o = Gst.Pad.PadQueryConvertMethodInfo
-    ResolveVideoAggregatorPadMethod "queryDefault" o = Gst.Pad.PadQueryDefaultMethodInfo
-    ResolveVideoAggregatorPadMethod "queryDuration" o = Gst.Pad.PadQueryDurationMethodInfo
-    ResolveVideoAggregatorPadMethod "queryPosition" o = Gst.Pad.PadQueryPositionMethodInfo
-    ResolveVideoAggregatorPadMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoAggregatorPadMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoAggregatorPadMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoAggregatorPadMethod "removeProbe" o = Gst.Pad.PadRemoveProbeMethodInfo
-    ResolveVideoAggregatorPadMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoAggregatorPadMethod "sendEvent" o = Gst.Pad.PadSendEventMethodInfo
-    ResolveVideoAggregatorPadMethod "startTask" o = Gst.Pad.PadStartTaskMethodInfo
-    ResolveVideoAggregatorPadMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoAggregatorPadMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoAggregatorPadMethod "stickyEventsForeach" o = Gst.Pad.PadStickyEventsForeachMethodInfo
-    ResolveVideoAggregatorPadMethod "stopTask" o = Gst.Pad.PadStopTaskMethodInfo
-    ResolveVideoAggregatorPadMethod "storeStickyEvent" o = Gst.Pad.PadStoreStickyEventMethodInfo
-    ResolveVideoAggregatorPadMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoAggregatorPadMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoAggregatorPadMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoAggregatorPadMethod "unlink" o = Gst.Pad.PadUnlinkMethodInfo
-    ResolveVideoAggregatorPadMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoAggregatorPadMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoAggregatorPadMethod "useFixedCaps" o = Gst.Pad.PadUseFixedCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoAggregatorPadMethod "getAllowedCaps" o = Gst.Pad.PadGetAllowedCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoAggregatorPadMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoAggregatorPadMethod "getCurrentBuffer" o = VideoAggregatorPadGetCurrentBufferMethodInfo
-    ResolveVideoAggregatorPadMethod "getCurrentCaps" o = Gst.Pad.PadGetCurrentCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoAggregatorPadMethod "getDirection" o = Gst.Pad.PadGetDirectionMethodInfo
-    ResolveVideoAggregatorPadMethod "getElementPrivate" o = Gst.Pad.PadGetElementPrivateMethodInfo
-    ResolveVideoAggregatorPadMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoAggregatorPadMethod "getLastFlowReturn" o = Gst.Pad.PadGetLastFlowReturnMethodInfo
-    ResolveVideoAggregatorPadMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoAggregatorPadMethod "getOffset" o = Gst.Pad.PadGetOffsetMethodInfo
-    ResolveVideoAggregatorPadMethod "getPadTemplate" o = Gst.Pad.PadGetPadTemplateMethodInfo
-    ResolveVideoAggregatorPadMethod "getPadTemplateCaps" o = Gst.Pad.PadGetPadTemplateCapsMethodInfo
-    ResolveVideoAggregatorPadMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoAggregatorPadMethod "getParentElement" o = Gst.Pad.PadGetParentElementMethodInfo
-    ResolveVideoAggregatorPadMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoAggregatorPadMethod "getPeer" o = Gst.Pad.PadGetPeerMethodInfo
-    ResolveVideoAggregatorPadMethod "getPreparedFrame" o = VideoAggregatorPadGetPreparedFrameMethodInfo
-    ResolveVideoAggregatorPadMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoAggregatorPadMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoAggregatorPadMethod "getRange" o = Gst.Pad.PadGetRangeMethodInfo
-    ResolveVideoAggregatorPadMethod "getStickyEvent" o = Gst.Pad.PadGetStickyEventMethodInfo
-    ResolveVideoAggregatorPadMethod "getStream" o = Gst.Pad.PadGetStreamMethodInfo
-    ResolveVideoAggregatorPadMethod "getStreamId" o = Gst.Pad.PadGetStreamIdMethodInfo
-    ResolveVideoAggregatorPadMethod "getTaskState" o = Gst.Pad.PadGetTaskStateMethodInfo
-    ResolveVideoAggregatorPadMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoAggregatorPadMethod "setActivateFunctionFull" o = Gst.Pad.PadSetActivateFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setActivatemodeFunctionFull" o = Gst.Pad.PadSetActivatemodeFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setActive" o = Gst.Pad.PadSetActiveMethodInfo
-    ResolveVideoAggregatorPadMethod "setChainFunctionFull" o = Gst.Pad.PadSetChainFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setChainListFunctionFull" o = Gst.Pad.PadSetChainListFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoAggregatorPadMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoAggregatorPadMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoAggregatorPadMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoAggregatorPadMethod "setElementPrivate" o = Gst.Pad.PadSetElementPrivateMethodInfo
-    ResolveVideoAggregatorPadMethod "setEventFullFunctionFull" o = Gst.Pad.PadSetEventFullFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setEventFunctionFull" o = Gst.Pad.PadSetEventFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setGetrangeFunctionFull" o = Gst.Pad.PadSetGetrangeFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setIterateInternalLinksFunctionFull" o = Gst.Pad.PadSetIterateInternalLinksFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setLinkFunctionFull" o = Gst.Pad.PadSetLinkFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoAggregatorPadMethod "setNeedsAlpha" o = VideoAggregatorPadSetNeedsAlphaMethodInfo
-    ResolveVideoAggregatorPadMethod "setOffset" o = Gst.Pad.PadSetOffsetMethodInfo
-    ResolveVideoAggregatorPadMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoAggregatorPadMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoAggregatorPadMethod "setQueryFunctionFull" o = Gst.Pad.PadSetQueryFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod "setUnlinkFunctionFull" o = Gst.Pad.PadSetUnlinkFunctionFullMethodInfo
-    ResolveVideoAggregatorPadMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoAggregatorPadMethod t VideoAggregatorPad, O.MethodInfo info VideoAggregatorPad p) => OL.IsLabel t (VideoAggregatorPad -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- VVV Prop "repeat-after-eos"
-   -- Type: TBasicType TBoolean
-   -- Flags: [PropertyReadable,PropertyWritable]
-   -- Nullable: (Nothing,Nothing)
-
-{- |
-Get the value of the “@repeat-after-eos@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAggregatorPad #repeatAfterEos
-@
--}
-getVideoAggregatorPadRepeatAfterEos :: (MonadIO m, IsVideoAggregatorPad o) => o -> m Bool
-getVideoAggregatorPadRepeatAfterEos obj = liftIO $ B.Properties.getObjectPropertyBool obj "repeat-after-eos"
-
-{- |
-Set the value of the “@repeat-after-eos@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAggregatorPad [ #repeatAfterEos 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAggregatorPadRepeatAfterEos :: (MonadIO m, IsVideoAggregatorPad o) => o -> Bool -> m ()
-setVideoAggregatorPadRepeatAfterEos obj val = liftIO $ B.Properties.setObjectPropertyBool obj "repeat-after-eos" val
-
-{- |
-Construct a `GValueConstruct` with valid value for the “@repeat-after-eos@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
--}
-constructVideoAggregatorPadRepeatAfterEos :: (IsVideoAggregatorPad o) => Bool -> IO (GValueConstruct o)
-constructVideoAggregatorPadRepeatAfterEos val = B.Properties.constructObjectPropertyBool "repeat-after-eos" val
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadRepeatAfterEosPropertyInfo
-instance AttrInfo VideoAggregatorPadRepeatAfterEosPropertyInfo where
-    type AttrAllowedOps VideoAggregatorPadRepeatAfterEosPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
-    type AttrSetTypeConstraint VideoAggregatorPadRepeatAfterEosPropertyInfo = (~) Bool
-    type AttrBaseTypeConstraint VideoAggregatorPadRepeatAfterEosPropertyInfo = IsVideoAggregatorPad
-    type AttrGetType VideoAggregatorPadRepeatAfterEosPropertyInfo = Bool
-    type AttrLabel VideoAggregatorPadRepeatAfterEosPropertyInfo = "repeat-after-eos"
-    type AttrOrigin VideoAggregatorPadRepeatAfterEosPropertyInfo = VideoAggregatorPad
-    attrGet _ = getVideoAggregatorPadRepeatAfterEos
-    attrSet _ = setVideoAggregatorPadRepeatAfterEos
-    attrConstruct _ = constructVideoAggregatorPadRepeatAfterEos
-    attrClear _ = undefined
-#endif
-
--- VVV Prop "zorder"
-   -- Type: TBasicType TUInt
-   -- Flags: [PropertyReadable,PropertyWritable]
-   -- Nullable: (Nothing,Nothing)
-
-{- |
-Get the value of the “@zorder@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAggregatorPad #zorder
-@
--}
-getVideoAggregatorPadZorder :: (MonadIO m, IsVideoAggregatorPad o) => o -> m Word32
-getVideoAggregatorPadZorder obj = liftIO $ B.Properties.getObjectPropertyUInt32 obj "zorder"
-
-{- |
-Set the value of the “@zorder@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAggregatorPad [ #zorder 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAggregatorPadZorder :: (MonadIO m, IsVideoAggregatorPad o) => o -> Word32 -> m ()
-setVideoAggregatorPadZorder obj val = liftIO $ B.Properties.setObjectPropertyUInt32 obj "zorder" val
-
-{- |
-Construct a `GValueConstruct` with valid value for the “@zorder@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
--}
-constructVideoAggregatorPadZorder :: (IsVideoAggregatorPad o) => Word32 -> IO (GValueConstruct o)
-constructVideoAggregatorPadZorder val = B.Properties.constructObjectPropertyUInt32 "zorder" val
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadZorderPropertyInfo
-instance AttrInfo VideoAggregatorPadZorderPropertyInfo where
-    type AttrAllowedOps VideoAggregatorPadZorderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
-    type AttrSetTypeConstraint VideoAggregatorPadZorderPropertyInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoAggregatorPadZorderPropertyInfo = IsVideoAggregatorPad
-    type AttrGetType VideoAggregatorPadZorderPropertyInfo = Word32
-    type AttrLabel VideoAggregatorPadZorderPropertyInfo = "zorder"
-    type AttrOrigin VideoAggregatorPadZorderPropertyInfo = VideoAggregatorPad
-    attrGet _ = getVideoAggregatorPadZorder
-    attrSet _ = setVideoAggregatorPadZorder
-    attrConstruct _ = constructVideoAggregatorPadZorder
-    attrClear _ = undefined
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoAggregatorPad
-type instance O.AttributeList VideoAggregatorPad = VideoAggregatorPadAttributeList
-type VideoAggregatorPadAttributeList = ('[ '("caps", Gst.Pad.PadCapsPropertyInfo), '("direction", Gst.Pad.PadDirectionPropertyInfo), '("emitSignals", GstBase.AggregatorPad.AggregatorPadEmitSignalsPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("offset", Gst.Pad.PadOffsetPropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("repeatAfterEos", VideoAggregatorPadRepeatAfterEosPropertyInfo), '("template", Gst.Pad.PadTemplatePropertyInfo), '("zorder", VideoAggregatorPadZorderPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-videoAggregatorPadRepeatAfterEos :: AttrLabelProxy "repeatAfterEos"
-videoAggregatorPadRepeatAfterEos = AttrLabelProxy
-
-videoAggregatorPadZorder :: AttrLabelProxy "zorder"
-videoAggregatorPadZorder = AttrLabelProxy
-
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoAggregatorPad = VideoAggregatorPadSignalList
-type VideoAggregatorPadSignalList = ('[ '("bufferConsumed", GstBase.AggregatorPad.AggregatorPadBufferConsumedSignalInfo), '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("linked", Gst.Pad.PadLinkedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("unlinked", Gst.Pad.PadUnlinkedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
--- method VideoAggregatorPad::get_current_buffer
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "pad", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAggregatorPad", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_aggregator_pad_get_current_buffer" gst_video_aggregator_pad_get_current_buffer :: 
-    Ptr VideoAggregatorPad ->               -- pad : TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-Returns the currently queued buffer that is going to be used
-for the current output frame.
-
-This must only be called from the @/aggregate_frames()/@ virtual method,
-or from the @/prepare_frame()/@ virtual method of the aggregator pads.
-
-The return value is only valid until @/aggregate_frames()/@ or @/prepare_frames()/@
-returns.
--}
-videoAggregatorPadGetCurrentBuffer ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoAggregatorPad a) =>
-    a
-    {- ^ /@pad@/: a 'GI.GstVideo.Objects.VideoAggregatorPad.VideoAggregatorPad' -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ The currently queued buffer -}
-videoAggregatorPadGetCurrentBuffer pad = liftIO $ do
-    pad' <- unsafeManagedPtrCastPtr pad
-    result <- gst_video_aggregator_pad_get_current_buffer pad'
-    checkUnexpectedReturnNULL "videoAggregatorPadGetCurrentBuffer" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr pad
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadGetCurrentBufferMethodInfo
-instance (signature ~ (m Gst.Buffer.Buffer), MonadIO m, IsVideoAggregatorPad a) => O.MethodInfo VideoAggregatorPadGetCurrentBufferMethodInfo a signature where
-    overloadedMethod _ = videoAggregatorPadGetCurrentBuffer
-
-#endif
-
--- method VideoAggregatorPad::get_prepared_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "pad", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAggregatorPad", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_aggregator_pad_get_prepared_frame" gst_video_aggregator_pad_get_prepared_frame :: 
-    Ptr VideoAggregatorPad ->               -- pad : TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"})
-    IO (Ptr GstVideo.VideoFrame.VideoFrame)
-
-{- |
-Returns the currently prepared video frame that has to be aggregated into
-the current output frame.
-
-This must only be called from the @/aggregate_frames()/@ virtual method,
-or from the @/prepare_frame()/@ virtual method of the aggregator pads.
-
-The return value is only valid until @/aggregate_frames()/@ or @/prepare_frames()/@
-returns.
--}
-videoAggregatorPadGetPreparedFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoAggregatorPad a) =>
-    a
-    {- ^ /@pad@/: a 'GI.GstVideo.Objects.VideoAggregatorPad.VideoAggregatorPad' -}
-    -> m GstVideo.VideoFrame.VideoFrame
-    {- ^ __Returns:__ The currently prepared video frame -}
-videoAggregatorPadGetPreparedFrame pad = liftIO $ do
-    pad' <- unsafeManagedPtrCastPtr pad
-    result <- gst_video_aggregator_pad_get_prepared_frame pad'
-    checkUnexpectedReturnNULL "videoAggregatorPadGetPreparedFrame" result
-    result' <- (newPtr GstVideo.VideoFrame.VideoFrame) result
-    touchManagedPtr pad
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadGetPreparedFrameMethodInfo
-instance (signature ~ (m GstVideo.VideoFrame.VideoFrame), MonadIO m, IsVideoAggregatorPad a) => O.MethodInfo VideoAggregatorPadGetPreparedFrameMethodInfo a signature where
-    overloadedMethod _ = videoAggregatorPadGetPreparedFrame
-
-#endif
-
--- method VideoAggregatorPad::has_current_buffer
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "pad", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAggregatorPad", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_aggregator_pad_has_current_buffer" gst_video_aggregator_pad_has_current_buffer :: 
-    Ptr VideoAggregatorPad ->               -- pad : TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"})
-    IO CInt
-
-{- |
-Checks if the pad currently has a buffer queued that is going to be used
-for the current output frame.
-
-This must only be called from the @/aggregate_frames()/@ virtual method,
-or from the @/prepare_frame()/@ virtual method of the aggregator pads.
--}
-videoAggregatorPadHasCurrentBuffer ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoAggregatorPad a) =>
-    a
-    {- ^ /@pad@/: a 'GI.GstVideo.Objects.VideoAggregatorPad.VideoAggregatorPad' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if the pad has currently a buffer queued -}
-videoAggregatorPadHasCurrentBuffer pad = liftIO $ do
-    pad' <- unsafeManagedPtrCastPtr pad
-    result <- gst_video_aggregator_pad_has_current_buffer pad'
-    let result' = (/= 0) result
-    touchManagedPtr pad
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadHasCurrentBufferMethodInfo
-instance (signature ~ (m Bool), MonadIO m, IsVideoAggregatorPad a) => O.MethodInfo VideoAggregatorPadHasCurrentBufferMethodInfo a signature where
-    overloadedMethod _ = videoAggregatorPadHasCurrentBuffer
-
-#endif
-
--- method VideoAggregatorPad::set_needs_alpha
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "pad", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAggregatorPad", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "needs_alpha", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%TRUE if this pad requires alpha output", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_aggregator_pad_set_needs_alpha" gst_video_aggregator_pad_set_needs_alpha :: 
-    Ptr VideoAggregatorPad ->               -- pad : TInterface (Name {namespace = "GstVideo", name = "VideoAggregatorPad"})
-    CInt ->                                 -- needs_alpha : TBasicType TBoolean
-    IO ()
-
-{- |
-Allows selecting that this pad requires an output format with alpha
--}
-videoAggregatorPadSetNeedsAlpha ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoAggregatorPad a) =>
-    a
-    {- ^ /@pad@/: a 'GI.GstVideo.Objects.VideoAggregatorPad.VideoAggregatorPad' -}
-    -> Bool
-    {- ^ /@needsAlpha@/: 'True' if this pad requires alpha output -}
-    -> m ()
-videoAggregatorPadSetNeedsAlpha pad needsAlpha = liftIO $ do
-    pad' <- unsafeManagedPtrCastPtr pad
-    let needsAlpha' = (fromIntegral . fromEnum) needsAlpha
-    gst_video_aggregator_pad_set_needs_alpha pad' needsAlpha'
-    touchManagedPtr pad
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadSetNeedsAlphaMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoAggregatorPad a) => O.MethodInfo VideoAggregatorPadSetNeedsAlphaMethodInfo a signature where
-    overloadedMethod _ = videoAggregatorPadSetNeedsAlpha
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoAggregatorPad.hs-boot b/GI/GstVideo/Objects/VideoAggregatorPad.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoAggregatorPad.hs-boot
+++ /dev/null
@@ -1,47 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoAggregatorPad 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoAggregatorPad = VideoAggregatorPad (ManagedPtr VideoAggregatorPad)
-instance GObject VideoAggregatorPad where
-class (GObject o, O.IsDescendantOf VideoAggregatorPad o) => IsVideoAggregatorPad o
-instance (GObject o, O.IsDescendantOf VideoAggregatorPad o) => IsVideoAggregatorPad o
-instance O.HasParentTypes VideoAggregatorPad
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadRepeatAfterEosPropertyInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadZorderPropertyInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadGetCurrentBufferMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadGetPreparedFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadHasCurrentBufferMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoAggregatorPadSetNeedsAlphaMethodInfo
-#endif
diff --git a/GI/GstVideo/Objects/VideoBufferPool.hs b/GI/GstVideo/Objects/VideoBufferPool.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoBufferPool.hs
+++ /dev/null
@@ -1,190 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-/No description available in the introspection data./
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoBufferPool
-    ( 
-
--- * Exported types
-    VideoBufferPool(..)                     ,
-    IsVideoBufferPool                       ,
-    toVideoBufferPool                       ,
-    noVideoBufferPool                       ,
-
-
- -- * Methods
--- ** new #method:new#
-
-    videoBufferPoolNew                      ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Objects.BufferPool as Gst.BufferPool
-import qualified GI.Gst.Objects.Object as Gst.Object
-
--- | Memory-managed wrapper type.
-newtype VideoBufferPool = VideoBufferPool (ManagedPtr VideoBufferPool)
-foreign import ccall "gst_video_buffer_pool_get_type"
-    c_gst_video_buffer_pool_get_type :: IO GType
-
-instance GObject VideoBufferPool where
-    gobjectType = c_gst_video_buffer_pool_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoBufferPool`, for instance with `toVideoBufferPool`.
-class (GObject o, O.IsDescendantOf VideoBufferPool o) => IsVideoBufferPool o
-instance (GObject o, O.IsDescendantOf VideoBufferPool o) => IsVideoBufferPool o
-
-instance O.HasParentTypes VideoBufferPool
-type instance O.ParentTypes VideoBufferPool = '[Gst.BufferPool.BufferPool, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoBufferPool`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoBufferPool :: (MonadIO m, IsVideoBufferPool o) => o -> m VideoBufferPool
-toVideoBufferPool = liftIO . unsafeCastTo VideoBufferPool
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoBufferPool`.
-noVideoBufferPool :: Maybe VideoBufferPool
-noVideoBufferPool = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoBufferPoolMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoBufferPoolMethod "acquireBuffer" o = Gst.BufferPool.BufferPoolAcquireBufferMethodInfo
-    ResolveVideoBufferPoolMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoBufferPoolMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoBufferPoolMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoBufferPoolMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoBufferPoolMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoBufferPoolMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoBufferPoolMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoBufferPoolMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoBufferPoolMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoBufferPoolMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoBufferPoolMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoBufferPoolMethod "hasOption" o = Gst.BufferPool.BufferPoolHasOptionMethodInfo
-    ResolveVideoBufferPoolMethod "isActive" o = Gst.BufferPool.BufferPoolIsActiveMethodInfo
-    ResolveVideoBufferPoolMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoBufferPoolMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoBufferPoolMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoBufferPoolMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoBufferPoolMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoBufferPoolMethod "releaseBuffer" o = Gst.BufferPool.BufferPoolReleaseBufferMethodInfo
-    ResolveVideoBufferPoolMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoBufferPoolMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoBufferPoolMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoBufferPoolMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoBufferPoolMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoBufferPoolMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoBufferPoolMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoBufferPoolMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoBufferPoolMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoBufferPoolMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoBufferPoolMethod "getConfig" o = Gst.BufferPool.BufferPoolGetConfigMethodInfo
-    ResolveVideoBufferPoolMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoBufferPoolMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoBufferPoolMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoBufferPoolMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoBufferPoolMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoBufferPoolMethod "getOptions" o = Gst.BufferPool.BufferPoolGetOptionsMethodInfo
-    ResolveVideoBufferPoolMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoBufferPoolMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoBufferPoolMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoBufferPoolMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoBufferPoolMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoBufferPoolMethod "setActive" o = Gst.BufferPool.BufferPoolSetActiveMethodInfo
-    ResolveVideoBufferPoolMethod "setConfig" o = Gst.BufferPool.BufferPoolSetConfigMethodInfo
-    ResolveVideoBufferPoolMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoBufferPoolMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoBufferPoolMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoBufferPoolMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoBufferPoolMethod "setFlushing" o = Gst.BufferPool.BufferPoolSetFlushingMethodInfo
-    ResolveVideoBufferPoolMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoBufferPoolMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoBufferPoolMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoBufferPoolMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoBufferPoolMethod t VideoBufferPool, O.MethodInfo info VideoBufferPool p) => OL.IsLabel t (VideoBufferPool -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoBufferPool
-type instance O.AttributeList VideoBufferPool = VideoBufferPoolAttributeList
-type VideoBufferPoolAttributeList = ('[ '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoBufferPool = VideoBufferPoolSignalList
-type VideoBufferPoolSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-
-#endif
-
--- method VideoBufferPool::new
--- method type : Constructor
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoBufferPool"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_buffer_pool_new" gst_video_buffer_pool_new :: 
-    IO (Ptr VideoBufferPool)
-
-{- |
-Create a new bufferpool that can allocate video frames. This bufferpool
-supports all the video bufferpool options.
--}
-videoBufferPoolNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m VideoBufferPool
-    {- ^ __Returns:__ a new 'GI.Gst.Objects.BufferPool.BufferPool' to allocate video frames -}
-videoBufferPoolNew  = liftIO $ do
-    result <- gst_video_buffer_pool_new
-    checkUnexpectedReturnNULL "videoBufferPoolNew" result
-    result' <- (wrapObject VideoBufferPool) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoBufferPool.hs-boot b/GI/GstVideo/Objects/VideoBufferPool.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoBufferPool.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoBufferPool 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoBufferPool = VideoBufferPool (ManagedPtr VideoBufferPool)
-instance GObject VideoBufferPool where
-class (GObject o, O.IsDescendantOf VideoBufferPool o) => IsVideoBufferPool o
-instance (GObject o, O.IsDescendantOf VideoBufferPool o) => IsVideoBufferPool o
-instance O.HasParentTypes VideoBufferPool
diff --git a/GI/GstVideo/Objects/VideoDecoder.hs b/GI/GstVideo/Objects/VideoDecoder.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoDecoder.hs
+++ /dev/null
@@ -1,2011 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-This base class is for video decoders turning encoded data into raw video
-frames.
-
-The GstVideoDecoder base class and derived subclasses should cooperate as
-follows:
-
-== Configuration
-
-  * Initially, GstVideoDecoder calls /@start@/ when the decoder element
-    is activated, which allows the subclass to perform any global setup.
-
-  * GstVideoDecoder calls /@setFormat@/ to inform the subclass of caps
-    describing input video data that it is about to receive, including
-    possibly configuration data.
-    While unlikely, it might be called more than once, if changing input
-    parameters require reconfiguration.
-
-  * Incoming data buffers are processed as needed, described in Data
-    Processing below.
-
-  * GstVideoDecoder calls /@stop@/ at end of all processing.
-
-== Data processing
-
-    * The base class gathers input data, and optionally allows subclass
-      to parse this into subsequently manageable chunks, typically
-      corresponding to and referred to as \'frames\'.
-
-    * Each input frame is provided in turn to the subclass\' /@handleFrame@/
-      callback.
-      The ownership of the frame is given to the /@handleFrame@/ callback.
-
-    * If codec processing results in decoded data, the subclass should call
-      /@gstVideoDecoderFinishFrame@/ to have decoded data pushed.
-      downstream. Otherwise, the subclass must call
-      /@gstVideoDecoderDropFrame@/, to allow the base class to do timestamp
-      and offset tracking, and possibly to requeue the frame for a later
-      attempt in the case of reverse playback.
-
-== Shutdown phase
-
-  * The GstVideoDecoder class calls /@stop@/ to inform the subclass that data
-    parsing will be stopped.
-
-== Additional Notes
-
-  * Seeking\/Flushing
-
-    * When the pipeline is seeked or otherwise flushed, the subclass is
-      informed via a call to its /@reset@/ callback, with the hard parameter
-      set to true. This indicates the subclass should drop any internal data
-      queues and timestamps and prepare for a fresh set of buffers to arrive
-      for parsing and decoding.
-
-  * End Of Stream
-
-    * At end-of-stream, the subclass /@parse@/ function may be called some final
-      times with the at_eos parameter set to true, indicating that the element
-      should not expect any more data to be arriving, and it should parse and
-      remaining frames and call 'GI.GstVideo.Objects.VideoDecoder.videoDecoderHaveFrame' if possible.
-
-The subclass is responsible for providing pad template caps for
-source and sink pads. The pads need to be named \"sink\" and \"src\". It also
-needs to provide information about the ouptput caps, when they are known.
-This may be when the base class calls the subclass\' /@setFormat@/ function,
-though it might be during decoding, before calling
-/@gstVideoDecoderFinishFrame@/. This is done via
-/@gstVideoDecoderSetOutputState@/
-
-The subclass is also responsible for providing (presentation) timestamps
-(likely based on corresponding input ones).  If that is not applicable
-or possible, the base class provides limited framerate based interpolation.
-
-Similarly, the base class provides some limited (legacy) seeking support
-if specifically requested by the subclass, as full-fledged support
-should rather be left to upstream demuxer, parser or alike.  This simple
-approach caters for seeking and duration reporting using estimated input
-bitrates. To enable it, a subclass should call
-/@gstVideoDecoderSetEstimateRate@/ to enable handling of incoming
-byte-streams.
-
-The base class provides some support for reverse playback, in particular
-in case incoming data is not packetized or upstream does not provide
-fragments on keyframe boundaries.  However, the subclass should then be
-prepared for the parsing and frame processing stage to occur separately
-(in normal forward processing, the latter immediately follows the former),
-The subclass also needs to ensure the parsing stage properly marks
-keyframes, unless it knows the upstream elements will do so properly for
-incoming data.
-
-The bare minimum that a functional subclass needs to implement is:
-
-  * Provide pad templates
-  * Inform the base class of output caps via
-     /@gstVideoDecoderSetOutputState@/
-
-  * Parse input data, if it is not considered packetized from upstream
-     Data will be provided to /@parse@/ which should invoke
-     /@gstVideoDecoderAddToFrame@/ and /@gstVideoDecoderHaveFrame@/ to
-     separate the data belonging to each video frame.
-
-  * Accept data in /@handleFrame@/ and provide decoded results to
-     /@gstVideoDecoderFinishFrame@/, or call /@gstVideoDecoderDropFrame@/.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoDecoder
-    ( 
-
--- * Exported types
-    VideoDecoder(..)                        ,
-    IsVideoDecoder                          ,
-    toVideoDecoder                          ,
-    noVideoDecoder                          ,
-
-
- -- * Methods
--- ** addToFrame #method:addToFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderAddToFrameMethodInfo        ,
-#endif
-    videoDecoderAddToFrame                  ,
-
-
--- ** allocateOutputBuffer #method:allocateOutputBuffer#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderAllocateOutputBufferMethodInfo,
-#endif
-    videoDecoderAllocateOutputBuffer        ,
-
-
--- ** allocateOutputFrame #method:allocateOutputFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderAllocateOutputFrameMethodInfo,
-#endif
-    videoDecoderAllocateOutputFrame         ,
-
-
--- ** allocateOutputFrameWithParams #method:allocateOutputFrameWithParams#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderAllocateOutputFrameWithParamsMethodInfo,
-#endif
-    videoDecoderAllocateOutputFrameWithParams,
-
-
--- ** dropFrame #method:dropFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderDropFrameMethodInfo         ,
-#endif
-    videoDecoderDropFrame                   ,
-
-
--- ** finishFrame #method:finishFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderFinishFrameMethodInfo       ,
-#endif
-    videoDecoderFinishFrame                 ,
-
-
--- ** getAllocator #method:getAllocator#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetAllocatorMethodInfo      ,
-#endif
-    videoDecoderGetAllocator                ,
-
-
--- ** getBufferPool #method:getBufferPool#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetBufferPoolMethodInfo     ,
-#endif
-    videoDecoderGetBufferPool               ,
-
-
--- ** getEstimateRate #method:getEstimateRate#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetEstimateRateMethodInfo   ,
-#endif
-    videoDecoderGetEstimateRate             ,
-
-
--- ** getFrame #method:getFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetFrameMethodInfo          ,
-#endif
-    videoDecoderGetFrame                    ,
-
-
--- ** getFrames #method:getFrames#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetFramesMethodInfo         ,
-#endif
-    videoDecoderGetFrames                   ,
-
-
--- ** getLatency #method:getLatency#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetLatencyMethodInfo        ,
-#endif
-    videoDecoderGetLatency                  ,
-
-
--- ** getMaxDecodeTime #method:getMaxDecodeTime#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetMaxDecodeTimeMethodInfo  ,
-#endif
-    videoDecoderGetMaxDecodeTime            ,
-
-
--- ** getMaxErrors #method:getMaxErrors#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetMaxErrorsMethodInfo      ,
-#endif
-    videoDecoderGetMaxErrors                ,
-
-
--- ** getNeedsFormat #method:getNeedsFormat#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetNeedsFormatMethodInfo    ,
-#endif
-    videoDecoderGetNeedsFormat              ,
-
-
--- ** getOldestFrame #method:getOldestFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetOldestFrameMethodInfo    ,
-#endif
-    videoDecoderGetOldestFrame              ,
-
-
--- ** getOutputState #method:getOutputState#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetOutputStateMethodInfo    ,
-#endif
-    videoDecoderGetOutputState              ,
-
-
--- ** getPacketized #method:getPacketized#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetPacketizedMethodInfo     ,
-#endif
-    videoDecoderGetPacketized               ,
-
-
--- ** getPendingFrameSize #method:getPendingFrameSize#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetPendingFrameSizeMethodInfo,
-#endif
-    videoDecoderGetPendingFrameSize         ,
-
-
--- ** getQosProportion #method:getQosProportion#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderGetQosProportionMethodInfo  ,
-#endif
-    videoDecoderGetQosProportion            ,
-
-
--- ** haveFrame #method:haveFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderHaveFrameMethodInfo         ,
-#endif
-    videoDecoderHaveFrame                   ,
-
-
--- ** mergeTags #method:mergeTags#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderMergeTagsMethodInfo         ,
-#endif
-    videoDecoderMergeTags                   ,
-
-
--- ** negotiate #method:negotiate#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderNegotiateMethodInfo         ,
-#endif
-    videoDecoderNegotiate                   ,
-
-
--- ** proxyGetcaps #method:proxyGetcaps#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderProxyGetcapsMethodInfo      ,
-#endif
-    videoDecoderProxyGetcaps                ,
-
-
--- ** releaseFrame #method:releaseFrame#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderReleaseFrameMethodInfo      ,
-#endif
-    videoDecoderReleaseFrame                ,
-
-
--- ** setEstimateRate #method:setEstimateRate#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetEstimateRateMethodInfo   ,
-#endif
-    videoDecoderSetEstimateRate             ,
-
-
--- ** setInterlacedOutputState #method:setInterlacedOutputState#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetInterlacedOutputStateMethodInfo,
-#endif
-    videoDecoderSetInterlacedOutputState    ,
-
-
--- ** setLatency #method:setLatency#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetLatencyMethodInfo        ,
-#endif
-    videoDecoderSetLatency                  ,
-
-
--- ** setMaxErrors #method:setMaxErrors#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetMaxErrorsMethodInfo      ,
-#endif
-    videoDecoderSetMaxErrors                ,
-
-
--- ** setNeedsFormat #method:setNeedsFormat#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetNeedsFormatMethodInfo    ,
-#endif
-    videoDecoderSetNeedsFormat              ,
-
-
--- ** setOutputState #method:setOutputState#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetOutputStateMethodInfo    ,
-#endif
-    videoDecoderSetOutputState              ,
-
-
--- ** setPacketized #method:setPacketized#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetPacketizedMethodInfo     ,
-#endif
-    videoDecoderSetPacketized               ,
-
-
--- ** setUseDefaultPadAcceptcaps #method:setUseDefaultPadAcceptcaps#
-
-#if ENABLE_OVERLOADING
-    VideoDecoderSetUseDefaultPadAcceptcapsMethodInfo,
-#endif
-    videoDecoderSetUseDefaultPadAcceptcaps  ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Enums as Gst.Enums
-import qualified GI.Gst.Objects.Allocator as Gst.Allocator
-import qualified GI.Gst.Objects.BufferPool as Gst.BufferPool
-import qualified GI.Gst.Objects.Element as Gst.Element
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.Gst.Structs.AllocationParams as Gst.AllocationParams
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-import qualified GI.Gst.Structs.BufferPoolAcquireParams as Gst.BufferPoolAcquireParams
-import qualified GI.Gst.Structs.Caps as Gst.Caps
-import qualified GI.Gst.Structs.TagList as Gst.TagList
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoCodecFrame as GstVideo.VideoCodecFrame
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoCodecState as GstVideo.VideoCodecState
-
--- | Memory-managed wrapper type.
-newtype VideoDecoder = VideoDecoder (ManagedPtr VideoDecoder)
-foreign import ccall "gst_video_decoder_get_type"
-    c_gst_video_decoder_get_type :: IO GType
-
-instance GObject VideoDecoder where
-    gobjectType = c_gst_video_decoder_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoDecoder`, for instance with `toVideoDecoder`.
-class (GObject o, O.IsDescendantOf VideoDecoder o) => IsVideoDecoder o
-instance (GObject o, O.IsDescendantOf VideoDecoder o) => IsVideoDecoder o
-
-instance O.HasParentTypes VideoDecoder
-type instance O.ParentTypes VideoDecoder = '[Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoDecoder`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoDecoder :: (MonadIO m, IsVideoDecoder o) => o -> m VideoDecoder
-toVideoDecoder = liftIO . unsafeCastTo VideoDecoder
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoDecoder`.
-noVideoDecoder :: Maybe VideoDecoder
-noVideoDecoder = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoDecoderMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoDecoderMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
-    ResolveVideoDecoderMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoDecoderMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
-    ResolveVideoDecoderMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
-    ResolveVideoDecoderMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
-    ResolveVideoDecoderMethod "addToFrame" o = VideoDecoderAddToFrameMethodInfo
-    ResolveVideoDecoderMethod "allocateOutputBuffer" o = VideoDecoderAllocateOutputBufferMethodInfo
-    ResolveVideoDecoderMethod "allocateOutputFrame" o = VideoDecoderAllocateOutputFrameMethodInfo
-    ResolveVideoDecoderMethod "allocateOutputFrameWithParams" o = VideoDecoderAllocateOutputFrameWithParamsMethodInfo
-    ResolveVideoDecoderMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoDecoderMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoDecoderMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
-    ResolveVideoDecoderMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
-    ResolveVideoDecoderMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
-    ResolveVideoDecoderMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
-    ResolveVideoDecoderMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoDecoderMethod "dropFrame" o = VideoDecoderDropFrameMethodInfo
-    ResolveVideoDecoderMethod "finishFrame" o = VideoDecoderFinishFrameMethodInfo
-    ResolveVideoDecoderMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoDecoderMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
-    ResolveVideoDecoderMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
-    ResolveVideoDecoderMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
-    ResolveVideoDecoderMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoDecoderMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoDecoderMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoDecoderMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoDecoderMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoDecoderMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoDecoderMethod "haveFrame" o = VideoDecoderHaveFrameMethodInfo
-    ResolveVideoDecoderMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoDecoderMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
-    ResolveVideoDecoderMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
-    ResolveVideoDecoderMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
-    ResolveVideoDecoderMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
-    ResolveVideoDecoderMethod "link" o = Gst.Element.ElementLinkMethodInfo
-    ResolveVideoDecoderMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
-    ResolveVideoDecoderMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
-    ResolveVideoDecoderMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
-    ResolveVideoDecoderMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
-    ResolveVideoDecoderMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
-    ResolveVideoDecoderMethod "mergeTags" o = VideoDecoderMergeTagsMethodInfo
-    ResolveVideoDecoderMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
-    ResolveVideoDecoderMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
-    ResolveVideoDecoderMethod "negotiate" o = VideoDecoderNegotiateMethodInfo
-    ResolveVideoDecoderMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
-    ResolveVideoDecoderMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoDecoderMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoDecoderMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
-    ResolveVideoDecoderMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
-    ResolveVideoDecoderMethod "proxyGetcaps" o = VideoDecoderProxyGetcapsMethodInfo
-    ResolveVideoDecoderMethod "query" o = Gst.Element.ElementQueryMethodInfo
-    ResolveVideoDecoderMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
-    ResolveVideoDecoderMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
-    ResolveVideoDecoderMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
-    ResolveVideoDecoderMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoDecoderMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoDecoderMethod "releaseFrame" o = VideoDecoderReleaseFrameMethodInfo
-    ResolveVideoDecoderMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
-    ResolveVideoDecoderMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoDecoderMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
-    ResolveVideoDecoderMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
-    ResolveVideoDecoderMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
-    ResolveVideoDecoderMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoDecoderMethod "seek" o = Gst.Element.ElementSeekMethodInfo
-    ResolveVideoDecoderMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
-    ResolveVideoDecoderMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
-    ResolveVideoDecoderMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoDecoderMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoDecoderMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoDecoderMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
-    ResolveVideoDecoderMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoDecoderMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoDecoderMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
-    ResolveVideoDecoderMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
-    ResolveVideoDecoderMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoDecoderMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoDecoderMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoDecoderMethod "getAllocator" o = VideoDecoderGetAllocatorMethodInfo
-    ResolveVideoDecoderMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
-    ResolveVideoDecoderMethod "getBufferPool" o = VideoDecoderGetBufferPoolMethodInfo
-    ResolveVideoDecoderMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
-    ResolveVideoDecoderMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
-    ResolveVideoDecoderMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
-    ResolveVideoDecoderMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
-    ResolveVideoDecoderMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
-    ResolveVideoDecoderMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
-    ResolveVideoDecoderMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
-    ResolveVideoDecoderMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoDecoderMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoDecoderMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoDecoderMethod "getEstimateRate" o = VideoDecoderGetEstimateRateMethodInfo
-    ResolveVideoDecoderMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
-    ResolveVideoDecoderMethod "getFrame" o = VideoDecoderGetFrameMethodInfo
-    ResolveVideoDecoderMethod "getFrames" o = VideoDecoderGetFramesMethodInfo
-    ResolveVideoDecoderMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoDecoderMethod "getLatency" o = VideoDecoderGetLatencyMethodInfo
-    ResolveVideoDecoderMethod "getMaxDecodeTime" o = VideoDecoderGetMaxDecodeTimeMethodInfo
-    ResolveVideoDecoderMethod "getMaxErrors" o = VideoDecoderGetMaxErrorsMethodInfo
-    ResolveVideoDecoderMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
-    ResolveVideoDecoderMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoDecoderMethod "getNeedsFormat" o = VideoDecoderGetNeedsFormatMethodInfo
-    ResolveVideoDecoderMethod "getOldestFrame" o = VideoDecoderGetOldestFrameMethodInfo
-    ResolveVideoDecoderMethod "getOutputState" o = VideoDecoderGetOutputStateMethodInfo
-    ResolveVideoDecoderMethod "getPacketized" o = VideoDecoderGetPacketizedMethodInfo
-    ResolveVideoDecoderMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
-    ResolveVideoDecoderMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
-    ResolveVideoDecoderMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoDecoderMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoDecoderMethod "getPendingFrameSize" o = VideoDecoderGetPendingFrameSizeMethodInfo
-    ResolveVideoDecoderMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoDecoderMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoDecoderMethod "getQosProportion" o = VideoDecoderGetQosProportionMethodInfo
-    ResolveVideoDecoderMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
-    ResolveVideoDecoderMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
-    ResolveVideoDecoderMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
-    ResolveVideoDecoderMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
-    ResolveVideoDecoderMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoDecoderMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
-    ResolveVideoDecoderMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
-    ResolveVideoDecoderMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
-    ResolveVideoDecoderMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
-    ResolveVideoDecoderMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoDecoderMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoDecoderMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoDecoderMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoDecoderMethod "setEstimateRate" o = VideoDecoderSetEstimateRateMethodInfo
-    ResolveVideoDecoderMethod "setInterlacedOutputState" o = VideoDecoderSetInterlacedOutputStateMethodInfo
-    ResolveVideoDecoderMethod "setLatency" o = VideoDecoderSetLatencyMethodInfo
-    ResolveVideoDecoderMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
-    ResolveVideoDecoderMethod "setMaxErrors" o = VideoDecoderSetMaxErrorsMethodInfo
-    ResolveVideoDecoderMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoDecoderMethod "setNeedsFormat" o = VideoDecoderSetNeedsFormatMethodInfo
-    ResolveVideoDecoderMethod "setOutputState" o = VideoDecoderSetOutputStateMethodInfo
-    ResolveVideoDecoderMethod "setPacketized" o = VideoDecoderSetPacketizedMethodInfo
-    ResolveVideoDecoderMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoDecoderMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoDecoderMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
-    ResolveVideoDecoderMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
-    ResolveVideoDecoderMethod "setUseDefaultPadAcceptcaps" o = VideoDecoderSetUseDefaultPadAcceptcapsMethodInfo
-    ResolveVideoDecoderMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoDecoderMethod t VideoDecoder, O.MethodInfo info VideoDecoder p) => OL.IsLabel t (VideoDecoder -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoDecoder
-type instance O.AttributeList VideoDecoder = VideoDecoderAttributeList
-type VideoDecoderAttributeList = ('[ '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoDecoder = VideoDecoderSignalList
-type VideoDecoderSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
--- method VideoDecoder::add_to_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_bytes", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of bytes to add", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_add_to_frame" gst_video_decoder_add_to_frame :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Int32 ->                                -- n_bytes : TBasicType TInt
-    IO ()
-
-{- |
-Removes next /@nBytes@/ of input data and adds it to currently parsed frame.
--}
-videoDecoderAddToFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Int32
-    {- ^ /@nBytes@/: the number of bytes to add -}
-    -> m ()
-videoDecoderAddToFrame decoder nBytes = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    gst_video_decoder_add_to_frame decoder' nBytes
-    touchManagedPtr decoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderAddToFrameMethodInfo
-instance (signature ~ (Int32 -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderAddToFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderAddToFrame
-
-#endif
-
--- method VideoDecoder::allocate_output_buffer
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_allocate_output_buffer" gst_video_decoder_allocate_output_buffer :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-Helper function that allocates a buffer to hold a video frame for /@decoder@/\'s
-current 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
-
-You should use 'GI.GstVideo.Objects.VideoDecoder.videoDecoderAllocateOutputFrame' instead of this
-function, if possible at all.
--}
-videoDecoderAllocateOutputBuffer ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ allocated buffer, or NULL if no buffer could be
-    allocated (e.g. when downstream is flushing or shutting down) -}
-videoDecoderAllocateOutputBuffer decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_allocate_output_buffer decoder'
-    checkUnexpectedReturnNULL "videoDecoderAllocateOutputBuffer" result
-    result' <- (wrapBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderAllocateOutputBufferMethodInfo
-instance (signature ~ (m Gst.Buffer.Buffer), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderAllocateOutputBufferMethodInfo a signature where
-    overloadedMethod _ = videoDecoderAllocateOutputBuffer
-
-#endif
-
--- method VideoDecoder::allocate_output_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_allocate_output_frame" gst_video_decoder_allocate_output_frame :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO CInt
-
-{- |
-Helper function that allocates a buffer to hold a video frame for /@decoder@/\'s
-current 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.  Subclass should already have configured video
-state and set src pad caps.
-
-The buffer allocated here is owned by the frame and you should only
-keep references to the frame, not the buffer.
--}
-videoDecoderAllocateOutputFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ 'GI.Gst.Enums.FlowReturnOk' if an output buffer could be allocated -}
-videoDecoderAllocateOutputFrame decoder frame = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    frame' <- unsafeManagedPtrGetPtr frame
-    result <- gst_video_decoder_allocate_output_frame decoder' frame'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr decoder
-    touchManagedPtr frame
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderAllocateOutputFrameMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m Gst.Enums.FlowReturn), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderAllocateOutputFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderAllocateOutputFrame
-
-#endif
-
--- method VideoDecoder::allocate_output_frame_with_params
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "params", argType = TInterface (Name {namespace = "Gst", name = "BufferPoolAcquireParams"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBufferPoolAcquireParams", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_allocate_output_frame_with_params" gst_video_decoder_allocate_output_frame_with_params :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    Ptr Gst.BufferPoolAcquireParams.BufferPoolAcquireParams -> -- params : TInterface (Name {namespace = "Gst", name = "BufferPoolAcquireParams"})
-    IO CInt
-
-{- |
-Same as @/gst_video_decoder_allocate_output_frame/@ except it allows passing
-'GI.Gst.Structs.BufferPoolAcquireParams.BufferPoolAcquireParams' to the sub call gst_buffer_pool_acquire_buffer.
-
-/Since: 1.12/
--}
-videoDecoderAllocateOutputFrameWithParams ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> Gst.BufferPoolAcquireParams.BufferPoolAcquireParams
-    {- ^ /@params@/: a 'GI.Gst.Structs.BufferPoolAcquireParams.BufferPoolAcquireParams' -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ 'GI.Gst.Enums.FlowReturnOk' if an output buffer could be allocated -}
-videoDecoderAllocateOutputFrameWithParams decoder frame params = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    frame' <- unsafeManagedPtrGetPtr frame
-    params' <- unsafeManagedPtrGetPtr params
-    result <- gst_video_decoder_allocate_output_frame_with_params decoder' frame' params'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr decoder
-    touchManagedPtr frame
-    touchManagedPtr params
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderAllocateOutputFrameWithParamsMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> Gst.BufferPoolAcquireParams.BufferPoolAcquireParams -> m Gst.Enums.FlowReturn), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderAllocateOutputFrameWithParamsMethodInfo a signature where
-    overloadedMethod _ = videoDecoderAllocateOutputFrameWithParams
-
-#endif
-
--- method VideoDecoder::drop_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoCodecFrame to drop", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_drop_frame" gst_video_decoder_drop_frame :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO CInt
-
-{- |
-Similar to 'GI.GstVideo.Objects.VideoDecoder.videoDecoderFinishFrame', but drops /@frame@/ in any
-case and posts a QoS message with the frame\'s details on the bus.
-In any case, the frame is considered finished and released.
--}
-videoDecoderDropFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: the 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' to drop -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ a 'GI.Gst.Enums.FlowReturn', usually GST_FLOW_OK. -}
-videoDecoderDropFrame dec frame = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    frame' <- B.ManagedPtr.disownBoxed frame
-    result <- gst_video_decoder_drop_frame dec' frame'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr dec
-    touchManagedPtr frame
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderDropFrameMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m Gst.Enums.FlowReturn), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderDropFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderDropFrame
-
-#endif
-
--- method VideoDecoder::finish_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a decoded #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_finish_frame" gst_video_decoder_finish_frame :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO CInt
-
-{- |
-/@frame@/ should have a valid decoded data buffer, whose metadata fields
-are then appropriately set according to frame data and pushed downstream.
-If no output data is provided, /@frame@/ is considered skipped.
-In any case, the frame is considered finished and released.
-
-After calling this function the output buffer of the frame is to be
-considered read-only. This function will also change the metadata
-of the buffer.
--}
-videoDecoderFinishFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: a decoded 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ a 'GI.Gst.Enums.FlowReturn' resulting from sending data downstream -}
-videoDecoderFinishFrame decoder frame = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    frame' <- B.ManagedPtr.disownBoxed frame
-    result <- gst_video_decoder_finish_frame decoder' frame'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr decoder
-    touchManagedPtr frame
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderFinishFrameMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m Gst.Enums.FlowReturn), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderFinishFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderFinishFrame
-
-#endif
-
--- method VideoDecoder::get_allocator
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "allocator", argType = TInterface (Name {namespace = "Gst", name = "Allocator"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstAllocator\nused", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "params", argType = TInterface (Name {namespace = "Gst", name = "AllocationParams"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the\n#GstAllocationParams of @allocator", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_allocator" gst_video_decoder_get_allocator :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr (Ptr Gst.Allocator.Allocator) ->    -- allocator : TInterface (Name {namespace = "Gst", name = "Allocator"})
-    Ptr Gst.AllocationParams.AllocationParams -> -- params : TInterface (Name {namespace = "Gst", name = "AllocationParams"})
-    IO ()
-
-{- |
-Lets 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' sub-classes to know the memory /@allocator@/
-used by the base class and its /@params@/.
-
-Unref the /@allocator@/ after use it.
--}
-videoDecoderGetAllocator ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m ((Gst.Allocator.Allocator, Gst.AllocationParams.AllocationParams))
-videoDecoderGetAllocator decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    allocator <- allocMem :: IO (Ptr (Ptr Gst.Allocator.Allocator))
-    params <- callocBoxedBytes 64 :: IO (Ptr Gst.AllocationParams.AllocationParams)
-    gst_video_decoder_get_allocator decoder' allocator params
-    allocator' <- peek allocator
-    allocator'' <- (wrapObject Gst.Allocator.Allocator) allocator'
-    params' <- (wrapBoxed Gst.AllocationParams.AllocationParams) params
-    touchManagedPtr decoder
-    freeMem allocator
-    return (allocator'', params')
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetAllocatorMethodInfo
-instance (signature ~ (m ((Gst.Allocator.Allocator, Gst.AllocationParams.AllocationParams))), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetAllocatorMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetAllocator
-
-#endif
-
--- method VideoDecoder::get_buffer_pool
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "BufferPool"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_buffer_pool" gst_video_decoder_get_buffer_pool :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO (Ptr Gst.BufferPool.BufferPool)
-
-{- |
-/No description available in the introspection data./
--}
-videoDecoderGetBufferPool ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Gst.BufferPool.BufferPool
-    {- ^ __Returns:__ the instance of the 'GI.Gst.Objects.BufferPool.BufferPool' used
-by the decoder; free it after use it -}
-videoDecoderGetBufferPool decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_buffer_pool decoder'
-    checkUnexpectedReturnNULL "videoDecoderGetBufferPool" result
-    result' <- (wrapObject Gst.BufferPool.BufferPool) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetBufferPoolMethodInfo
-instance (signature ~ (m Gst.BufferPool.BufferPool), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetBufferPoolMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetBufferPool
-
-#endif
-
--- method VideoDecoder::get_estimate_rate
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_estimate_rate" gst_video_decoder_get_estimate_rate :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO Int32
-
-{- |
-/No description available in the introspection data./
--}
-videoDecoderGetEstimateRate ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Int32
-    {- ^ __Returns:__ currently configured byte to time conversion setting -}
-videoDecoderGetEstimateRate dec = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    result <- gst_video_decoder_get_estimate_rate dec'
-    touchManagedPtr dec
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetEstimateRateMethodInfo
-instance (signature ~ (m Int32), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetEstimateRateMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetEstimateRate
-
-#endif
-
--- method VideoDecoder::get_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame_number", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "system_frame_number of a frame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_frame" gst_video_decoder_get_frame :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Int32 ->                                -- frame_number : TBasicType TInt
-    IO (Ptr GstVideo.VideoCodecFrame.VideoCodecFrame)
-
-{- |
-Get a pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-videoDecoderGetFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Int32
-    {- ^ /@frameNumber@/: system_frame_number of a frame -}
-    -> m GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ __Returns:__ pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' identified by /@frameNumber@/. -}
-videoDecoderGetFrame decoder frameNumber = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_frame decoder' frameNumber
-    checkUnexpectedReturnNULL "videoDecoderGetFrame" result
-    result' <- (wrapBoxed GstVideo.VideoCodecFrame.VideoCodecFrame) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetFrameMethodInfo
-instance (signature ~ (Int32 -> m GstVideo.VideoCodecFrame.VideoCodecFrame), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetFrame
-
-#endif
-
--- method VideoDecoder::get_frames
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TGList (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_frames" gst_video_decoder_get_frames :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO (Ptr (GList (Ptr GstVideo.VideoCodecFrame.VideoCodecFrame)))
-
-{- |
-Get all pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-videoDecoderGetFrames ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m [GstVideo.VideoCodecFrame.VideoCodecFrame]
-    {- ^ __Returns:__ pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'. -}
-videoDecoderGetFrames decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_frames decoder'
-    result' <- unpackGList result
-    result'' <- mapM (wrapBoxed GstVideo.VideoCodecFrame.VideoCodecFrame) result'
-    g_list_free result
-    touchManagedPtr decoder
-    return result''
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetFramesMethodInfo
-instance (signature ~ (m [GstVideo.VideoCodecFrame.VideoCodecFrame]), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetFramesMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetFrames
-
-#endif
-
--- method VideoDecoder::get_latency
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "min_latency", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address of variable in which to store the\n    configured minimum latency, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "max_latency", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address of variable in which to store the\n    configured mximum latency, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_latency" gst_video_decoder_get_latency :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr Word64 ->                           -- min_latency : TBasicType TUInt64
-    Ptr Word64 ->                           -- max_latency : TBasicType TUInt64
-    IO ()
-
-{- |
-Query the configured decoder latency. Results will be returned via
-/@minLatency@/ and /@maxLatency@/.
--}
-videoDecoderGetLatency ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m ((Word64, Word64))
-videoDecoderGetLatency decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    minLatency <- allocMem :: IO (Ptr Word64)
-    maxLatency <- allocMem :: IO (Ptr Word64)
-    gst_video_decoder_get_latency decoder' minLatency maxLatency
-    minLatency' <- peek minLatency
-    maxLatency' <- peek maxLatency
-    touchManagedPtr decoder
-    freeMem minLatency
-    freeMem maxLatency
-    return (minLatency', maxLatency')
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetLatencyMethodInfo
-instance (signature ~ (m ((Word64, Word64))), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetLatencyMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetLatency
-
-#endif
-
--- method VideoDecoder::get_max_decode_time
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TInt64)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_max_decode_time" gst_video_decoder_get_max_decode_time :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO Int64
-
-{- |
-Determines maximum possible decoding time for /@frame@/ that will
-allow it to decode and arrive in time (as determined by QoS events).
-In particular, a negative result means decoding in time is no longer possible
-and should therefore occur as soon\/skippy as possible.
--}
-videoDecoderGetMaxDecodeTime ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m Int64
-    {- ^ __Returns:__ max decoding time. -}
-videoDecoderGetMaxDecodeTime decoder frame = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    frame' <- unsafeManagedPtrGetPtr frame
-    result <- gst_video_decoder_get_max_decode_time decoder' frame'
-    touchManagedPtr decoder
-    touchManagedPtr frame
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetMaxDecodeTimeMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m Int64), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetMaxDecodeTimeMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetMaxDecodeTime
-
-#endif
-
--- method VideoDecoder::get_max_errors
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_max_errors" gst_video_decoder_get_max_errors :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO Int32
-
-{- |
-/No description available in the introspection data./
--}
-videoDecoderGetMaxErrors ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Int32
-    {- ^ __Returns:__ currently configured decoder tolerated error count. -}
-videoDecoderGetMaxErrors dec = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    result <- gst_video_decoder_get_max_errors dec'
-    touchManagedPtr dec
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetMaxErrorsMethodInfo
-instance (signature ~ (m Int32), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetMaxErrorsMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetMaxErrors
-
-#endif
-
--- method VideoDecoder::get_needs_format
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_needs_format" gst_video_decoder_get_needs_format :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO CInt
-
-{- |
-Queries decoder required format handling.
-
-/Since: 1.4/
--}
-videoDecoderGetNeedsFormat ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if required format handling is enabled. -}
-videoDecoderGetNeedsFormat dec = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    result <- gst_video_decoder_get_needs_format dec'
-    let result' = (/= 0) result
-    touchManagedPtr dec
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetNeedsFormatMethodInfo
-instance (signature ~ (m Bool), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetNeedsFormatMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetNeedsFormat
-
-#endif
-
--- method VideoDecoder::get_oldest_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_oldest_frame" gst_video_decoder_get_oldest_frame :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO (Ptr GstVideo.VideoCodecFrame.VideoCodecFrame)
-
-{- |
-Get the oldest pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-videoDecoderGetOldestFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ __Returns:__ oldest pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'. -}
-videoDecoderGetOldestFrame decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_oldest_frame decoder'
-    checkUnexpectedReturnNULL "videoDecoderGetOldestFrame" result
-    result' <- (wrapBoxed GstVideo.VideoCodecFrame.VideoCodecFrame) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetOldestFrameMethodInfo
-instance (signature ~ (m GstVideo.VideoCodecFrame.VideoCodecFrame), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetOldestFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetOldestFrame
-
-#endif
-
--- method VideoDecoder::get_output_state
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_output_state" gst_video_decoder_get_output_state :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO (Ptr GstVideo.VideoCodecState.VideoCodecState)
-
-{- |
-Get the 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' currently describing the output stream.
--}
-videoDecoderGetOutputState ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m GstVideo.VideoCodecState.VideoCodecState
-    {- ^ __Returns:__ 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' describing format of video data. -}
-videoDecoderGetOutputState decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_output_state decoder'
-    checkUnexpectedReturnNULL "videoDecoderGetOutputState" result
-    result' <- (wrapBoxed GstVideo.VideoCodecState.VideoCodecState) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetOutputStateMethodInfo
-instance (signature ~ (m GstVideo.VideoCodecState.VideoCodecState), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetOutputStateMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetOutputState
-
-#endif
-
--- method VideoDecoder::get_packetized
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_packetized" gst_video_decoder_get_packetized :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO CInt
-
-{- |
-Queries whether input data is considered packetized or not by the
-base class.
--}
-videoDecoderGetPacketized ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Bool
-    {- ^ __Returns:__ TRUE if input data is considered packetized. -}
-videoDecoderGetPacketized decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_packetized decoder'
-    let result' = (/= 0) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetPacketizedMethodInfo
-instance (signature ~ (m Bool), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetPacketizedMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetPacketized
-
-#endif
-
--- method VideoDecoder::get_pending_frame_size
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt64)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_pending_frame_size" gst_video_decoder_get_pending_frame_size :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO Word64
-
-{- |
-Returns the number of bytes previously added to the current frame
-by calling 'GI.GstVideo.Objects.VideoDecoder.videoDecoderAddToFrame'.
-
-/Since: 1.4/
--}
-videoDecoderGetPendingFrameSize ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Word64
-    {- ^ __Returns:__ The number of bytes pending for the current frame -}
-videoDecoderGetPendingFrameSize decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_pending_frame_size decoder'
-    touchManagedPtr decoder
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetPendingFrameSizeMethodInfo
-instance (signature ~ (m Word64), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetPendingFrameSizeMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetPendingFrameSize
-
-#endif
-
--- method VideoDecoder::get_qos_proportion
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder\n    current QoS proportion, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TDouble)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_get_qos_proportion" gst_video_decoder_get_qos_proportion :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO CDouble
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.0.3/
--}
-videoDecoderGetQosProportion ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder'
-    current QoS proportion, or 'Nothing' -}
-    -> m Double
-    {- ^ __Returns:__ The current QoS proportion. -}
-videoDecoderGetQosProportion decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_get_qos_proportion decoder'
-    let result' = realToFrac result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderGetQosProportionMethodInfo
-instance (signature ~ (m Double), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderGetQosProportionMethodInfo a signature where
-    overloadedMethod _ = videoDecoderGetQosProportion
-
-#endif
-
--- method VideoDecoder::have_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_have_frame" gst_video_decoder_have_frame :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO CInt
-
-{- |
-Gathers all data collected for currently parsed frame, gathers corresponding
-metadata and passes it along for further processing, i.e. /@handleFrame@/.
--}
-videoDecoderHaveFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ a 'GI.Gst.Enums.FlowReturn' -}
-videoDecoderHaveFrame decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_have_frame decoder'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderHaveFrameMethodInfo
-instance (signature ~ (m Gst.Enums.FlowReturn), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderHaveFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderHaveFrame
-
-#endif
-
--- method VideoDecoder::merge_tags
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tags", argType = TInterface (Name {namespace = "Gst", name = "TagList"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a #GstTagList to merge, or NULL to unset\n    previously-set tags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mode", argType = TInterface (Name {namespace = "Gst", name = "TagMergeMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_merge_tags" gst_video_decoder_merge_tags :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr Gst.TagList.TagList ->              -- tags : TInterface (Name {namespace = "Gst", name = "TagList"})
-    CUInt ->                                -- mode : TInterface (Name {namespace = "Gst", name = "TagMergeMode"})
-    IO ()
-
-{- |
-Sets the audio decoder tags and how they should be merged with any
-upstream stream tags. This will override any tags previously-set
-with @/gst_audio_decoder_merge_tags()/@.
-
-Note that this is provided for convenience, and the subclass is
-not required to use this and can still do tag handling on its own.
-
-MT safe.
--}
-videoDecoderMergeTags ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Maybe (Gst.TagList.TagList)
-    {- ^ /@tags@/: a 'GI.Gst.Structs.TagList.TagList' to merge, or NULL to unset
-    previously-set tags -}
-    -> Gst.Enums.TagMergeMode
-    {- ^ /@mode@/: the 'GI.Gst.Enums.TagMergeMode' to use, usually @/GST_TAG_MERGE_REPLACE/@ -}
-    -> m ()
-videoDecoderMergeTags decoder tags mode = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    maybeTags <- case tags of
-        Nothing -> return nullPtr
-        Just jTags -> do
-            jTags' <- unsafeManagedPtrGetPtr jTags
-            return jTags'
-    let mode' = (fromIntegral . fromEnum) mode
-    gst_video_decoder_merge_tags decoder' maybeTags mode'
-    touchManagedPtr decoder
-    whenJust tags touchManagedPtr
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderMergeTagsMethodInfo
-instance (signature ~ (Maybe (Gst.TagList.TagList) -> Gst.Enums.TagMergeMode -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderMergeTagsMethodInfo a signature where
-    overloadedMethod _ = videoDecoderMergeTags
-
-#endif
-
--- method VideoDecoder::negotiate
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_negotiate" gst_video_decoder_negotiate :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    IO CInt
-
-{- |
-Negotiate with downstream elements to currently configured 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
-Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
-negotiate fails.
--}
-videoDecoderNegotiate ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if the negotiation succeeded, else 'False'. -}
-videoDecoderNegotiate decoder = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    result <- gst_video_decoder_negotiate decoder'
-    let result' = (/= 0) result
-    touchManagedPtr decoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderNegotiateMethodInfo
-instance (signature ~ (m Bool), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderNegotiateMethodInfo a signature where
-    overloadedMethod _ = videoDecoderNegotiate
-
-#endif
-
--- method VideoDecoder::proxy_getcaps
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "caps", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "initial caps", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filter", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "filter caps", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Caps"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_proxy_getcaps" gst_video_decoder_proxy_getcaps :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr Gst.Caps.Caps ->                    -- caps : TInterface (Name {namespace = "Gst", name = "Caps"})
-    Ptr Gst.Caps.Caps ->                    -- filter : TInterface (Name {namespace = "Gst", name = "Caps"})
-    IO (Ptr Gst.Caps.Caps)
-
-{- |
-Returns caps that express /@caps@/ (or sink template caps if /@caps@/ == NULL)
-restricted to resolution\/format\/... combinations supported by downstream
-elements.
-
-/Since: 1.6/
--}
-videoDecoderProxyGetcaps ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Maybe (Gst.Caps.Caps)
-    {- ^ /@caps@/: initial caps -}
-    -> Maybe (Gst.Caps.Caps)
-    {- ^ /@filter@/: filter caps -}
-    -> m Gst.Caps.Caps
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Caps.Caps' owned by caller -}
-videoDecoderProxyGetcaps decoder caps filter = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    maybeCaps <- case caps of
-        Nothing -> return nullPtr
-        Just jCaps -> do
-            jCaps' <- unsafeManagedPtrGetPtr jCaps
-            return jCaps'
-    maybeFilter <- case filter of
-        Nothing -> return nullPtr
-        Just jFilter -> do
-            jFilter' <- unsafeManagedPtrGetPtr jFilter
-            return jFilter'
-    result <- gst_video_decoder_proxy_getcaps decoder' maybeCaps maybeFilter
-    checkUnexpectedReturnNULL "videoDecoderProxyGetcaps" result
-    result' <- (wrapBoxed Gst.Caps.Caps) result
-    touchManagedPtr decoder
-    whenJust caps touchManagedPtr
-    whenJust filter touchManagedPtr
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderProxyGetcapsMethodInfo
-instance (signature ~ (Maybe (Gst.Caps.Caps) -> Maybe (Gst.Caps.Caps) -> m Gst.Caps.Caps), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderProxyGetcapsMethodInfo a signature where
-    overloadedMethod _ = videoDecoderProxyGetcaps
-
-#endif
-
--- method VideoDecoder::release_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoCodecFrame to release", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_release_frame" gst_video_decoder_release_frame :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO ()
-
-{- |
-Similar to 'GI.GstVideo.Objects.VideoDecoder.videoDecoderDropFrame', but simply releases /@frame@/
-without any processing other than removing it from list of pending frames,
-after which it is considered finished and released.
-
-/Since: 1.2.2/
--}
-videoDecoderReleaseFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: the 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' to release -}
-    -> m ()
-videoDecoderReleaseFrame dec frame = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    frame' <- B.ManagedPtr.disownBoxed frame
-    gst_video_decoder_release_frame dec' frame'
-    touchManagedPtr dec
-    touchManagedPtr frame
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderReleaseFrameMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderReleaseFrameMethodInfo a signature where
-    overloadedMethod _ = videoDecoderReleaseFrame
-
-#endif
-
--- method VideoDecoder::set_estimate_rate
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "enabled", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether to enable byte to time conversion", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_estimate_rate" gst_video_decoder_set_estimate_rate :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    CInt ->                                 -- enabled : TBasicType TBoolean
-    IO ()
-
-{- |
-Allows baseclass to perform byte to time estimated conversion.
--}
-videoDecoderSetEstimateRate ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Bool
-    {- ^ /@enabled@/: whether to enable byte to time conversion -}
-    -> m ()
-videoDecoderSetEstimateRate dec enabled = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    let enabled' = (fromIntegral . fromEnum) enabled
-    gst_video_decoder_set_estimate_rate dec' enabled'
-    touchManagedPtr dec
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetEstimateRateMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetEstimateRateMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetEstimateRate
-
-#endif
-
--- method VideoDecoder::set_interlaced_output_state
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fmt", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mode", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInterlaceMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstVideoInterlaceMode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The width in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The height in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "reference", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "An optional reference #GstVideoCodecState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_interlaced_output_state" gst_video_decoder_set_interlaced_output_state :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    CUInt ->                                -- fmt : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    CUInt ->                                -- mode : TInterface (Name {namespace = "GstVideo", name = "VideoInterlaceMode"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    Ptr GstVideo.VideoCodecState.VideoCodecState -> -- reference : TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"})
-    IO (Ptr GstVideo.VideoCodecState.VideoCodecState)
-
-{- |
-Same as @/gst_video_decoder_set_output_state/@() but also allows you to also set
-the interlacing mode.
-
-/Since: 1.16./
--}
-videoDecoderSetInterlacedOutputState ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@fmt@/: a 'GI.GstVideo.Enums.VideoFormat' -}
-    -> GstVideo.Enums.VideoInterlaceMode
-    {- ^ /@mode@/: A 'GI.GstVideo.Enums.VideoInterlaceMode' -}
-    -> Word32
-    {- ^ /@width@/: The width in pixels -}
-    -> Word32
-    {- ^ /@height@/: The height in pixels -}
-    -> Maybe (GstVideo.VideoCodecState.VideoCodecState)
-    {- ^ /@reference@/: An optional reference 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' -}
-    -> m GstVideo.VideoCodecState.VideoCodecState
-    {- ^ __Returns:__ the newly configured output state. -}
-videoDecoderSetInterlacedOutputState decoder fmt mode width height reference = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    let fmt' = (fromIntegral . fromEnum) fmt
-    let mode' = (fromIntegral . fromEnum) mode
-    maybeReference <- case reference of
-        Nothing -> return nullPtr
-        Just jReference -> do
-            jReference' <- unsafeManagedPtrGetPtr jReference
-            return jReference'
-    result <- gst_video_decoder_set_interlaced_output_state decoder' fmt' mode' width height maybeReference
-    checkUnexpectedReturnNULL "videoDecoderSetInterlacedOutputState" result
-    result' <- (wrapBoxed GstVideo.VideoCodecState.VideoCodecState) result
-    touchManagedPtr decoder
-    whenJust reference touchManagedPtr
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetInterlacedOutputStateMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoFormat -> GstVideo.Enums.VideoInterlaceMode -> Word32 -> Word32 -> Maybe (GstVideo.VideoCodecState.VideoCodecState) -> m GstVideo.VideoCodecState.VideoCodecState), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetInterlacedOutputStateMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetInterlacedOutputState
-
-#endif
-
--- method VideoDecoder::set_latency
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "min_latency", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "minimum latency", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "max_latency", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "maximum latency", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_latency" gst_video_decoder_set_latency :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Word64 ->                               -- min_latency : TBasicType TUInt64
-    Word64 ->                               -- max_latency : TBasicType TUInt64
-    IO ()
-
-{- |
-Lets 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' sub-classes tell the baseclass what the decoder
-latency is. Will also post a LATENCY message on the bus so the pipeline
-can reconfigure its global latency.
--}
-videoDecoderSetLatency ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Word64
-    {- ^ /@minLatency@/: minimum latency -}
-    -> Word64
-    {- ^ /@maxLatency@/: maximum latency -}
-    -> m ()
-videoDecoderSetLatency decoder minLatency maxLatency = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    gst_video_decoder_set_latency decoder' minLatency maxLatency
-    touchManagedPtr decoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetLatencyMethodInfo
-instance (signature ~ (Word64 -> Word64 -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetLatencyMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetLatency
-
-#endif
-
--- method VideoDecoder::set_max_errors
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "num", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "max tolerated errors", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_max_errors" gst_video_decoder_set_max_errors :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    Int32 ->                                -- num : TBasicType TInt
-    IO ()
-
-{- |
-Sets numbers of tolerated decoder errors, where a tolerated one is then only
-warned about, but more than tolerated will lead to fatal error.  You can set
--1 for never returning fatal errors. Default is set to
-GST_VIDEO_DECODER_MAX_ERRORS.
-
-The \'-1\' option was added in 1.4
--}
-videoDecoderSetMaxErrors ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Int32
-    {- ^ /@num@/: max tolerated errors -}
-    -> m ()
-videoDecoderSetMaxErrors dec num = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    gst_video_decoder_set_max_errors dec' num
-    touchManagedPtr dec
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetMaxErrorsMethodInfo
-instance (signature ~ (Int32 -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetMaxErrorsMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetMaxErrors
-
-#endif
-
--- method VideoDecoder::set_needs_format
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dec", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "enabled", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "new state", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_needs_format" gst_video_decoder_set_needs_format :: 
-    Ptr VideoDecoder ->                     -- dec : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    CInt ->                                 -- enabled : TBasicType TBoolean
-    IO ()
-
-{- |
-Configures decoder format needs.  If enabled, subclass needs to be
-negotiated with format caps before it can process any data.  It will then
-never be handed any data before it has been configured.
-Otherwise, it might be handed data without having been configured and
-is then expected being able to do so either by default
-or based on the input data.
-
-/Since: 1.4/
--}
-videoDecoderSetNeedsFormat ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@dec@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Bool
-    {- ^ /@enabled@/: new state -}
-    -> m ()
-videoDecoderSetNeedsFormat dec enabled = liftIO $ do
-    dec' <- unsafeManagedPtrCastPtr dec
-    let enabled' = (fromIntegral . fromEnum) enabled
-    gst_video_decoder_set_needs_format dec' enabled'
-    touchManagedPtr dec
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetNeedsFormatMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetNeedsFormatMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetNeedsFormat
-
-#endif
-
--- method VideoDecoder::set_output_state
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fmt", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The width in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The height in pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "reference", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "An optional reference #GstVideoCodecState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_output_state" gst_video_decoder_set_output_state :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    CUInt ->                                -- fmt : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    Ptr GstVideo.VideoCodecState.VideoCodecState -> -- reference : TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"})
-    IO (Ptr GstVideo.VideoCodecState.VideoCodecState)
-
-{- |
-Creates a new 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' with the specified /@fmt@/, /@width@/ and /@height@/
-as the output state for the decoder.
-Any previously set output state on /@decoder@/ will be replaced by the newly
-created one.
-
-If the subclass wishes to copy over existing fields (like pixel aspec ratio,
-or framerate) from an existing 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState', it can be provided as a
-/@reference@/.
-
-If the subclass wishes to override some fields from the output state (like
-pixel-aspect-ratio or framerate) it can do so on the returned 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
-
-The new output state will only take effect (set on pads and buffers) starting
-from the next call to @/gst_video_decoder_finish_frame/@().
--}
-videoDecoderSetOutputState ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@fmt@/: a 'GI.GstVideo.Enums.VideoFormat' -}
-    -> Word32
-    {- ^ /@width@/: The width in pixels -}
-    -> Word32
-    {- ^ /@height@/: The height in pixels -}
-    -> Maybe (GstVideo.VideoCodecState.VideoCodecState)
-    {- ^ /@reference@/: An optional reference 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' -}
-    -> m GstVideo.VideoCodecState.VideoCodecState
-    {- ^ __Returns:__ the newly configured output state. -}
-videoDecoderSetOutputState decoder fmt width height reference = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    let fmt' = (fromIntegral . fromEnum) fmt
-    maybeReference <- case reference of
-        Nothing -> return nullPtr
-        Just jReference -> do
-            jReference' <- unsafeManagedPtrGetPtr jReference
-            return jReference'
-    result <- gst_video_decoder_set_output_state decoder' fmt' width height maybeReference
-    checkUnexpectedReturnNULL "videoDecoderSetOutputState" result
-    result' <- (wrapBoxed GstVideo.VideoCodecState.VideoCodecState) result
-    touchManagedPtr decoder
-    whenJust reference touchManagedPtr
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetOutputStateMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoFormat -> Word32 -> Word32 -> Maybe (GstVideo.VideoCodecState.VideoCodecState) -> m GstVideo.VideoCodecState.VideoCodecState), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetOutputStateMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetOutputState
-
-#endif
-
--- method VideoDecoder::set_packetized
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "packetized", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the input data should be considered as packetized.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_packetized" gst_video_decoder_set_packetized :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    CInt ->                                 -- packetized : TBasicType TBoolean
-    IO ()
-
-{- |
-Allows baseclass to consider input data as packetized or not. If the
-input is packetized, then the /@parse@/ method will not be called.
--}
-videoDecoderSetPacketized ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Bool
-    {- ^ /@packetized@/: whether the input data should be considered as packetized. -}
-    -> m ()
-videoDecoderSetPacketized decoder packetized = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    let packetized' = (fromIntegral . fromEnum) packetized
-    gst_video_decoder_set_packetized decoder' packetized'
-    touchManagedPtr decoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetPacketizedMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetPacketizedMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetPacketized
-
-#endif
-
--- method VideoDecoder::set_use_default_pad_acceptcaps
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "decoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDecoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "use", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "if the default pad accept-caps query handling should be used", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_decoder_set_use_default_pad_acceptcaps" gst_video_decoder_set_use_default_pad_acceptcaps :: 
-    Ptr VideoDecoder ->                     -- decoder : TInterface (Name {namespace = "GstVideo", name = "VideoDecoder"})
-    CInt ->                                 -- use : TBasicType TBoolean
-    IO ()
-
-{- |
-Lets 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' sub-classes decide if they want the sink pad
-to use the default pad query handler to reply to accept-caps queries.
-
-By setting this to true it is possible to further customize the default
-handler with @/GST_PAD_SET_ACCEPT_INTERSECT/@ and
-@/GST_PAD_SET_ACCEPT_TEMPLATE/@
-
-/Since: 1.6/
--}
-videoDecoderSetUseDefaultPadAcceptcaps ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoDecoder a) =>
-    a
-    {- ^ /@decoder@/: a 'GI.GstVideo.Objects.VideoDecoder.VideoDecoder' -}
-    -> Bool
-    {- ^ /@use@/: if the default pad accept-caps query handling should be used -}
-    -> m ()
-videoDecoderSetUseDefaultPadAcceptcaps decoder use = liftIO $ do
-    decoder' <- unsafeManagedPtrCastPtr decoder
-    let use' = (fromIntegral . fromEnum) use
-    gst_video_decoder_set_use_default_pad_acceptcaps decoder' use'
-    touchManagedPtr decoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDecoderSetUseDefaultPadAcceptcapsMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoDecoder a) => O.MethodInfo VideoDecoderSetUseDefaultPadAcceptcapsMethodInfo a signature where
-    overloadedMethod _ = videoDecoderSetUseDefaultPadAcceptcaps
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoDecoder.hs-boot b/GI/GstVideo/Objects/VideoDecoder.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoDecoder.hs-boot
+++ /dev/null
@@ -1,128 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoDecoder 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoDecoder = VideoDecoder (ManagedPtr VideoDecoder)
-instance GObject VideoDecoder where
-class (GObject o, O.IsDescendantOf VideoDecoder o) => IsVideoDecoder o
-instance (GObject o, O.IsDescendantOf VideoDecoder o) => IsVideoDecoder o
-instance O.HasParentTypes VideoDecoder
-#if ENABLE_OVERLOADING
-data VideoDecoderAddToFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderAllocateOutputBufferMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderAllocateOutputFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderAllocateOutputFrameWithParamsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderDropFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderFinishFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetAllocatorMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetBufferPoolMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetEstimateRateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetFramesMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetLatencyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetMaxDecodeTimeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetMaxErrorsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetNeedsFormatMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetOldestFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetOutputStateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetPacketizedMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetPendingFrameSizeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderGetQosProportionMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderHaveFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderMergeTagsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderNegotiateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderProxyGetcapsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderReleaseFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetEstimateRateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetInterlacedOutputStateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetLatencyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetMaxErrorsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetNeedsFormatMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetOutputStateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetPacketizedMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDecoderSetUseDefaultPadAcceptcapsMethodInfo
-#endif
diff --git a/GI/GstVideo/Objects/VideoEncoder.hs b/GI/GstVideo/Objects/VideoEncoder.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoEncoder.hs
+++ /dev/null
@@ -1,1352 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-This base class is for video encoders turning raw video into
-encoded video data.
-
-GstVideoEncoder and subclass should cooperate as follows.
-
-== Configuration
-
-  * Initially, GstVideoEncoder calls /@start@/ when the encoder element
-    is activated, which allows subclass to perform any global setup.
-  * GstVideoEncoder calls /@setFormat@/ to inform subclass of the format
-    of input video data that it is about to receive.  Subclass should
-    setup for encoding and configure base class as appropriate
-    (e.g. latency). While unlikely, it might be called more than once,
-    if changing input parameters require reconfiguration.  Baseclass
-    will ensure that processing of current configuration is finished.
-  * GstVideoEncoder calls /@stop@/ at end of all processing.
-
-== Data processing
-
-    * Base class collects input data and metadata into a frame and hands
-      this to subclass\' /@handleFrame@/.
-
-    * If codec processing results in encoded data, subclass should call
-      /@gstVideoEncoderFinishFrame@/ to have encoded data pushed
-      downstream.
-
-    * If implemented, baseclass calls subclass /@prePush@/ just prior to
-      pushing to allow subclasses to modify some metadata on the buffer.
-      If it returns GST_FLOW_OK, the buffer is pushed downstream.
-
-    * GstVideoEncoderClass will handle both srcpad and sinkpad events.
-      Sink events will be passed to subclass if /@event@/ callback has been
-      provided.
-
-== Shutdown phase
-
-  * GstVideoEncoder class calls /@stop@/ to inform the subclass that data
-    parsing will be stopped.
-
-Subclass is responsible for providing pad template caps for
-source and sink pads. The pads need to be named \"sink\" and \"src\". It should
-also be able to provide fixed src pad caps in /@getcaps@/ by the time it calls
-/@gstVideoEncoderFinishFrame@/.
-
-Things that subclass need to take care of:
-
-  * Provide pad templates
-  * Provide source pad caps before pushing the first buffer
-  * Accept data in /@handleFrame@/ and provide encoded results to
-     /@gstVideoEncoderFinishFrame@/.
-
-
-The 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder':@/qos/@ property will enable the Quality-of-Service
-features of the encoder which gather statistics about the real-time
-performance of the downstream elements. If enabled, subclasses can
-use 'GI.GstVideo.Objects.VideoEncoder.videoEncoderGetMaxEncodeTime' to check if input frames
-are already late and drop them right away to give a chance to the
-pipeline to catch up.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoEncoder
-    ( 
-
--- * Exported types
-    VideoEncoder(..)                        ,
-    IsVideoEncoder                          ,
-    toVideoEncoder                          ,
-    noVideoEncoder                          ,
-
-
- -- * Methods
--- ** allocateOutputBuffer #method:allocateOutputBuffer#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderAllocateOutputBufferMethodInfo,
-#endif
-    videoEncoderAllocateOutputBuffer        ,
-
-
--- ** allocateOutputFrame #method:allocateOutputFrame#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderAllocateOutputFrameMethodInfo,
-#endif
-    videoEncoderAllocateOutputFrame         ,
-
-
--- ** finishFrame #method:finishFrame#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderFinishFrameMethodInfo       ,
-#endif
-    videoEncoderFinishFrame                 ,
-
-
--- ** getAllocator #method:getAllocator#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetAllocatorMethodInfo      ,
-#endif
-    videoEncoderGetAllocator                ,
-
-
--- ** getFrame #method:getFrame#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetFrameMethodInfo          ,
-#endif
-    videoEncoderGetFrame                    ,
-
-
--- ** getFrames #method:getFrames#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetFramesMethodInfo         ,
-#endif
-    videoEncoderGetFrames                   ,
-
-
--- ** getLatency #method:getLatency#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetLatencyMethodInfo        ,
-#endif
-    videoEncoderGetLatency                  ,
-
-
--- ** getMaxEncodeTime #method:getMaxEncodeTime#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetMaxEncodeTimeMethodInfo  ,
-#endif
-    videoEncoderGetMaxEncodeTime            ,
-
-
--- ** getOldestFrame #method:getOldestFrame#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetOldestFrameMethodInfo    ,
-#endif
-    videoEncoderGetOldestFrame              ,
-
-
--- ** getOutputState #method:getOutputState#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderGetOutputStateMethodInfo    ,
-#endif
-    videoEncoderGetOutputState              ,
-
-
--- ** isQosEnabled #method:isQosEnabled#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderIsQosEnabledMethodInfo      ,
-#endif
-    videoEncoderIsQosEnabled                ,
-
-
--- ** mergeTags #method:mergeTags#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderMergeTagsMethodInfo         ,
-#endif
-    videoEncoderMergeTags                   ,
-
-
--- ** negotiate #method:negotiate#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderNegotiateMethodInfo         ,
-#endif
-    videoEncoderNegotiate                   ,
-
-
--- ** proxyGetcaps #method:proxyGetcaps#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderProxyGetcapsMethodInfo      ,
-#endif
-    videoEncoderProxyGetcaps                ,
-
-
--- ** setHeaders #method:setHeaders#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderSetHeadersMethodInfo        ,
-#endif
-    videoEncoderSetHeaders                  ,
-
-
--- ** setLatency #method:setLatency#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderSetLatencyMethodInfo        ,
-#endif
-    videoEncoderSetLatency                  ,
-
-
--- ** setMinPts #method:setMinPts#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderSetMinPtsMethodInfo         ,
-#endif
-    videoEncoderSetMinPts                   ,
-
-
--- ** setOutputState #method:setOutputState#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderSetOutputStateMethodInfo    ,
-#endif
-    videoEncoderSetOutputState              ,
-
-
--- ** setQosEnabled #method:setQosEnabled#
-
-#if ENABLE_OVERLOADING
-    VideoEncoderSetQosEnabledMethodInfo     ,
-#endif
-    videoEncoderSetQosEnabled               ,
-
-
-
-
- -- * Properties
--- ** qos #attr:qos#
-{- | /No description available in the introspection data./
--}
-#if ENABLE_OVERLOADING
-    VideoEncoderQosPropertyInfo             ,
-#endif
-    constructVideoEncoderQos                ,
-    getVideoEncoderQos                      ,
-    setVideoEncoderQos                      ,
-#if ENABLE_OVERLOADING
-    videoEncoderQos                         ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Enums as Gst.Enums
-import qualified GI.Gst.Interfaces.Preset as Gst.Preset
-import qualified GI.Gst.Objects.Allocator as Gst.Allocator
-import qualified GI.Gst.Objects.Element as Gst.Element
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.Gst.Structs.AllocationParams as Gst.AllocationParams
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-import qualified GI.Gst.Structs.Caps as Gst.Caps
-import qualified GI.Gst.Structs.TagList as Gst.TagList
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoCodecFrame as GstVideo.VideoCodecFrame
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoCodecState as GstVideo.VideoCodecState
-
--- | Memory-managed wrapper type.
-newtype VideoEncoder = VideoEncoder (ManagedPtr VideoEncoder)
-foreign import ccall "gst_video_encoder_get_type"
-    c_gst_video_encoder_get_type :: IO GType
-
-instance GObject VideoEncoder where
-    gobjectType = c_gst_video_encoder_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoEncoder`, for instance with `toVideoEncoder`.
-class (GObject o, O.IsDescendantOf VideoEncoder o) => IsVideoEncoder o
-instance (GObject o, O.IsDescendantOf VideoEncoder o) => IsVideoEncoder o
-
-instance O.HasParentTypes VideoEncoder
-type instance O.ParentTypes VideoEncoder = '[Gst.Element.Element, Gst.Object.Object, GObject.Object.Object, Gst.Preset.Preset]
-
--- | Cast to `VideoEncoder`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoEncoder :: (MonadIO m, IsVideoEncoder o) => o -> m VideoEncoder
-toVideoEncoder = liftIO . unsafeCastTo VideoEncoder
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoEncoder`.
-noVideoEncoder :: Maybe VideoEncoder
-noVideoEncoder = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoEncoderMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoEncoderMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
-    ResolveVideoEncoderMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoEncoderMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
-    ResolveVideoEncoderMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
-    ResolveVideoEncoderMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
-    ResolveVideoEncoderMethod "allocateOutputBuffer" o = VideoEncoderAllocateOutputBufferMethodInfo
-    ResolveVideoEncoderMethod "allocateOutputFrame" o = VideoEncoderAllocateOutputFrameMethodInfo
-    ResolveVideoEncoderMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoEncoderMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoEncoderMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
-    ResolveVideoEncoderMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
-    ResolveVideoEncoderMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
-    ResolveVideoEncoderMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
-    ResolveVideoEncoderMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoEncoderMethod "deletePreset" o = Gst.Preset.PresetDeletePresetMethodInfo
-    ResolveVideoEncoderMethod "finishFrame" o = VideoEncoderFinishFrameMethodInfo
-    ResolveVideoEncoderMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoEncoderMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
-    ResolveVideoEncoderMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
-    ResolveVideoEncoderMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
-    ResolveVideoEncoderMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoEncoderMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoEncoderMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoEncoderMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoEncoderMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoEncoderMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoEncoderMethod "isEditable" o = Gst.Preset.PresetIsEditableMethodInfo
-    ResolveVideoEncoderMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoEncoderMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
-    ResolveVideoEncoderMethod "isQosEnabled" o = VideoEncoderIsQosEnabledMethodInfo
-    ResolveVideoEncoderMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
-    ResolveVideoEncoderMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
-    ResolveVideoEncoderMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
-    ResolveVideoEncoderMethod "link" o = Gst.Element.ElementLinkMethodInfo
-    ResolveVideoEncoderMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
-    ResolveVideoEncoderMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
-    ResolveVideoEncoderMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
-    ResolveVideoEncoderMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
-    ResolveVideoEncoderMethod "loadPreset" o = Gst.Preset.PresetLoadPresetMethodInfo
-    ResolveVideoEncoderMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
-    ResolveVideoEncoderMethod "mergeTags" o = VideoEncoderMergeTagsMethodInfo
-    ResolveVideoEncoderMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
-    ResolveVideoEncoderMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
-    ResolveVideoEncoderMethod "negotiate" o = VideoEncoderNegotiateMethodInfo
-    ResolveVideoEncoderMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
-    ResolveVideoEncoderMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoEncoderMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoEncoderMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
-    ResolveVideoEncoderMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
-    ResolveVideoEncoderMethod "proxyGetcaps" o = VideoEncoderProxyGetcapsMethodInfo
-    ResolveVideoEncoderMethod "query" o = Gst.Element.ElementQueryMethodInfo
-    ResolveVideoEncoderMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
-    ResolveVideoEncoderMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
-    ResolveVideoEncoderMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
-    ResolveVideoEncoderMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoEncoderMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoEncoderMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
-    ResolveVideoEncoderMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoEncoderMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
-    ResolveVideoEncoderMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
-    ResolveVideoEncoderMethod "renamePreset" o = Gst.Preset.PresetRenamePresetMethodInfo
-    ResolveVideoEncoderMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
-    ResolveVideoEncoderMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoEncoderMethod "savePreset" o = Gst.Preset.PresetSavePresetMethodInfo
-    ResolveVideoEncoderMethod "seek" o = Gst.Element.ElementSeekMethodInfo
-    ResolveVideoEncoderMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
-    ResolveVideoEncoderMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
-    ResolveVideoEncoderMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoEncoderMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoEncoderMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoEncoderMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
-    ResolveVideoEncoderMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoEncoderMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoEncoderMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
-    ResolveVideoEncoderMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
-    ResolveVideoEncoderMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoEncoderMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoEncoderMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoEncoderMethod "getAllocator" o = VideoEncoderGetAllocatorMethodInfo
-    ResolveVideoEncoderMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
-    ResolveVideoEncoderMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
-    ResolveVideoEncoderMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
-    ResolveVideoEncoderMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
-    ResolveVideoEncoderMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
-    ResolveVideoEncoderMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
-    ResolveVideoEncoderMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
-    ResolveVideoEncoderMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
-    ResolveVideoEncoderMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoEncoderMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoEncoderMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoEncoderMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
-    ResolveVideoEncoderMethod "getFrame" o = VideoEncoderGetFrameMethodInfo
-    ResolveVideoEncoderMethod "getFrames" o = VideoEncoderGetFramesMethodInfo
-    ResolveVideoEncoderMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoEncoderMethod "getLatency" o = VideoEncoderGetLatencyMethodInfo
-    ResolveVideoEncoderMethod "getMaxEncodeTime" o = VideoEncoderGetMaxEncodeTimeMethodInfo
-    ResolveVideoEncoderMethod "getMeta" o = Gst.Preset.PresetGetMetaMethodInfo
-    ResolveVideoEncoderMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
-    ResolveVideoEncoderMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoEncoderMethod "getOldestFrame" o = VideoEncoderGetOldestFrameMethodInfo
-    ResolveVideoEncoderMethod "getOutputState" o = VideoEncoderGetOutputStateMethodInfo
-    ResolveVideoEncoderMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
-    ResolveVideoEncoderMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
-    ResolveVideoEncoderMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoEncoderMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoEncoderMethod "getPresetNames" o = Gst.Preset.PresetGetPresetNamesMethodInfo
-    ResolveVideoEncoderMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoEncoderMethod "getPropertyNames" o = Gst.Preset.PresetGetPropertyNamesMethodInfo
-    ResolveVideoEncoderMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoEncoderMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
-    ResolveVideoEncoderMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
-    ResolveVideoEncoderMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
-    ResolveVideoEncoderMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
-    ResolveVideoEncoderMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoEncoderMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
-    ResolveVideoEncoderMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
-    ResolveVideoEncoderMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
-    ResolveVideoEncoderMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
-    ResolveVideoEncoderMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoEncoderMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoEncoderMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoEncoderMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoEncoderMethod "setHeaders" o = VideoEncoderSetHeadersMethodInfo
-    ResolveVideoEncoderMethod "setLatency" o = VideoEncoderSetLatencyMethodInfo
-    ResolveVideoEncoderMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
-    ResolveVideoEncoderMethod "setMeta" o = Gst.Preset.PresetSetMetaMethodInfo
-    ResolveVideoEncoderMethod "setMinPts" o = VideoEncoderSetMinPtsMethodInfo
-    ResolveVideoEncoderMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoEncoderMethod "setOutputState" o = VideoEncoderSetOutputStateMethodInfo
-    ResolveVideoEncoderMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoEncoderMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoEncoderMethod "setQosEnabled" o = VideoEncoderSetQosEnabledMethodInfo
-    ResolveVideoEncoderMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
-    ResolveVideoEncoderMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
-    ResolveVideoEncoderMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoEncoderMethod t VideoEncoder, O.MethodInfo info VideoEncoder p) => OL.IsLabel t (VideoEncoder -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- VVV Prop "qos"
-   -- Type: TBasicType TBoolean
-   -- Flags: [PropertyReadable,PropertyWritable]
-   -- Nullable: (Nothing,Nothing)
-
-{- |
-Get the value of the “@qos@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoEncoder #qos
-@
--}
-getVideoEncoderQos :: (MonadIO m, IsVideoEncoder o) => o -> m Bool
-getVideoEncoderQos obj = liftIO $ B.Properties.getObjectPropertyBool obj "qos"
-
-{- |
-Set the value of the “@qos@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoEncoder [ #qos 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoEncoderQos :: (MonadIO m, IsVideoEncoder o) => o -> Bool -> m ()
-setVideoEncoderQos obj val = liftIO $ B.Properties.setObjectPropertyBool obj "qos" val
-
-{- |
-Construct a `GValueConstruct` with valid value for the “@qos@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
--}
-constructVideoEncoderQos :: (IsVideoEncoder o) => Bool -> IO (GValueConstruct o)
-constructVideoEncoderQos val = B.Properties.constructObjectPropertyBool "qos" val
-
-#if ENABLE_OVERLOADING
-data VideoEncoderQosPropertyInfo
-instance AttrInfo VideoEncoderQosPropertyInfo where
-    type AttrAllowedOps VideoEncoderQosPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
-    type AttrSetTypeConstraint VideoEncoderQosPropertyInfo = (~) Bool
-    type AttrBaseTypeConstraint VideoEncoderQosPropertyInfo = IsVideoEncoder
-    type AttrGetType VideoEncoderQosPropertyInfo = Bool
-    type AttrLabel VideoEncoderQosPropertyInfo = "qos"
-    type AttrOrigin VideoEncoderQosPropertyInfo = VideoEncoder
-    attrGet _ = getVideoEncoderQos
-    attrSet _ = setVideoEncoderQos
-    attrConstruct _ = constructVideoEncoderQos
-    attrClear _ = undefined
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoEncoder
-type instance O.AttributeList VideoEncoder = VideoEncoderAttributeList
-type VideoEncoderAttributeList = ('[ '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("qos", VideoEncoderQosPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-videoEncoderQos :: AttrLabelProxy "qos"
-videoEncoderQos = AttrLabelProxy
-
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoEncoder = VideoEncoderSignalList
-type VideoEncoderSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
--- method VideoEncoder::allocate_output_buffer
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "size", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "size of the buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_allocate_output_buffer" gst_video_encoder_allocate_output_buffer :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Word64 ->                               -- size : TBasicType TUInt64
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-Helper function that allocates a buffer to hold an encoded video frame
-for /@encoder@/\'s current 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
--}
-videoEncoderAllocateOutputBuffer ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Word64
-    {- ^ /@size@/: size of the buffer -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ allocated buffer -}
-videoEncoderAllocateOutputBuffer encoder size = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_allocate_output_buffer encoder' size
-    checkUnexpectedReturnNULL "videoEncoderAllocateOutputBuffer" result
-    result' <- (wrapBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderAllocateOutputBufferMethodInfo
-instance (signature ~ (Word64 -> m Gst.Buffer.Buffer), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderAllocateOutputBufferMethodInfo a signature where
-    overloadedMethod _ = videoEncoderAllocateOutputBuffer
-
-#endif
-
--- method VideoEncoder::allocate_output_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "size", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "size of the buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_allocate_output_frame" gst_video_encoder_allocate_output_frame :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    Word64 ->                               -- size : TBasicType TUInt64
-    IO CInt
-
-{- |
-Helper function that allocates a buffer to hold an encoded video frame for /@encoder@/\'s
-current 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.  Subclass should already have configured video
-state and set src pad caps.
-
-The buffer allocated here is owned by the frame and you should only
-keep references to the frame, not the buffer.
--}
-videoEncoderAllocateOutputFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> Word64
-    {- ^ /@size@/: size of the buffer -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ 'GI.Gst.Enums.FlowReturnOk' if an output buffer could be allocated -}
-videoEncoderAllocateOutputFrame encoder frame size = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    frame' <- unsafeManagedPtrGetPtr frame
-    result <- gst_video_encoder_allocate_output_frame encoder' frame' size
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr encoder
-    touchManagedPtr frame
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderAllocateOutputFrameMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> Word64 -> m Gst.Enums.FlowReturn), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderAllocateOutputFrameMethodInfo a signature where
-    overloadedMethod _ = videoEncoderAllocateOutputFrame
-
-#endif
-
--- method VideoEncoder::finish_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an encoded #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "FlowReturn"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_finish_frame" gst_video_encoder_finish_frame :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO CInt
-
-{- |
-/@frame@/ must have a valid encoded data buffer, whose metadata fields
-are then appropriately set according to frame data or no buffer at
-all if the frame should be dropped.
-It is subsequently pushed downstream or provided to /@prePush@/.
-In any case, the frame is considered finished and released.
-
-After calling this function the output buffer of the frame is to be
-considered read-only. This function will also change the metadata
-of the buffer.
--}
-videoEncoderFinishFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: an encoded 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m Gst.Enums.FlowReturn
-    {- ^ __Returns:__ a 'GI.Gst.Enums.FlowReturn' resulting from sending data downstream -}
-videoEncoderFinishFrame encoder frame = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    frame' <- B.ManagedPtr.disownBoxed frame
-    result <- gst_video_encoder_finish_frame encoder' frame'
-    let result' = (toEnum . fromIntegral) result
-    touchManagedPtr encoder
-    touchManagedPtr frame
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderFinishFrameMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m Gst.Enums.FlowReturn), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderFinishFrameMethodInfo a signature where
-    overloadedMethod _ = videoEncoderFinishFrame
-
-#endif
-
--- method VideoEncoder::get_allocator
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "allocator", argType = TInterface (Name {namespace = "Gst", name = "Allocator"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstAllocator\nused", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "params", argType = TInterface (Name {namespace = "Gst", name = "AllocationParams"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the\n#GstAllocationParams of @allocator", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_allocator" gst_video_encoder_get_allocator :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr (Ptr Gst.Allocator.Allocator) ->    -- allocator : TInterface (Name {namespace = "Gst", name = "Allocator"})
-    Ptr Gst.AllocationParams.AllocationParams -> -- params : TInterface (Name {namespace = "Gst", name = "AllocationParams"})
-    IO ()
-
-{- |
-Lets 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' sub-classes to know the memory /@allocator@/
-used by the base class and its /@params@/.
-
-Unref the /@allocator@/ after use it.
--}
-videoEncoderGetAllocator ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> m ((Gst.Allocator.Allocator, Gst.AllocationParams.AllocationParams))
-videoEncoderGetAllocator encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    allocator <- allocMem :: IO (Ptr (Ptr Gst.Allocator.Allocator))
-    params <- callocBoxedBytes 64 :: IO (Ptr Gst.AllocationParams.AllocationParams)
-    gst_video_encoder_get_allocator encoder' allocator params
-    allocator' <- peek allocator
-    allocator'' <- (wrapObject Gst.Allocator.Allocator) allocator'
-    params' <- (wrapBoxed Gst.AllocationParams.AllocationParams) params
-    touchManagedPtr encoder
-    freeMem allocator
-    return (allocator'', params')
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetAllocatorMethodInfo
-instance (signature ~ (m ((Gst.Allocator.Allocator, Gst.AllocationParams.AllocationParams))), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetAllocatorMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetAllocator
-
-#endif
-
--- method VideoEncoder::get_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame_number", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "system_frame_number of a frame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_frame" gst_video_encoder_get_frame :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Int32 ->                                -- frame_number : TBasicType TInt
-    IO (Ptr GstVideo.VideoCodecFrame.VideoCodecFrame)
-
-{- |
-Get a pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-videoEncoderGetFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Int32
-    {- ^ /@frameNumber@/: system_frame_number of a frame -}
-    -> m GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ __Returns:__ pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' identified by /@frameNumber@/. -}
-videoEncoderGetFrame encoder frameNumber = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_get_frame encoder' frameNumber
-    checkUnexpectedReturnNULL "videoEncoderGetFrame" result
-    result' <- (wrapBoxed GstVideo.VideoCodecFrame.VideoCodecFrame) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetFrameMethodInfo
-instance (signature ~ (Int32 -> m GstVideo.VideoCodecFrame.VideoCodecFrame), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetFrameMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetFrame
-
-#endif
-
--- method VideoEncoder::get_frames
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TGList (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_frames" gst_video_encoder_get_frames :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    IO (Ptr (GList (Ptr GstVideo.VideoCodecFrame.VideoCodecFrame)))
-
-{- |
-Get all pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-videoEncoderGetFrames ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> m [GstVideo.VideoCodecFrame.VideoCodecFrame]
-    {- ^ __Returns:__ pending unfinished 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'. -}
-videoEncoderGetFrames encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_get_frames encoder'
-    result' <- unpackGList result
-    result'' <- mapM (wrapBoxed GstVideo.VideoCodecFrame.VideoCodecFrame) result'
-    g_list_free result
-    touchManagedPtr encoder
-    return result''
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetFramesMethodInfo
-instance (signature ~ (m [GstVideo.VideoCodecFrame.VideoCodecFrame]), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetFramesMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetFrames
-
-#endif
-
--- method VideoEncoder::get_latency
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "min_latency", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address of variable in which to store the\n    configured minimum latency, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "max_latency", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address of variable in which to store the\n    configured maximum latency, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_latency" gst_video_encoder_get_latency :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr Word64 ->                           -- min_latency : TBasicType TUInt64
-    Ptr Word64 ->                           -- max_latency : TBasicType TUInt64
-    IO ()
-
-{- |
-Query the configured encoding latency. Results will be returned via
-/@minLatency@/ and /@maxLatency@/.
--}
-videoEncoderGetLatency ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> m ((Word64, Word64))
-videoEncoderGetLatency encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    minLatency <- allocMem :: IO (Ptr Word64)
-    maxLatency <- allocMem :: IO (Ptr Word64)
-    gst_video_encoder_get_latency encoder' minLatency maxLatency
-    minLatency' <- peek minLatency
-    maxLatency' <- peek maxLatency
-    touchManagedPtr encoder
-    freeMem minLatency
-    freeMem maxLatency
-    return (minLatency', maxLatency')
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetLatencyMethodInfo
-instance (signature ~ (m ((Word64, Word64))), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetLatencyMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetLatency
-
-#endif
-
--- method VideoEncoder::get_max_encode_time
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TInt64)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_max_encode_time" gst_video_encoder_get_max_encode_time :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr GstVideo.VideoCodecFrame.VideoCodecFrame -> -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO Int64
-
-{- |
-Determines maximum possible encoding time for /@frame@/ that will
-allow it to encode and arrive in time (as determined by QoS events).
-In particular, a negative result means encoding in time is no longer possible
-and should therefore occur as soon\/skippy as possible.
-
-If no QoS events have been received from downstream, or if
-'GI.GstVideo.Objects.VideoEncoder.VideoEncoder':@/qos/@ is disabled this function returns 'GI.GLib.Constants.MAXINT64'.
-
-/Since: 1.14/
--}
-videoEncoderGetMaxEncodeTime ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m Int64
-    {- ^ __Returns:__ max decoding time. -}
-videoEncoderGetMaxEncodeTime encoder frame = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    frame' <- unsafeManagedPtrGetPtr frame
-    result <- gst_video_encoder_get_max_encode_time encoder' frame'
-    touchManagedPtr encoder
-    touchManagedPtr frame
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetMaxEncodeTimeMethodInfo
-instance (signature ~ (GstVideo.VideoCodecFrame.VideoCodecFrame -> m Int64), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetMaxEncodeTimeMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetMaxEncodeTime
-
-#endif
-
--- method VideoEncoder::get_oldest_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_oldest_frame" gst_video_encoder_get_oldest_frame :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    IO (Ptr GstVideo.VideoCodecFrame.VideoCodecFrame)
-
-{- |
-Get the oldest unfinished pending 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame'
--}
-videoEncoderGetOldestFrame ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> m GstVideo.VideoCodecFrame.VideoCodecFrame
-    {- ^ __Returns:__ oldest unfinished pending 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-videoEncoderGetOldestFrame encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_get_oldest_frame encoder'
-    checkUnexpectedReturnNULL "videoEncoderGetOldestFrame" result
-    result' <- (wrapBoxed GstVideo.VideoCodecFrame.VideoCodecFrame) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetOldestFrameMethodInfo
-instance (signature ~ (m GstVideo.VideoCodecFrame.VideoCodecFrame), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetOldestFrameMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetOldestFrame
-
-#endif
-
--- method VideoEncoder::get_output_state
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_get_output_state" gst_video_encoder_get_output_state :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    IO (Ptr GstVideo.VideoCodecState.VideoCodecState)
-
-{- |
-Get the current 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'
--}
-videoEncoderGetOutputState ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> m GstVideo.VideoCodecState.VideoCodecState
-    {- ^ __Returns:__ 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' describing format of video data. -}
-videoEncoderGetOutputState encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_get_output_state encoder'
-    checkUnexpectedReturnNULL "videoEncoderGetOutputState" result
-    result' <- (wrapBoxed GstVideo.VideoCodecState.VideoCodecState) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderGetOutputStateMethodInfo
-instance (signature ~ (m GstVideo.VideoCodecState.VideoCodecState), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderGetOutputStateMethodInfo a signature where
-    overloadedMethod _ = videoEncoderGetOutputState
-
-#endif
-
--- method VideoEncoder::is_qos_enabled
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the encoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_is_qos_enabled" gst_video_encoder_is_qos_enabled :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    IO CInt
-
-{- |
-Checks if /@encoder@/ is currently configured to handle Quality-of-Service
-events from downstream.
-
-/Since: 1.14/
--}
-videoEncoderIsQosEnabled ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: the encoder -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if the encoder is configured to perform Quality-of-Service. -}
-videoEncoderIsQosEnabled encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_is_qos_enabled encoder'
-    let result' = (/= 0) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderIsQosEnabledMethodInfo
-instance (signature ~ (m Bool), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderIsQosEnabledMethodInfo a signature where
-    overloadedMethod _ = videoEncoderIsQosEnabled
-
-#endif
-
--- method VideoEncoder::merge_tags
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tags", argType = TInterface (Name {namespace = "Gst", name = "TagList"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a #GstTagList to merge, or NULL to unset\n    previously-set tags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mode", argType = TInterface (Name {namespace = "Gst", name = "TagMergeMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_merge_tags" gst_video_encoder_merge_tags :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr Gst.TagList.TagList ->              -- tags : TInterface (Name {namespace = "Gst", name = "TagList"})
-    CUInt ->                                -- mode : TInterface (Name {namespace = "Gst", name = "TagMergeMode"})
-    IO ()
-
-{- |
-Sets the video encoder tags and how they should be merged with any
-upstream stream tags. This will override any tags previously-set
-with 'GI.GstVideo.Objects.VideoEncoder.videoEncoderMergeTags'.
-
-Note that this is provided for convenience, and the subclass is
-not required to use this and can still do tag handling on its own.
-
-MT safe.
--}
-videoEncoderMergeTags ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Maybe (Gst.TagList.TagList)
-    {- ^ /@tags@/: a 'GI.Gst.Structs.TagList.TagList' to merge, or NULL to unset
-    previously-set tags -}
-    -> Gst.Enums.TagMergeMode
-    {- ^ /@mode@/: the 'GI.Gst.Enums.TagMergeMode' to use, usually @/GST_TAG_MERGE_REPLACE/@ -}
-    -> m ()
-videoEncoderMergeTags encoder tags mode = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    maybeTags <- case tags of
-        Nothing -> return nullPtr
-        Just jTags -> do
-            jTags' <- unsafeManagedPtrGetPtr jTags
-            return jTags'
-    let mode' = (fromIntegral . fromEnum) mode
-    gst_video_encoder_merge_tags encoder' maybeTags mode'
-    touchManagedPtr encoder
-    whenJust tags touchManagedPtr
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoEncoderMergeTagsMethodInfo
-instance (signature ~ (Maybe (Gst.TagList.TagList) -> Gst.Enums.TagMergeMode -> m ()), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderMergeTagsMethodInfo a signature where
-    overloadedMethod _ = videoEncoderMergeTags
-
-#endif
-
--- method VideoEncoder::negotiate
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_negotiate" gst_video_encoder_negotiate :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    IO CInt
-
-{- |
-Negotiate with downstream elements to currently configured 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
-Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
-negotiate fails.
--}
-videoEncoderNegotiate ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if the negotiation succeeded, else 'False'. -}
-videoEncoderNegotiate encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    result <- gst_video_encoder_negotiate encoder'
-    let result' = (/= 0) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderNegotiateMethodInfo
-instance (signature ~ (m Bool), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderNegotiateMethodInfo a signature where
-    overloadedMethod _ = videoEncoderNegotiate
-
-#endif
-
--- method VideoEncoder::proxy_getcaps
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "enc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "caps", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "initial caps", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filter", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "filter caps", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Caps"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_proxy_getcaps" gst_video_encoder_proxy_getcaps :: 
-    Ptr VideoEncoder ->                     -- enc : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr Gst.Caps.Caps ->                    -- caps : TInterface (Name {namespace = "Gst", name = "Caps"})
-    Ptr Gst.Caps.Caps ->                    -- filter : TInterface (Name {namespace = "Gst", name = "Caps"})
-    IO (Ptr Gst.Caps.Caps)
-
-{- |
-Returns caps that express /@caps@/ (or sink template caps if /@caps@/ == NULL)
-restricted to resolution\/format\/... combinations supported by downstream
-elements (e.g. muxers).
--}
-videoEncoderProxyGetcaps ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@enc@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Maybe (Gst.Caps.Caps)
-    {- ^ /@caps@/: initial caps -}
-    -> Maybe (Gst.Caps.Caps)
-    {- ^ /@filter@/: filter caps -}
-    -> m Gst.Caps.Caps
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Caps.Caps' owned by caller -}
-videoEncoderProxyGetcaps enc caps filter = liftIO $ do
-    enc' <- unsafeManagedPtrCastPtr enc
-    maybeCaps <- case caps of
-        Nothing -> return nullPtr
-        Just jCaps -> do
-            jCaps' <- unsafeManagedPtrGetPtr jCaps
-            return jCaps'
-    maybeFilter <- case filter of
-        Nothing -> return nullPtr
-        Just jFilter -> do
-            jFilter' <- unsafeManagedPtrGetPtr jFilter
-            return jFilter'
-    result <- gst_video_encoder_proxy_getcaps enc' maybeCaps maybeFilter
-    checkUnexpectedReturnNULL "videoEncoderProxyGetcaps" result
-    result' <- (wrapBoxed Gst.Caps.Caps) result
-    touchManagedPtr enc
-    whenJust caps touchManagedPtr
-    whenJust filter touchManagedPtr
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderProxyGetcapsMethodInfo
-instance (signature ~ (Maybe (Gst.Caps.Caps) -> Maybe (Gst.Caps.Caps) -> m Gst.Caps.Caps), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderProxyGetcapsMethodInfo a signature where
-    overloadedMethod _ = videoEncoderProxyGetcaps
-
-#endif
-
--- method VideoEncoder::set_headers
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "headers", argType = TGList (TInterface (Name {namespace = "Gst", name = "Buffer"})), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a list of #GstBuffer containing the codec header", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_set_headers" gst_video_encoder_set_headers :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr (GList (Ptr Gst.Buffer.Buffer)) ->  -- headers : TGList (TInterface (Name {namespace = "Gst", name = "Buffer"}))
-    IO ()
-
-{- |
-Set the codec headers to be sent downstream whenever requested.
--}
-videoEncoderSetHeaders ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> [Gst.Buffer.Buffer]
-    {- ^ /@headers@/: a list of 'GI.Gst.Structs.Buffer.Buffer' containing the codec header -}
-    -> m ()
-videoEncoderSetHeaders encoder headers = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    headers' <- mapM B.ManagedPtr.disownBoxed headers
-    headers'' <- packGList headers'
-    gst_video_encoder_set_headers encoder' headers''
-    touchManagedPtr encoder
-    mapM_ touchManagedPtr headers
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoEncoderSetHeadersMethodInfo
-instance (signature ~ ([Gst.Buffer.Buffer] -> m ()), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderSetHeadersMethodInfo a signature where
-    overloadedMethod _ = videoEncoderSetHeaders
-
-#endif
-
--- method VideoEncoder::set_latency
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "min_latency", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "minimum latency", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "max_latency", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "maximum latency", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_set_latency" gst_video_encoder_set_latency :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Word64 ->                               -- min_latency : TBasicType TUInt64
-    Word64 ->                               -- max_latency : TBasicType TUInt64
-    IO ()
-
-{- |
-Informs baseclass of encoding latency.
--}
-videoEncoderSetLatency ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Word64
-    {- ^ /@minLatency@/: minimum latency -}
-    -> Word64
-    {- ^ /@maxLatency@/: maximum latency -}
-    -> m ()
-videoEncoderSetLatency encoder minLatency maxLatency = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    gst_video_encoder_set_latency encoder' minLatency maxLatency
-    touchManagedPtr encoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoEncoderSetLatencyMethodInfo
-instance (signature ~ (Word64 -> Word64 -> m ()), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderSetLatencyMethodInfo a signature where
-    overloadedMethod _ = videoEncoderSetLatency
-
-#endif
-
--- method VideoEncoder::set_min_pts
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "min_pts", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "minimal PTS that will be passed to handle_frame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_set_min_pts" gst_video_encoder_set_min_pts :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Word64 ->                               -- min_pts : TBasicType TUInt64
-    IO ()
-
-{- |
-Request minimal value for PTS passed to handle_frame.
-
-For streams with reordered frames this can be used to ensure that there
-is enough time to accomodate first DTS, which may be less than first PTS
-
-Since 1.6
--}
-videoEncoderSetMinPts ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Word64
-    {- ^ /@minPts@/: minimal PTS that will be passed to handle_frame -}
-    -> m ()
-videoEncoderSetMinPts encoder minPts = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    gst_video_encoder_set_min_pts encoder' minPts
-    touchManagedPtr encoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoEncoderSetMinPtsMethodInfo
-instance (signature ~ (Word64 -> m ()), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderSetMinPtsMethodInfo a signature where
-    overloadedMethod _ = videoEncoderSetMinPts
-
-#endif
-
--- method VideoEncoder::set_output_state
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "caps", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstCaps to use for the output", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "reference", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "An optional reference @GstVideoCodecState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_set_output_state" gst_video_encoder_set_output_state :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    Ptr Gst.Caps.Caps ->                    -- caps : TInterface (Name {namespace = "Gst", name = "Caps"})
-    Ptr GstVideo.VideoCodecState.VideoCodecState -> -- reference : TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"})
-    IO (Ptr GstVideo.VideoCodecState.VideoCodecState)
-
-{- |
-Creates a new 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' with the specified caps as the output state
-for the encoder.
-Any previously set output state on /@encoder@/ will be replaced by the newly
-created one.
-
-The specified /@caps@/ should not contain any resolution, pixel-aspect-ratio,
-framerate, codec-data, .... Those should be specified instead in the returned
-'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
-
-If the subclass wishes to copy over existing fields (like pixel aspect ratio,
-or framerate) from an existing 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState', it can be provided as a
-/@reference@/.
-
-If the subclass wishes to override some fields from the output state (like
-pixel-aspect-ratio or framerate) it can do so on the returned 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState'.
-
-The new output state will only take effect (set on pads and buffers) starting
-from the next call to @/gst_video_encoder_finish_frame/@().
--}
-videoEncoderSetOutputState ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: a 'GI.GstVideo.Objects.VideoEncoder.VideoEncoder' -}
-    -> Gst.Caps.Caps
-    {- ^ /@caps@/: the 'GI.Gst.Structs.Caps.Caps' to use for the output -}
-    -> Maybe (GstVideo.VideoCodecState.VideoCodecState)
-    {- ^ /@reference@/: An optional reference /@gstVideoCodecState@/ -}
-    -> m GstVideo.VideoCodecState.VideoCodecState
-    {- ^ __Returns:__ the newly configured output state. -}
-videoEncoderSetOutputState encoder caps reference = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    caps' <- B.ManagedPtr.disownBoxed caps
-    maybeReference <- case reference of
-        Nothing -> return nullPtr
-        Just jReference -> do
-            jReference' <- unsafeManagedPtrGetPtr jReference
-            return jReference'
-    result <- gst_video_encoder_set_output_state encoder' caps' maybeReference
-    checkUnexpectedReturnNULL "videoEncoderSetOutputState" result
-    result' <- (wrapBoxed GstVideo.VideoCodecState.VideoCodecState) result
-    touchManagedPtr encoder
-    touchManagedPtr caps
-    whenJust reference touchManagedPtr
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoEncoderSetOutputStateMethodInfo
-instance (signature ~ (Gst.Caps.Caps -> Maybe (GstVideo.VideoCodecState.VideoCodecState) -> m GstVideo.VideoCodecState.VideoCodecState), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderSetOutputStateMethodInfo a signature where
-    overloadedMethod _ = videoEncoderSetOutputState
-
-#endif
-
--- method VideoEncoder::set_qos_enabled
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the encoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "enabled", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the new qos value.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_encoder_set_qos_enabled" gst_video_encoder_set_qos_enabled :: 
-    Ptr VideoEncoder ->                     -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoEncoder"})
-    CInt ->                                 -- enabled : TBasicType TBoolean
-    IO ()
-
-{- |
-Configures /@encoder@/ to handle Quality-of-Service events from downstream.
-
-/Since: 1.14/
--}
-videoEncoderSetQosEnabled ::
-    (B.CallStack.HasCallStack, MonadIO m, IsVideoEncoder a) =>
-    a
-    {- ^ /@encoder@/: the encoder -}
-    -> Bool
-    {- ^ /@enabled@/: the new qos value. -}
-    -> m ()
-videoEncoderSetQosEnabled encoder enabled = liftIO $ do
-    encoder' <- unsafeManagedPtrCastPtr encoder
-    let enabled' = (fromIntegral . fromEnum) enabled
-    gst_video_encoder_set_qos_enabled encoder' enabled'
-    touchManagedPtr encoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoEncoderSetQosEnabledMethodInfo
-instance (signature ~ (Bool -> m ()), MonadIO m, IsVideoEncoder a) => O.MethodInfo VideoEncoderSetQosEnabledMethodInfo a signature where
-    overloadedMethod _ = videoEncoderSetQosEnabled
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoEncoder.hs-boot b/GI/GstVideo/Objects/VideoEncoder.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoEncoder.hs-boot
+++ /dev/null
@@ -1,89 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoEncoder 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoEncoder = VideoEncoder (ManagedPtr VideoEncoder)
-instance GObject VideoEncoder where
-class (GObject o, O.IsDescendantOf VideoEncoder o) => IsVideoEncoder o
-instance (GObject o, O.IsDescendantOf VideoEncoder o) => IsVideoEncoder o
-instance O.HasParentTypes VideoEncoder
-#if ENABLE_OVERLOADING
-data VideoEncoderQosPropertyInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderAllocateOutputBufferMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderAllocateOutputFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderFinishFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetAllocatorMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetFramesMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetLatencyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetMaxEncodeTimeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetOldestFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderGetOutputStateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderIsQosEnabledMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderMergeTagsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderNegotiateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderProxyGetcapsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderSetHeadersMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderSetLatencyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderSetMinPtsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderSetOutputStateMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoEncoderSetQosEnabledMethodInfo
-#endif
diff --git a/GI/GstVideo/Objects/VideoFilter.hs b/GI/GstVideo/Objects/VideoFilter.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoFilter.hs
+++ /dev/null
@@ -1,226 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Provides useful functions and a base class for video filters.
-
-The videofilter will by default enable QoS on the parent GstBaseTransform
-to implement frame dropping.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoFilter
-    ( 
-
--- * Exported types
-    VideoFilter(..)                         ,
-    IsVideoFilter                           ,
-    toVideoFilter                           ,
-    noVideoFilter                           ,
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Objects.Element as Gst.Element
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.GstBase.Objects.BaseTransform as GstBase.BaseTransform
-
--- | Memory-managed wrapper type.
-newtype VideoFilter = VideoFilter (ManagedPtr VideoFilter)
-foreign import ccall "gst_video_filter_get_type"
-    c_gst_video_filter_get_type :: IO GType
-
-instance GObject VideoFilter where
-    gobjectType = c_gst_video_filter_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoFilter`, for instance with `toVideoFilter`.
-class (GObject o, O.IsDescendantOf VideoFilter o) => IsVideoFilter o
-instance (GObject o, O.IsDescendantOf VideoFilter o) => IsVideoFilter o
-
-instance O.HasParentTypes VideoFilter
-type instance O.ParentTypes VideoFilter = '[GstBase.BaseTransform.BaseTransform, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoFilter`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoFilter :: (MonadIO m, IsVideoFilter o) => o -> m VideoFilter
-toVideoFilter = liftIO . unsafeCastTo VideoFilter
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoFilter`.
-noVideoFilter :: Maybe VideoFilter
-noVideoFilter = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoFilterMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoFilterMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
-    ResolveVideoFilterMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoFilterMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
-    ResolveVideoFilterMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
-    ResolveVideoFilterMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
-    ResolveVideoFilterMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoFilterMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoFilterMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
-    ResolveVideoFilterMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
-    ResolveVideoFilterMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
-    ResolveVideoFilterMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
-    ResolveVideoFilterMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoFilterMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoFilterMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
-    ResolveVideoFilterMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
-    ResolveVideoFilterMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
-    ResolveVideoFilterMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoFilterMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoFilterMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoFilterMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoFilterMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoFilterMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoFilterMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoFilterMethod "isInPlace" o = GstBase.BaseTransform.BaseTransformIsInPlaceMethodInfo
-    ResolveVideoFilterMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
-    ResolveVideoFilterMethod "isPassthrough" o = GstBase.BaseTransform.BaseTransformIsPassthroughMethodInfo
-    ResolveVideoFilterMethod "isQosEnabled" o = GstBase.BaseTransform.BaseTransformIsQosEnabledMethodInfo
-    ResolveVideoFilterMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
-    ResolveVideoFilterMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
-    ResolveVideoFilterMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
-    ResolveVideoFilterMethod "link" o = Gst.Element.ElementLinkMethodInfo
-    ResolveVideoFilterMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
-    ResolveVideoFilterMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
-    ResolveVideoFilterMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
-    ResolveVideoFilterMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
-    ResolveVideoFilterMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
-    ResolveVideoFilterMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
-    ResolveVideoFilterMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
-    ResolveVideoFilterMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
-    ResolveVideoFilterMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoFilterMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoFilterMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
-    ResolveVideoFilterMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
-    ResolveVideoFilterMethod "query" o = Gst.Element.ElementQueryMethodInfo
-    ResolveVideoFilterMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
-    ResolveVideoFilterMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
-    ResolveVideoFilterMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
-    ResolveVideoFilterMethod "reconfigureSink" o = GstBase.BaseTransform.BaseTransformReconfigureSinkMethodInfo
-    ResolveVideoFilterMethod "reconfigureSrc" o = GstBase.BaseTransform.BaseTransformReconfigureSrcMethodInfo
-    ResolveVideoFilterMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoFilterMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoFilterMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
-    ResolveVideoFilterMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoFilterMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
-    ResolveVideoFilterMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
-    ResolveVideoFilterMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
-    ResolveVideoFilterMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoFilterMethod "seek" o = Gst.Element.ElementSeekMethodInfo
-    ResolveVideoFilterMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
-    ResolveVideoFilterMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
-    ResolveVideoFilterMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoFilterMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoFilterMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoFilterMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
-    ResolveVideoFilterMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoFilterMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoFilterMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
-    ResolveVideoFilterMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
-    ResolveVideoFilterMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoFilterMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoFilterMethod "updateQos" o = GstBase.BaseTransform.BaseTransformUpdateQosMethodInfo
-    ResolveVideoFilterMethod "updateSrcCaps" o = GstBase.BaseTransform.BaseTransformUpdateSrcCapsMethodInfo
-    ResolveVideoFilterMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoFilterMethod "getAllocator" o = GstBase.BaseTransform.BaseTransformGetAllocatorMethodInfo
-    ResolveVideoFilterMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
-    ResolveVideoFilterMethod "getBufferPool" o = GstBase.BaseTransform.BaseTransformGetBufferPoolMethodInfo
-    ResolveVideoFilterMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
-    ResolveVideoFilterMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
-    ResolveVideoFilterMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
-    ResolveVideoFilterMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
-    ResolveVideoFilterMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
-    ResolveVideoFilterMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
-    ResolveVideoFilterMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
-    ResolveVideoFilterMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoFilterMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoFilterMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoFilterMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
-    ResolveVideoFilterMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoFilterMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
-    ResolveVideoFilterMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoFilterMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
-    ResolveVideoFilterMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
-    ResolveVideoFilterMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoFilterMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoFilterMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoFilterMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoFilterMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
-    ResolveVideoFilterMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
-    ResolveVideoFilterMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
-    ResolveVideoFilterMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
-    ResolveVideoFilterMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoFilterMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
-    ResolveVideoFilterMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
-    ResolveVideoFilterMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
-    ResolveVideoFilterMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
-    ResolveVideoFilterMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoFilterMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoFilterMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoFilterMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoFilterMethod "setGapAware" o = GstBase.BaseTransform.BaseTransformSetGapAwareMethodInfo
-    ResolveVideoFilterMethod "setInPlace" o = GstBase.BaseTransform.BaseTransformSetInPlaceMethodInfo
-    ResolveVideoFilterMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
-    ResolveVideoFilterMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoFilterMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoFilterMethod "setPassthrough" o = GstBase.BaseTransform.BaseTransformSetPassthroughMethodInfo
-    ResolveVideoFilterMethod "setPreferPassthrough" o = GstBase.BaseTransform.BaseTransformSetPreferPassthroughMethodInfo
-    ResolveVideoFilterMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoFilterMethod "setQosEnabled" o = GstBase.BaseTransform.BaseTransformSetQosEnabledMethodInfo
-    ResolveVideoFilterMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
-    ResolveVideoFilterMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
-    ResolveVideoFilterMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoFilterMethod t VideoFilter, O.MethodInfo info VideoFilter p) => OL.IsLabel t (VideoFilter -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoFilter
-type instance O.AttributeList VideoFilter = VideoFilterAttributeList
-type VideoFilterAttributeList = ('[ '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("qos", GstBase.BaseTransform.BaseTransformQosPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoFilter = VideoFilterSignalList
-type VideoFilterSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoFilter.hs-boot b/GI/GstVideo/Objects/VideoFilter.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoFilter.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoFilter 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoFilter = VideoFilter (ManagedPtr VideoFilter)
-instance GObject VideoFilter where
-class (GObject o, O.IsDescendantOf VideoFilter o) => IsVideoFilter o
-instance (GObject o, O.IsDescendantOf VideoFilter o) => IsVideoFilter o
-instance O.HasParentTypes VideoFilter
diff --git a/GI/GstVideo/Objects/VideoMultiviewFlagsSet.hs b/GI/GstVideo/Objects/VideoMultiviewFlagsSet.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoMultiviewFlagsSet.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoMultiviewFlagsSet () 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- APIObject "VideoMultiviewFlagsSet" does not descend from GObject, it will be ignored.
-
diff --git a/GI/GstVideo/Objects/VideoSink.hs b/GI/GstVideo/Objects/VideoSink.hs
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoSink.hs
+++ /dev/null
@@ -1,367 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Provides useful functions and a base class for video sinks.
-
-GstVideoSink will configure the default base sink to drop frames that
-arrive later than 20ms as this is considered the default threshold for
-observing out-of-sync frames.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Objects.VideoSink
-    ( 
-
--- * Exported types
-    VideoSink(..)                           ,
-    IsVideoSink                             ,
-    toVideoSink                             ,
-    noVideoSink                             ,
-
-
- -- * Methods
--- ** centerRect #method:centerRect#
-
-    videoSinkCenterRect                     ,
-
-
-
-
- -- * Properties
--- ** showPrerollFrame #attr:showPrerollFrame#
-{- | Whether to show video frames during preroll. If set to 'False', video
-frames will only be rendered in PLAYING state.
--}
-#if ENABLE_OVERLOADING
-    VideoSinkShowPrerollFramePropertyInfo   ,
-#endif
-    constructVideoSinkShowPrerollFrame      ,
-    getVideoSinkShowPrerollFrame            ,
-    setVideoSinkShowPrerollFrame            ,
-#if ENABLE_OVERLOADING
-    videoSinkShowPrerollFrame               ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GObject.Objects.Object as GObject.Object
-import qualified GI.Gst.Objects.Element as Gst.Element
-import qualified GI.Gst.Objects.Object as Gst.Object
-import qualified GI.GstBase.Objects.BaseSink as GstBase.BaseSink
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoRectangle as GstVideo.VideoRectangle
-
--- | Memory-managed wrapper type.
-newtype VideoSink = VideoSink (ManagedPtr VideoSink)
-foreign import ccall "gst_video_sink_get_type"
-    c_gst_video_sink_get_type :: IO GType
-
-instance GObject VideoSink where
-    gobjectType = c_gst_video_sink_get_type
-    
-
--- | Type class for types which can be safely cast to `VideoSink`, for instance with `toVideoSink`.
-class (GObject o, O.IsDescendantOf VideoSink o) => IsVideoSink o
-instance (GObject o, O.IsDescendantOf VideoSink o) => IsVideoSink o
-
-instance O.HasParentTypes VideoSink
-type instance O.ParentTypes VideoSink = '[GstBase.BaseSink.BaseSink, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
-
--- | Cast to `VideoSink`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
-toVideoSink :: (MonadIO m, IsVideoSink o) => o -> m VideoSink
-toVideoSink = liftIO . unsafeCastTo VideoSink
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoSink`.
-noVideoSink :: Maybe VideoSink
-noVideoSink = Nothing
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoSinkMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoSinkMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
-    ResolveVideoSinkMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
-    ResolveVideoSinkMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
-    ResolveVideoSinkMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
-    ResolveVideoSinkMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
-    ResolveVideoSinkMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
-    ResolveVideoSinkMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
-    ResolveVideoSinkMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
-    ResolveVideoSinkMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
-    ResolveVideoSinkMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
-    ResolveVideoSinkMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
-    ResolveVideoSinkMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
-    ResolveVideoSinkMethod "doPreroll" o = GstBase.BaseSink.BaseSinkDoPrerollMethodInfo
-    ResolveVideoSinkMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
-    ResolveVideoSinkMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
-    ResolveVideoSinkMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
-    ResolveVideoSinkMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
-    ResolveVideoSinkMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
-    ResolveVideoSinkMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
-    ResolveVideoSinkMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
-    ResolveVideoSinkMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
-    ResolveVideoSinkMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
-    ResolveVideoSinkMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
-    ResolveVideoSinkMethod "isAsyncEnabled" o = GstBase.BaseSink.BaseSinkIsAsyncEnabledMethodInfo
-    ResolveVideoSinkMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
-    ResolveVideoSinkMethod "isLastSampleEnabled" o = GstBase.BaseSink.BaseSinkIsLastSampleEnabledMethodInfo
-    ResolveVideoSinkMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
-    ResolveVideoSinkMethod "isQosEnabled" o = GstBase.BaseSink.BaseSinkIsQosEnabledMethodInfo
-    ResolveVideoSinkMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
-    ResolveVideoSinkMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
-    ResolveVideoSinkMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
-    ResolveVideoSinkMethod "link" o = Gst.Element.ElementLinkMethodInfo
-    ResolveVideoSinkMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
-    ResolveVideoSinkMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
-    ResolveVideoSinkMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
-    ResolveVideoSinkMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
-    ResolveVideoSinkMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
-    ResolveVideoSinkMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
-    ResolveVideoSinkMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
-    ResolveVideoSinkMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
-    ResolveVideoSinkMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
-    ResolveVideoSinkMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
-    ResolveVideoSinkMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
-    ResolveVideoSinkMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
-    ResolveVideoSinkMethod "query" o = Gst.Element.ElementQueryMethodInfo
-    ResolveVideoSinkMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
-    ResolveVideoSinkMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
-    ResolveVideoSinkMethod "queryLatency" o = GstBase.BaseSink.BaseSinkQueryLatencyMethodInfo
-    ResolveVideoSinkMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
-    ResolveVideoSinkMethod "ref" o = Gst.Object.ObjectRefMethodInfo
-    ResolveVideoSinkMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
-    ResolveVideoSinkMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
-    ResolveVideoSinkMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
-    ResolveVideoSinkMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
-    ResolveVideoSinkMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
-    ResolveVideoSinkMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
-    ResolveVideoSinkMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
-    ResolveVideoSinkMethod "seek" o = Gst.Element.ElementSeekMethodInfo
-    ResolveVideoSinkMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
-    ResolveVideoSinkMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
-    ResolveVideoSinkMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
-    ResolveVideoSinkMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
-    ResolveVideoSinkMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
-    ResolveVideoSinkMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
-    ResolveVideoSinkMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
-    ResolveVideoSinkMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
-    ResolveVideoSinkMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
-    ResolveVideoSinkMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
-    ResolveVideoSinkMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
-    ResolveVideoSinkMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
-    ResolveVideoSinkMethod "wait" o = GstBase.BaseSink.BaseSinkWaitMethodInfo
-    ResolveVideoSinkMethod "waitClock" o = GstBase.BaseSink.BaseSinkWaitClockMethodInfo
-    ResolveVideoSinkMethod "waitPreroll" o = GstBase.BaseSink.BaseSinkWaitPrerollMethodInfo
-    ResolveVideoSinkMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
-    ResolveVideoSinkMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
-    ResolveVideoSinkMethod "getBlocksize" o = GstBase.BaseSink.BaseSinkGetBlocksizeMethodInfo
-    ResolveVideoSinkMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
-    ResolveVideoSinkMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
-    ResolveVideoSinkMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
-    ResolveVideoSinkMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
-    ResolveVideoSinkMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
-    ResolveVideoSinkMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
-    ResolveVideoSinkMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
-    ResolveVideoSinkMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
-    ResolveVideoSinkMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
-    ResolveVideoSinkMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
-    ResolveVideoSinkMethod "getDropOutOfSegment" o = GstBase.BaseSink.BaseSinkGetDropOutOfSegmentMethodInfo
-    ResolveVideoSinkMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
-    ResolveVideoSinkMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
-    ResolveVideoSinkMethod "getLastSample" o = GstBase.BaseSink.BaseSinkGetLastSampleMethodInfo
-    ResolveVideoSinkMethod "getLatency" o = GstBase.BaseSink.BaseSinkGetLatencyMethodInfo
-    ResolveVideoSinkMethod "getMaxBitrate" o = GstBase.BaseSink.BaseSinkGetMaxBitrateMethodInfo
-    ResolveVideoSinkMethod "getMaxLateness" o = GstBase.BaseSink.BaseSinkGetMaxLatenessMethodInfo
-    ResolveVideoSinkMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
-    ResolveVideoSinkMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
-    ResolveVideoSinkMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
-    ResolveVideoSinkMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
-    ResolveVideoSinkMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
-    ResolveVideoSinkMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
-    ResolveVideoSinkMethod "getProcessingDeadline" o = GstBase.BaseSink.BaseSinkGetProcessingDeadlineMethodInfo
-    ResolveVideoSinkMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
-    ResolveVideoSinkMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
-    ResolveVideoSinkMethod "getRenderDelay" o = GstBase.BaseSink.BaseSinkGetRenderDelayMethodInfo
-    ResolveVideoSinkMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
-    ResolveVideoSinkMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
-    ResolveVideoSinkMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
-    ResolveVideoSinkMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
-    ResolveVideoSinkMethod "getSync" o = GstBase.BaseSink.BaseSinkGetSyncMethodInfo
-    ResolveVideoSinkMethod "getThrottleTime" o = GstBase.BaseSink.BaseSinkGetThrottleTimeMethodInfo
-    ResolveVideoSinkMethod "getTsOffset" o = GstBase.BaseSink.BaseSinkGetTsOffsetMethodInfo
-    ResolveVideoSinkMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
-    ResolveVideoSinkMethod "setAsyncEnabled" o = GstBase.BaseSink.BaseSinkSetAsyncEnabledMethodInfo
-    ResolveVideoSinkMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
-    ResolveVideoSinkMethod "setBlocksize" o = GstBase.BaseSink.BaseSinkSetBlocksizeMethodInfo
-    ResolveVideoSinkMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
-    ResolveVideoSinkMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
-    ResolveVideoSinkMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
-    ResolveVideoSinkMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
-    ResolveVideoSinkMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
-    ResolveVideoSinkMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
-    ResolveVideoSinkMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
-    ResolveVideoSinkMethod "setDropOutOfSegment" o = GstBase.BaseSink.BaseSinkSetDropOutOfSegmentMethodInfo
-    ResolveVideoSinkMethod "setLastSampleEnabled" o = GstBase.BaseSink.BaseSinkSetLastSampleEnabledMethodInfo
-    ResolveVideoSinkMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
-    ResolveVideoSinkMethod "setMaxBitrate" o = GstBase.BaseSink.BaseSinkSetMaxBitrateMethodInfo
-    ResolveVideoSinkMethod "setMaxLateness" o = GstBase.BaseSink.BaseSinkSetMaxLatenessMethodInfo
-    ResolveVideoSinkMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
-    ResolveVideoSinkMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
-    ResolveVideoSinkMethod "setProcessingDeadline" o = GstBase.BaseSink.BaseSinkSetProcessingDeadlineMethodInfo
-    ResolveVideoSinkMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
-    ResolveVideoSinkMethod "setQosEnabled" o = GstBase.BaseSink.BaseSinkSetQosEnabledMethodInfo
-    ResolveVideoSinkMethod "setRenderDelay" o = GstBase.BaseSink.BaseSinkSetRenderDelayMethodInfo
-    ResolveVideoSinkMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
-    ResolveVideoSinkMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
-    ResolveVideoSinkMethod "setSync" o = GstBase.BaseSink.BaseSinkSetSyncMethodInfo
-    ResolveVideoSinkMethod "setThrottleTime" o = GstBase.BaseSink.BaseSinkSetThrottleTimeMethodInfo
-    ResolveVideoSinkMethod "setTsOffset" o = GstBase.BaseSink.BaseSinkSetTsOffsetMethodInfo
-    ResolveVideoSinkMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoSinkMethod t VideoSink, O.MethodInfo info VideoSink p) => OL.IsLabel t (VideoSink -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
--- VVV Prop "show-preroll-frame"
-   -- Type: TBasicType TBoolean
-   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]
-   -- Nullable: (Nothing,Nothing)
-
-{- |
-Get the value of the “@show-preroll-frame@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoSink #showPrerollFrame
-@
--}
-getVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> m Bool
-getVideoSinkShowPrerollFrame obj = liftIO $ B.Properties.getObjectPropertyBool obj "show-preroll-frame"
-
-{- |
-Set the value of the “@show-preroll-frame@” property.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoSink [ #showPrerollFrame 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> Bool -> m ()
-setVideoSinkShowPrerollFrame obj val = liftIO $ B.Properties.setObjectPropertyBool obj "show-preroll-frame" val
-
-{- |
-Construct a `GValueConstruct` with valid value for the “@show-preroll-frame@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
--}
-constructVideoSinkShowPrerollFrame :: (IsVideoSink o) => Bool -> IO (GValueConstruct o)
-constructVideoSinkShowPrerollFrame val = B.Properties.constructObjectPropertyBool "show-preroll-frame" val
-
-#if ENABLE_OVERLOADING
-data VideoSinkShowPrerollFramePropertyInfo
-instance AttrInfo VideoSinkShowPrerollFramePropertyInfo where
-    type AttrAllowedOps VideoSinkShowPrerollFramePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
-    type AttrSetTypeConstraint VideoSinkShowPrerollFramePropertyInfo = (~) Bool
-    type AttrBaseTypeConstraint VideoSinkShowPrerollFramePropertyInfo = IsVideoSink
-    type AttrGetType VideoSinkShowPrerollFramePropertyInfo = Bool
-    type AttrLabel VideoSinkShowPrerollFramePropertyInfo = "show-preroll-frame"
-    type AttrOrigin VideoSinkShowPrerollFramePropertyInfo = VideoSink
-    attrGet _ = getVideoSinkShowPrerollFrame
-    attrSet _ = setVideoSinkShowPrerollFrame
-    attrConstruct _ = constructVideoSinkShowPrerollFrame
-    attrClear _ = undefined
-#endif
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoSink
-type instance O.AttributeList VideoSink = VideoSinkAttributeList
-type VideoSinkAttributeList = ('[ '("async", GstBase.BaseSink.BaseSinkAsyncPropertyInfo), '("blocksize", GstBase.BaseSink.BaseSinkBlocksizePropertyInfo), '("enableLastSample", GstBase.BaseSink.BaseSinkEnableLastSamplePropertyInfo), '("lastSample", GstBase.BaseSink.BaseSinkLastSamplePropertyInfo), '("maxBitrate", GstBase.BaseSink.BaseSinkMaxBitratePropertyInfo), '("maxLateness", GstBase.BaseSink.BaseSinkMaxLatenessPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("processingDeadline", GstBase.BaseSink.BaseSinkProcessingDeadlinePropertyInfo), '("qos", GstBase.BaseSink.BaseSinkQosPropertyInfo), '("renderDelay", GstBase.BaseSink.BaseSinkRenderDelayPropertyInfo), '("showPrerollFrame", VideoSinkShowPrerollFramePropertyInfo), '("sync", GstBase.BaseSink.BaseSinkSyncPropertyInfo), '("throttleTime", GstBase.BaseSink.BaseSinkThrottleTimePropertyInfo), '("tsOffset", GstBase.BaseSink.BaseSinkTsOffsetPropertyInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-videoSinkShowPrerollFrame :: AttrLabelProxy "showPrerollFrame"
-videoSinkShowPrerollFrame = AttrLabelProxy
-
-#endif
-
-#if ENABLE_OVERLOADING
-type instance O.SignalList VideoSink = VideoSinkSignalList
-type VideoSinkSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
-
-#endif
-
--- method VideoSink::center_rect
--- method type : MemberFunction
--- Args : [Arg {argCName = "src", argType = TInterface (Name {namespace = "GstVideo", name = "VideoRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoRectangle describing the source area", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dst", argType = TInterface (Name {namespace = "GstVideo", name = "VideoRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GstVideoRectangle describing the destination area", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "result", argType = TInterface (Name {namespace = "GstVideo", name = "VideoRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a pointer to a #GstVideoRectangle which will receive the result area", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "scaling", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #gboolean indicating if scaling should be applied or not", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_sink_center_rect" gst_video_sink_center_rect :: 
-    Ptr GstVideo.VideoRectangle.VideoRectangle -> -- src : TInterface (Name {namespace = "GstVideo", name = "VideoRectangle"})
-    Ptr GstVideo.VideoRectangle.VideoRectangle -> -- dst : TInterface (Name {namespace = "GstVideo", name = "VideoRectangle"})
-    Ptr GstVideo.VideoRectangle.VideoRectangle -> -- result : TInterface (Name {namespace = "GstVideo", name = "VideoRectangle"})
-    CInt ->                                 -- scaling : TBasicType TBoolean
-    IO ()
-
-{- |
-Takes /@src@/ rectangle and position it at the center of /@dst@/ rectangle with or
-without /@scaling@/. It handles clipping if the /@src@/ rectangle is bigger than
-the /@dst@/ one and /@scaling@/ is set to FALSE.
--}
-videoSinkCenterRect ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.VideoRectangle.VideoRectangle
-    {- ^ /@src@/: the 'GI.GstVideo.Structs.VideoRectangle.VideoRectangle' describing the source area -}
-    -> GstVideo.VideoRectangle.VideoRectangle
-    {- ^ /@dst@/: the 'GI.GstVideo.Structs.VideoRectangle.VideoRectangle' describing the destination area -}
-    -> GstVideo.VideoRectangle.VideoRectangle
-    {- ^ /@result@/: a pointer to a 'GI.GstVideo.Structs.VideoRectangle.VideoRectangle' which will receive the result area -}
-    -> Bool
-    {- ^ /@scaling@/: a 'Bool' indicating if scaling should be applied or not -}
-    -> m ()
-videoSinkCenterRect src dst result_ scaling = liftIO $ do
-    src' <- unsafeManagedPtrGetPtr src
-    dst' <- unsafeManagedPtrGetPtr dst
-    result_' <- unsafeManagedPtrGetPtr result_
-    let scaling' = (fromIntegral . fromEnum) scaling
-    gst_video_sink_center_rect src' dst' result_' scaling'
-    touchManagedPtr src
-    touchManagedPtr dst
-    touchManagedPtr result_
-    return ()
-
-#if ENABLE_OVERLOADING
-#endif
-
-
diff --git a/GI/GstVideo/Objects/VideoSink.hs-boot b/GI/GstVideo/Objects/VideoSink.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Objects/VideoSink.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Objects.VideoSink 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoSink = VideoSink (ManagedPtr VideoSink)
-instance GObject VideoSink where
-class (GObject o, O.IsDescendantOf VideoSink o) => IsVideoSink o
-instance (GObject o, O.IsDescendantOf VideoSink o) => IsVideoSink o
-instance O.HasParentTypes VideoSink
-#if ENABLE_OVERLOADING
-data VideoSinkShowPrerollFramePropertyInfo
-#endif
diff --git a/GI/GstVideo/Structs.hs b/GI/GstVideo/Structs.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs.hs
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs
-    (     module GI.GstVideo.Structs.VideoAffineTransformationMeta,
-    module GI.GstVideo.Structs.VideoAlignment,
-    module GI.GstVideo.Structs.VideoAncillary,
-    module GI.GstVideo.Structs.VideoCaptionMeta,
-    module GI.GstVideo.Structs.VideoChromaResample,
-    module GI.GstVideo.Structs.VideoCodecFrame,
-    module GI.GstVideo.Structs.VideoCodecState,
-    module GI.GstVideo.Structs.VideoColorPrimariesInfo,
-    module GI.GstVideo.Structs.VideoColorimetry,
-    module GI.GstVideo.Structs.VideoConverter,
-    module GI.GstVideo.Structs.VideoCropMeta,
-    module GI.GstVideo.Structs.VideoDither  ,
-    module GI.GstVideo.Structs.VideoFormatInfo,
-    module GI.GstVideo.Structs.VideoFrame   ,
-    module GI.GstVideo.Structs.VideoGLTextureUploadMeta,
-    module GI.GstVideo.Structs.VideoInfo    ,
-    module GI.GstVideo.Structs.VideoMeta    ,
-    module GI.GstVideo.Structs.VideoMetaTransform,
-    module GI.GstVideo.Structs.VideoOverlayComposition,
-    module GI.GstVideo.Structs.VideoOverlayCompositionMeta,
-    module GI.GstVideo.Structs.VideoOverlayRectangle,
-    module GI.GstVideo.Structs.VideoRectangle,
-    module GI.GstVideo.Structs.VideoRegionOfInterestMeta,
-    module GI.GstVideo.Structs.VideoResampler,
-    module GI.GstVideo.Structs.VideoScaler  ,
-    module GI.GstVideo.Structs.VideoTimeCode,
-    module GI.GstVideo.Structs.VideoTimeCodeConfig,
-    module GI.GstVideo.Structs.VideoTimeCodeInterval,
-    module GI.GstVideo.Structs.VideoTimeCodeMeta,
-    module GI.GstVideo.Structs.VideoVBIEncoder,
-    module GI.GstVideo.Structs.VideoVBIParser,
-
-
-    ) where
-
-import GI.GstVideo.Structs.VideoAffineTransformationMeta
-import GI.GstVideo.Structs.VideoAlignment
-import GI.GstVideo.Structs.VideoAncillary
-import GI.GstVideo.Structs.VideoCaptionMeta
-import GI.GstVideo.Structs.VideoChromaResample
-import GI.GstVideo.Structs.VideoCodecFrame
-import GI.GstVideo.Structs.VideoCodecState
-import GI.GstVideo.Structs.VideoColorPrimariesInfo
-import GI.GstVideo.Structs.VideoColorimetry
-import GI.GstVideo.Structs.VideoConverter
-import GI.GstVideo.Structs.VideoCropMeta
-import GI.GstVideo.Structs.VideoDither
-import GI.GstVideo.Structs.VideoFormatInfo
-import GI.GstVideo.Structs.VideoFrame
-import GI.GstVideo.Structs.VideoGLTextureUploadMeta
-import GI.GstVideo.Structs.VideoInfo
-import GI.GstVideo.Structs.VideoMeta
-import GI.GstVideo.Structs.VideoMetaTransform
-import GI.GstVideo.Structs.VideoOverlayComposition
-import GI.GstVideo.Structs.VideoOverlayCompositionMeta
-import GI.GstVideo.Structs.VideoOverlayRectangle
-import GI.GstVideo.Structs.VideoRectangle
-import GI.GstVideo.Structs.VideoRegionOfInterestMeta
-import GI.GstVideo.Structs.VideoResampler
-import GI.GstVideo.Structs.VideoScaler
-import GI.GstVideo.Structs.VideoTimeCode
-import GI.GstVideo.Structs.VideoTimeCodeConfig
-import GI.GstVideo.Structs.VideoTimeCodeInterval
-import GI.GstVideo.Structs.VideoTimeCodeMeta
-import GI.GstVideo.Structs.VideoVBIEncoder
-import GI.GstVideo.Structs.VideoVBIParser
-
-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.ManagedPtr as B.ManagedPtr
-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.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
-
-
-
diff --git a/GI/GstVideo/Structs/VideoAffineTransformationMeta.hs b/GI/GstVideo/Structs/VideoAffineTransformationMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoAffineTransformationMeta.hs
+++ /dev/null
@@ -1,231 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata for performing an affine transformation using a 4x4
-matrix. The transformation matrix can be composed with
-'GI.GstVideo.Structs.VideoAffineTransformationMeta.videoAffineTransformationMetaApplyMatrix'.
-
-The vertices operated on are all in the range 0 to 1, not in
-Normalized Device Coordinates (-1 to +1). Transforming points in this space
-are assumed to have an origin at (0.5, 0.5, 0.5) in a left-handed coordinate
-system with the x-axis moving horizontally (positive values to the right),
-the y-axis moving vertically (positive values up the screen) and the z-axis
-perpendicular to the screen (positive values into the screen).
-
-/Since: 1.8/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoAffineTransformationMeta
-    ( 
-
--- * Exported types
-    VideoAffineTransformationMeta(..)       ,
-    newZeroVideoAffineTransformationMeta    ,
-    noVideoAffineTransformationMeta         ,
-
-
- -- * Methods
--- ** applyMatrix #method:applyMatrix#
-
-#if ENABLE_OVERLOADING
-    VideoAffineTransformationMetaApplyMatrixMethodInfo,
-#endif
-    videoAffineTransformationMetaApplyMatrix,
-
-
--- ** getInfo #method:getInfo#
-
-    videoAffineTransformationMetaGetInfo    ,
-
-
-
-
- -- * Properties
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoAffineTransformationMetaMeta    ,
-#if ENABLE_OVERLOADING
-    videoAffineTransformationMeta_meta      ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-
--- | Memory-managed wrapper type.
-newtype VideoAffineTransformationMeta = VideoAffineTransformationMeta (ManagedPtr VideoAffineTransformationMeta)
-instance WrappedPtr VideoAffineTransformationMeta where
-    wrappedPtrCalloc = callocBytes 80
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 80 >=> wrapPtr VideoAffineTransformationMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoAffineTransformationMeta` struct initialized to zero.
-newZeroVideoAffineTransformationMeta :: MonadIO m => m VideoAffineTransformationMeta
-newZeroVideoAffineTransformationMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoAffineTransformationMeta
-
-instance tag ~ 'AttrSet => Constructible VideoAffineTransformationMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoAffineTransformationMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoAffineTransformationMeta`.
-noVideoAffineTransformationMeta :: Maybe VideoAffineTransformationMeta
-noVideoAffineTransformationMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAffineTransformationMeta #meta
-@
--}
-getVideoAffineTransformationMetaMeta :: MonadIO m => VideoAffineTransformationMeta -> m Gst.Meta.Meta
-getVideoAffineTransformationMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoAffineTransformationMetaMetaFieldInfo
-instance AttrInfo VideoAffineTransformationMetaMetaFieldInfo where
-    type AttrAllowedOps VideoAffineTransformationMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoAffineTransformationMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoAffineTransformationMetaMetaFieldInfo = (~) VideoAffineTransformationMeta
-    type AttrGetType VideoAffineTransformationMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoAffineTransformationMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoAffineTransformationMetaMetaFieldInfo = VideoAffineTransformationMeta
-    attrGet _ = getVideoAffineTransformationMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAffineTransformationMeta_meta :: AttrLabelProxy "meta"
-videoAffineTransformationMeta_meta = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoAffineTransformationMeta:matrix" :: Not implemented: "Don't know how to unpack C array of type TCArray False 16 (-1) (TBasicType TFloat)"
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoAffineTransformationMeta
-type instance O.AttributeList VideoAffineTransformationMeta = VideoAffineTransformationMetaAttributeList
-type VideoAffineTransformationMetaAttributeList = ('[ '("meta", VideoAffineTransformationMetaMetaFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoAffineTransformationMeta::apply_matrix
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAffineTransformationMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAffineTransformationMeta", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "matrix", argType = TBasicType TFloat, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a 4x4 transformation matrix to be applied", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_affine_transformation_meta_apply_matrix" gst_video_affine_transformation_meta_apply_matrix :: 
-    Ptr VideoAffineTransformationMeta ->    -- meta : TInterface (Name {namespace = "GstVideo", name = "VideoAffineTransformationMeta"})
-    CFloat ->                               -- matrix : TBasicType TFloat
-    IO ()
-
-{- |
-Apply a transformation using the given 4x4 transformation matrix.
-Performs the multiplication, meta->matrix X matrix.
-
-/Since: 1.8/
--}
-videoAffineTransformationMetaApplyMatrix ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoAffineTransformationMeta
-    {- ^ /@meta@/: a 'GI.GstVideo.Structs.VideoAffineTransformationMeta.VideoAffineTransformationMeta' -}
-    -> Float
-    {- ^ /@matrix@/: a 4x4 transformation matrix to be applied -}
-    -> m ()
-videoAffineTransformationMetaApplyMatrix meta matrix = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    let matrix' = realToFrac matrix
-    gst_video_affine_transformation_meta_apply_matrix meta' matrix'
-    touchManagedPtr meta
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoAffineTransformationMetaApplyMatrixMethodInfo
-instance (signature ~ (Float -> m ()), MonadIO m) => O.MethodInfo VideoAffineTransformationMetaApplyMatrixMethodInfo VideoAffineTransformationMeta signature where
-    overloadedMethod _ = videoAffineTransformationMetaApplyMatrix
-
-#endif
-
--- method VideoAffineTransformationMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_affine_transformation_meta_get_info" gst_video_affine_transformation_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoAffineTransformationMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoAffineTransformationMetaGetInfo  = liftIO $ do
-    result <- gst_video_affine_transformation_meta_get_info
-    checkUnexpectedReturnNULL "videoAffineTransformationMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoAffineTransformationMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoAffineTransformationMetaMethod "applyMatrix" o = VideoAffineTransformationMetaApplyMatrixMethodInfo
-    ResolveVideoAffineTransformationMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoAffineTransformationMetaMethod t VideoAffineTransformationMeta, O.MethodInfo info VideoAffineTransformationMeta p) => OL.IsLabel t (VideoAffineTransformationMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoAffineTransformationMeta.hs-boot b/GI/GstVideo/Structs/VideoAffineTransformationMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoAffineTransformationMeta.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoAffineTransformationMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoAffineTransformationMeta = VideoAffineTransformationMeta (ManagedPtr VideoAffineTransformationMeta)
-instance WrappedPtr VideoAffineTransformationMeta where
-#if ENABLE_OVERLOADING
-data VideoAffineTransformationMetaApplyMatrixMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoAlignment.hs b/GI/GstVideo/Structs/VideoAlignment.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoAlignment.hs
+++ /dev/null
@@ -1,359 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra alignment parameters for the memory of video buffers. This
-structure is usually used to configure the bufferpool if it supports the
-'GI.GstVideo.Constants.BUFFER_POOL_OPTION_VIDEO_ALIGNMENT'.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoAlignment
-    ( 
-
--- * Exported types
-    VideoAlignment(..)                      ,
-    newZeroVideoAlignment                   ,
-    noVideoAlignment                        ,
-
-
- -- * Methods
--- ** reset #method:reset#
-
-#if ENABLE_OVERLOADING
-    VideoAlignmentResetMethodInfo           ,
-#endif
-    videoAlignmentReset                     ,
-
-
-
-
- -- * Properties
--- ** paddingBottom #attr:paddingBottom#
-{- | extra pixels on the bottom
--}
-    getVideoAlignmentPaddingBottom          ,
-    setVideoAlignmentPaddingBottom          ,
-#if ENABLE_OVERLOADING
-    videoAlignment_paddingBottom            ,
-#endif
-
-
--- ** paddingLeft #attr:paddingLeft#
-{- | extra pixels on the left side
--}
-    getVideoAlignmentPaddingLeft            ,
-    setVideoAlignmentPaddingLeft            ,
-#if ENABLE_OVERLOADING
-    videoAlignment_paddingLeft              ,
-#endif
-
-
--- ** paddingRight #attr:paddingRight#
-{- | extra pixels on the right side
--}
-    getVideoAlignmentPaddingRight           ,
-    setVideoAlignmentPaddingRight           ,
-#if ENABLE_OVERLOADING
-    videoAlignment_paddingRight             ,
-#endif
-
-
--- ** paddingTop #attr:paddingTop#
-{- | extra pixels on the top
--}
-    getVideoAlignmentPaddingTop             ,
-    setVideoAlignmentPaddingTop             ,
-#if ENABLE_OVERLOADING
-    videoAlignment_paddingTop               ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- | Memory-managed wrapper type.
-newtype VideoAlignment = VideoAlignment (ManagedPtr VideoAlignment)
-instance WrappedPtr VideoAlignment where
-    wrappedPtrCalloc = callocBytes 32
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 32 >=> wrapPtr VideoAlignment)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoAlignment` struct initialized to zero.
-newZeroVideoAlignment :: MonadIO m => m VideoAlignment
-newZeroVideoAlignment = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoAlignment
-
-instance tag ~ 'AttrSet => Constructible VideoAlignment tag where
-    new _ attrs = do
-        o <- newZeroVideoAlignment
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoAlignment`.
-noVideoAlignment :: Maybe VideoAlignment
-noVideoAlignment = Nothing
-
-{- |
-Get the value of the “@padding_top@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAlignment #paddingTop
-@
--}
-getVideoAlignmentPaddingTop :: MonadIO m => VideoAlignment -> m Word32
-getVideoAlignmentPaddingTop s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@padding_top@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAlignment [ #paddingTop 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAlignmentPaddingTop :: MonadIO m => VideoAlignment -> Word32 -> m ()
-setVideoAlignmentPaddingTop s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoAlignmentPaddingTopFieldInfo
-instance AttrInfo VideoAlignmentPaddingTopFieldInfo where
-    type AttrAllowedOps VideoAlignmentPaddingTopFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAlignmentPaddingTopFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoAlignmentPaddingTopFieldInfo = (~) VideoAlignment
-    type AttrGetType VideoAlignmentPaddingTopFieldInfo = Word32
-    type AttrLabel VideoAlignmentPaddingTopFieldInfo = "padding_top"
-    type AttrOrigin VideoAlignmentPaddingTopFieldInfo = VideoAlignment
-    attrGet _ = getVideoAlignmentPaddingTop
-    attrSet _ = setVideoAlignmentPaddingTop
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAlignment_paddingTop :: AttrLabelProxy "paddingTop"
-videoAlignment_paddingTop = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@padding_bottom@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAlignment #paddingBottom
-@
--}
-getVideoAlignmentPaddingBottom :: MonadIO m => VideoAlignment -> m Word32
-getVideoAlignmentPaddingBottom s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 4) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@padding_bottom@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAlignment [ #paddingBottom 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAlignmentPaddingBottom :: MonadIO m => VideoAlignment -> Word32 -> m ()
-setVideoAlignmentPaddingBottom s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 4) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoAlignmentPaddingBottomFieldInfo
-instance AttrInfo VideoAlignmentPaddingBottomFieldInfo where
-    type AttrAllowedOps VideoAlignmentPaddingBottomFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAlignmentPaddingBottomFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoAlignmentPaddingBottomFieldInfo = (~) VideoAlignment
-    type AttrGetType VideoAlignmentPaddingBottomFieldInfo = Word32
-    type AttrLabel VideoAlignmentPaddingBottomFieldInfo = "padding_bottom"
-    type AttrOrigin VideoAlignmentPaddingBottomFieldInfo = VideoAlignment
-    attrGet _ = getVideoAlignmentPaddingBottom
-    attrSet _ = setVideoAlignmentPaddingBottom
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAlignment_paddingBottom :: AttrLabelProxy "paddingBottom"
-videoAlignment_paddingBottom = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@padding_left@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAlignment #paddingLeft
-@
--}
-getVideoAlignmentPaddingLeft :: MonadIO m => VideoAlignment -> m Word32
-getVideoAlignmentPaddingLeft s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@padding_left@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAlignment [ #paddingLeft 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAlignmentPaddingLeft :: MonadIO m => VideoAlignment -> Word32 -> m ()
-setVideoAlignmentPaddingLeft s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoAlignmentPaddingLeftFieldInfo
-instance AttrInfo VideoAlignmentPaddingLeftFieldInfo where
-    type AttrAllowedOps VideoAlignmentPaddingLeftFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAlignmentPaddingLeftFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoAlignmentPaddingLeftFieldInfo = (~) VideoAlignment
-    type AttrGetType VideoAlignmentPaddingLeftFieldInfo = Word32
-    type AttrLabel VideoAlignmentPaddingLeftFieldInfo = "padding_left"
-    type AttrOrigin VideoAlignmentPaddingLeftFieldInfo = VideoAlignment
-    attrGet _ = getVideoAlignmentPaddingLeft
-    attrSet _ = setVideoAlignmentPaddingLeft
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAlignment_paddingLeft :: AttrLabelProxy "paddingLeft"
-videoAlignment_paddingLeft = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@padding_right@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAlignment #paddingRight
-@
--}
-getVideoAlignmentPaddingRight :: MonadIO m => VideoAlignment -> m Word32
-getVideoAlignmentPaddingRight s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 12) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@padding_right@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAlignment [ #paddingRight 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAlignmentPaddingRight :: MonadIO m => VideoAlignment -> Word32 -> m ()
-setVideoAlignmentPaddingRight s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 12) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoAlignmentPaddingRightFieldInfo
-instance AttrInfo VideoAlignmentPaddingRightFieldInfo where
-    type AttrAllowedOps VideoAlignmentPaddingRightFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAlignmentPaddingRightFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoAlignmentPaddingRightFieldInfo = (~) VideoAlignment
-    type AttrGetType VideoAlignmentPaddingRightFieldInfo = Word32
-    type AttrLabel VideoAlignmentPaddingRightFieldInfo = "padding_right"
-    type AttrOrigin VideoAlignmentPaddingRightFieldInfo = VideoAlignment
-    attrGet _ = getVideoAlignmentPaddingRight
-    attrSet _ = setVideoAlignmentPaddingRight
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAlignment_paddingRight :: AttrLabelProxy "paddingRight"
-videoAlignment_paddingRight = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoAlignment:stride_align" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoAlignment
-type instance O.AttributeList VideoAlignment = VideoAlignmentAttributeList
-type VideoAlignmentAttributeList = ('[ '("paddingTop", VideoAlignmentPaddingTopFieldInfo), '("paddingBottom", VideoAlignmentPaddingBottomFieldInfo), '("paddingLeft", VideoAlignmentPaddingLeftFieldInfo), '("paddingRight", VideoAlignmentPaddingRightFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoAlignment::reset
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "align", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAlignment", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_alignment_reset" gst_video_alignment_reset :: 
-    Ptr VideoAlignment ->                   -- align : TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"})
-    IO ()
-
-{- |
-Set /@align@/ to its default values with no padding and no alignment.
--}
-videoAlignmentReset ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoAlignment
-    {- ^ /@align@/: a 'GI.GstVideo.Structs.VideoAlignment.VideoAlignment' -}
-    -> m ()
-videoAlignmentReset align = liftIO $ do
-    align' <- unsafeManagedPtrGetPtr align
-    gst_video_alignment_reset align'
-    touchManagedPtr align
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoAlignmentResetMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoAlignmentResetMethodInfo VideoAlignment signature where
-    overloadedMethod _ = videoAlignmentReset
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoAlignmentMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoAlignmentMethod "reset" o = VideoAlignmentResetMethodInfo
-    ResolveVideoAlignmentMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoAlignmentMethod t VideoAlignment, O.MethodInfo info VideoAlignment p) => OL.IsLabel t (VideoAlignment -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoAlignment.hs-boot b/GI/GstVideo/Structs/VideoAlignment.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoAlignment.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoAlignment 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoAlignment = VideoAlignment (ManagedPtr VideoAlignment)
-instance WrappedPtr VideoAlignment where
-#if ENABLE_OVERLOADING
-data VideoAlignmentResetMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoAncillary.hs b/GI/GstVideo/Structs/VideoAncillary.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoAncillary.hs
+++ /dev/null
@@ -1,263 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Video Ancillary data, according to SMPTE-291M specification.
-
-Note that the contents of the data are always stored as 8bit data (i.e. do not contain
-the parity check bits).
-
-/Since: 1.16/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoAncillary
-    ( 
-
--- * Exported types
-    VideoAncillary(..)                      ,
-    newZeroVideoAncillary                   ,
-    noVideoAncillary                        ,
-
-
- -- * Properties
--- ** dID #attr:dID#
-{- | The Data Identifier
--}
-    getVideoAncillaryDID                    ,
-    setVideoAncillaryDID                    ,
-#if ENABLE_OVERLOADING
-    videoAncillary_dID                      ,
-#endif
-
-
--- ** dataCount #attr:dataCount#
-{- | The amount of data (in bytes) in /@data@/ (max 255 bytes)
--}
-    getVideoAncillaryDataCount              ,
-    setVideoAncillaryDataCount              ,
-#if ENABLE_OVERLOADING
-    videoAncillary_dataCount                ,
-#endif
-
-
--- ** sDIDBlockNumber #attr:sDIDBlockNumber#
-{- | The Secondary Data Identifier (if type 2) or the Data
-                    Block Number (if type 1)
--}
-    getVideoAncillarySDIDBlockNumber        ,
-    setVideoAncillarySDIDBlockNumber        ,
-#if ENABLE_OVERLOADING
-    videoAncillary_sDIDBlockNumber          ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- | Memory-managed wrapper type.
-newtype VideoAncillary = VideoAncillary (ManagedPtr VideoAncillary)
-instance WrappedPtr VideoAncillary where
-    wrappedPtrCalloc = callocBytes 48
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 48 >=> wrapPtr VideoAncillary)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoAncillary` struct initialized to zero.
-newZeroVideoAncillary :: MonadIO m => m VideoAncillary
-newZeroVideoAncillary = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoAncillary
-
-instance tag ~ 'AttrSet => Constructible VideoAncillary tag where
-    new _ attrs = do
-        o <- newZeroVideoAncillary
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoAncillary`.
-noVideoAncillary :: Maybe VideoAncillary
-noVideoAncillary = Nothing
-
-{- |
-Get the value of the “@DID@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAncillary #dID
-@
--}
-getVideoAncillaryDID :: MonadIO m => VideoAncillary -> m Word8
-getVideoAncillaryDID s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO Word8
-    return val
-
-{- |
-Set the value of the “@DID@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAncillary [ #dID 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAncillaryDID :: MonadIO m => VideoAncillary -> Word8 -> m ()
-setVideoAncillaryDID s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Word8)
-
-#if ENABLE_OVERLOADING
-data VideoAncillaryDIDFieldInfo
-instance AttrInfo VideoAncillaryDIDFieldInfo where
-    type AttrAllowedOps VideoAncillaryDIDFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAncillaryDIDFieldInfo = (~) Word8
-    type AttrBaseTypeConstraint VideoAncillaryDIDFieldInfo = (~) VideoAncillary
-    type AttrGetType VideoAncillaryDIDFieldInfo = Word8
-    type AttrLabel VideoAncillaryDIDFieldInfo = "DID"
-    type AttrOrigin VideoAncillaryDIDFieldInfo = VideoAncillary
-    attrGet _ = getVideoAncillaryDID
-    attrSet _ = setVideoAncillaryDID
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAncillary_dID :: AttrLabelProxy "dID"
-videoAncillary_dID = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@SDID_block_number@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAncillary #sDIDBlockNumber
-@
--}
-getVideoAncillarySDIDBlockNumber :: MonadIO m => VideoAncillary -> m Word8
-getVideoAncillarySDIDBlockNumber s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 1) :: IO Word8
-    return val
-
-{- |
-Set the value of the “@SDID_block_number@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAncillary [ #sDIDBlockNumber 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAncillarySDIDBlockNumber :: MonadIO m => VideoAncillary -> Word8 -> m ()
-setVideoAncillarySDIDBlockNumber s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 1) (val :: Word8)
-
-#if ENABLE_OVERLOADING
-data VideoAncillarySDIDBlockNumberFieldInfo
-instance AttrInfo VideoAncillarySDIDBlockNumberFieldInfo where
-    type AttrAllowedOps VideoAncillarySDIDBlockNumberFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAncillarySDIDBlockNumberFieldInfo = (~) Word8
-    type AttrBaseTypeConstraint VideoAncillarySDIDBlockNumberFieldInfo = (~) VideoAncillary
-    type AttrGetType VideoAncillarySDIDBlockNumberFieldInfo = Word8
-    type AttrLabel VideoAncillarySDIDBlockNumberFieldInfo = "SDID_block_number"
-    type AttrOrigin VideoAncillarySDIDBlockNumberFieldInfo = VideoAncillary
-    attrGet _ = getVideoAncillarySDIDBlockNumber
-    attrSet _ = setVideoAncillarySDIDBlockNumber
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAncillary_sDIDBlockNumber :: AttrLabelProxy "sDIDBlockNumber"
-videoAncillary_sDIDBlockNumber = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@data_count@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoAncillary #dataCount
-@
--}
-getVideoAncillaryDataCount :: MonadIO m => VideoAncillary -> m Word8
-getVideoAncillaryDataCount s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 2) :: IO Word8
-    return val
-
-{- |
-Set the value of the “@data_count@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoAncillary [ #dataCount 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoAncillaryDataCount :: MonadIO m => VideoAncillary -> Word8 -> m ()
-setVideoAncillaryDataCount s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 2) (val :: Word8)
-
-#if ENABLE_OVERLOADING
-data VideoAncillaryDataCountFieldInfo
-instance AttrInfo VideoAncillaryDataCountFieldInfo where
-    type AttrAllowedOps VideoAncillaryDataCountFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoAncillaryDataCountFieldInfo = (~) Word8
-    type AttrBaseTypeConstraint VideoAncillaryDataCountFieldInfo = (~) VideoAncillary
-    type AttrGetType VideoAncillaryDataCountFieldInfo = Word8
-    type AttrLabel VideoAncillaryDataCountFieldInfo = "data_count"
-    type AttrOrigin VideoAncillaryDataCountFieldInfo = VideoAncillary
-    attrGet _ = getVideoAncillaryDataCount
-    attrSet _ = setVideoAncillaryDataCount
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoAncillary_dataCount :: AttrLabelProxy "dataCount"
-videoAncillary_dataCount = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoAncillary:data" :: Not implemented: "Don't know how to unpack C array of type TCArray False (-1) 2 (TBasicType TUInt8)"
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoAncillary
-type instance O.AttributeList VideoAncillary = VideoAncillaryAttributeList
-type VideoAncillaryAttributeList = ('[ '("dID", VideoAncillaryDIDFieldInfo), '("sDIDBlockNumber", VideoAncillarySDIDBlockNumberFieldInfo), '("dataCount", VideoAncillaryDataCountFieldInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoAncillaryMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoAncillaryMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoAncillaryMethod t VideoAncillary, O.MethodInfo info VideoAncillary p) => OL.IsLabel t (VideoAncillary -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoAncillary.hs-boot b/GI/GstVideo/Structs/VideoAncillary.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoAncillary.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoAncillary 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoAncillary = VideoAncillary (ManagedPtr VideoAncillary)
-instance WrappedPtr VideoAncillary where
diff --git a/GI/GstVideo/Structs/VideoCaptionMeta.hs b/GI/GstVideo/Structs/VideoCaptionMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCaptionMeta.hs
+++ /dev/null
@@ -1,286 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata providing Closed Caption.
-
-/Since: 1.16/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoCaptionMeta
-    ( 
-
--- * Exported types
-    VideoCaptionMeta(..)                    ,
-    newZeroVideoCaptionMeta                 ,
-    noVideoCaptionMeta                      ,
-
-
- -- * Methods
--- ** getInfo #method:getInfo#
-
-    videoCaptionMetaGetInfo                 ,
-
-
-
-
- -- * Properties
--- ** captionType #attr:captionType#
-{- | The type of Closed Caption contained in the meta.
--}
-    getVideoCaptionMetaCaptionType          ,
-    setVideoCaptionMetaCaptionType          ,
-#if ENABLE_OVERLOADING
-    videoCaptionMeta_captionType            ,
-#endif
-
-
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoCaptionMetaMeta                 ,
-#if ENABLE_OVERLOADING
-    videoCaptionMeta_meta                   ,
-#endif
-
-
--- ** size #attr:size#
-{- | The size in bytes of /@data@/
--}
-    getVideoCaptionMetaSize                 ,
-    setVideoCaptionMetaSize                 ,
-#if ENABLE_OVERLOADING
-    videoCaptionMeta_size                   ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- | Memory-managed wrapper type.
-newtype VideoCaptionMeta = VideoCaptionMeta (ManagedPtr VideoCaptionMeta)
-instance WrappedPtr VideoCaptionMeta where
-    wrappedPtrCalloc = callocBytes 40
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 40 >=> wrapPtr VideoCaptionMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoCaptionMeta` struct initialized to zero.
-newZeroVideoCaptionMeta :: MonadIO m => m VideoCaptionMeta
-newZeroVideoCaptionMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoCaptionMeta
-
-instance tag ~ 'AttrSet => Constructible VideoCaptionMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoCaptionMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoCaptionMeta`.
-noVideoCaptionMeta :: Maybe VideoCaptionMeta
-noVideoCaptionMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCaptionMeta #meta
-@
--}
-getVideoCaptionMetaMeta :: MonadIO m => VideoCaptionMeta -> m Gst.Meta.Meta
-getVideoCaptionMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoCaptionMetaMetaFieldInfo
-instance AttrInfo VideoCaptionMetaMetaFieldInfo where
-    type AttrAllowedOps VideoCaptionMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoCaptionMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoCaptionMetaMetaFieldInfo = (~) VideoCaptionMeta
-    type AttrGetType VideoCaptionMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoCaptionMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoCaptionMetaMetaFieldInfo = VideoCaptionMeta
-    attrGet _ = getVideoCaptionMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCaptionMeta_meta :: AttrLabelProxy "meta"
-videoCaptionMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@caption_type@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCaptionMeta #captionType
-@
--}
-getVideoCaptionMetaCaptionType :: MonadIO m => VideoCaptionMeta -> m GstVideo.Enums.VideoCaptionType
-getVideoCaptionMetaCaptionType s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@caption_type@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCaptionMeta [ #captionType 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCaptionMetaCaptionType :: MonadIO m => VideoCaptionMeta -> GstVideo.Enums.VideoCaptionType -> m ()
-setVideoCaptionMetaCaptionType s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 16) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoCaptionMetaCaptionTypeFieldInfo
-instance AttrInfo VideoCaptionMetaCaptionTypeFieldInfo where
-    type AttrAllowedOps VideoCaptionMetaCaptionTypeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCaptionMetaCaptionTypeFieldInfo = (~) GstVideo.Enums.VideoCaptionType
-    type AttrBaseTypeConstraint VideoCaptionMetaCaptionTypeFieldInfo = (~) VideoCaptionMeta
-    type AttrGetType VideoCaptionMetaCaptionTypeFieldInfo = GstVideo.Enums.VideoCaptionType
-    type AttrLabel VideoCaptionMetaCaptionTypeFieldInfo = "caption_type"
-    type AttrOrigin VideoCaptionMetaCaptionTypeFieldInfo = VideoCaptionMeta
-    attrGet _ = getVideoCaptionMetaCaptionType
-    attrSet _ = setVideoCaptionMetaCaptionType
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCaptionMeta_captionType :: AttrLabelProxy "captionType"
-videoCaptionMeta_captionType = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoCaptionMeta:data" :: Not implemented: "Don't know how to unpack C array of type TCArray False (-1) 3 (TBasicType TUInt8)"
-{- |
-Get the value of the “@size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCaptionMeta #size
-@
--}
-getVideoCaptionMetaSize :: MonadIO m => VideoCaptionMeta -> m Word64
-getVideoCaptionMetaSize s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Word64
-    return val
-
-{- |
-Set the value of the “@size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCaptionMeta [ #size 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCaptionMetaSize :: MonadIO m => VideoCaptionMeta -> Word64 -> m ()
-setVideoCaptionMetaSize s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Word64)
-
-#if ENABLE_OVERLOADING
-data VideoCaptionMetaSizeFieldInfo
-instance AttrInfo VideoCaptionMetaSizeFieldInfo where
-    type AttrAllowedOps VideoCaptionMetaSizeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCaptionMetaSizeFieldInfo = (~) Word64
-    type AttrBaseTypeConstraint VideoCaptionMetaSizeFieldInfo = (~) VideoCaptionMeta
-    type AttrGetType VideoCaptionMetaSizeFieldInfo = Word64
-    type AttrLabel VideoCaptionMetaSizeFieldInfo = "size"
-    type AttrOrigin VideoCaptionMetaSizeFieldInfo = VideoCaptionMeta
-    attrGet _ = getVideoCaptionMetaSize
-    attrSet _ = setVideoCaptionMetaSize
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCaptionMeta_size :: AttrLabelProxy "size"
-videoCaptionMeta_size = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoCaptionMeta
-type instance O.AttributeList VideoCaptionMeta = VideoCaptionMetaAttributeList
-type VideoCaptionMetaAttributeList = ('[ '("meta", VideoCaptionMetaMetaFieldInfo), '("captionType", VideoCaptionMetaCaptionTypeFieldInfo), '("size", VideoCaptionMetaSizeFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoCaptionMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_caption_meta_get_info" gst_video_caption_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoCaptionMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoCaptionMetaGetInfo  = liftIO $ do
-    result <- gst_video_caption_meta_get_info
-    checkUnexpectedReturnNULL "videoCaptionMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoCaptionMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoCaptionMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoCaptionMetaMethod t VideoCaptionMeta, O.MethodInfo info VideoCaptionMeta p) => OL.IsLabel t (VideoCaptionMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoCaptionMeta.hs-boot b/GI/GstVideo/Structs/VideoCaptionMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCaptionMeta.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoCaptionMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoCaptionMeta = VideoCaptionMeta (ManagedPtr VideoCaptionMeta)
-instance WrappedPtr VideoCaptionMeta where
diff --git a/GI/GstVideo/Structs/VideoChromaResample.hs b/GI/GstVideo/Structs/VideoChromaResample.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoChromaResample.hs
+++ /dev/null
@@ -1,171 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-/No description available in the introspection data./
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoChromaResample
-    ( 
-
--- * Exported types
-    VideoChromaResample(..)                 ,
-    noVideoChromaResample                   ,
-
-
- -- * Methods
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoChromaResampleFreeMethodInfo       ,
-#endif
-    videoChromaResampleFree                 ,
-
-
--- ** getInfo #method:getInfo#
-
-#if ENABLE_OVERLOADING
-    VideoChromaResampleGetInfoMethodInfo    ,
-#endif
-    videoChromaResampleGetInfo              ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- | Memory-managed wrapper type.
-newtype VideoChromaResample = VideoChromaResample (ManagedPtr VideoChromaResample)
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr VideoChromaResample where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoChromaResample`.
-noVideoChromaResample :: Maybe VideoChromaResample
-noVideoChromaResample = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoChromaResample
-type instance O.AttributeList VideoChromaResample = VideoChromaResampleAttributeList
-type VideoChromaResampleAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoChromaResample::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "resample", argType = TInterface (Name {namespace = "GstVideo", name = "VideoChromaResample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoChromaResample", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_chroma_resample_free" gst_video_chroma_resample_free :: 
-    Ptr VideoChromaResample ->              -- resample : TInterface (Name {namespace = "GstVideo", name = "VideoChromaResample"})
-    IO ()
-
-{- |
-Free /@resample@/
--}
-videoChromaResampleFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoChromaResample
-    {- ^ /@resample@/: a 'GI.GstVideo.Structs.VideoChromaResample.VideoChromaResample' -}
-    -> m ()
-videoChromaResampleFree resample = liftIO $ do
-    resample' <- unsafeManagedPtrGetPtr resample
-    gst_video_chroma_resample_free resample'
-    touchManagedPtr resample
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoChromaResampleFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoChromaResampleFreeMethodInfo VideoChromaResample signature where
-    overloadedMethod _ = videoChromaResampleFree
-
-#endif
-
--- method VideoChromaResample::get_info
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "resample", argType = TInterface (Name {namespace = "GstVideo", name = "VideoChromaResample"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoChromaResample", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_lines", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of input lines", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "offset", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the first line", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_chroma_resample_get_info" gst_video_chroma_resample_get_info :: 
-    Ptr VideoChromaResample ->              -- resample : TInterface (Name {namespace = "GstVideo", name = "VideoChromaResample"})
-    Word32 ->                               -- n_lines : TBasicType TUInt
-    Int32 ->                                -- offset : TBasicType TInt
-    IO ()
-
-{- |
-The resampler must be fed /@nLines@/ at a time. The first line should be
-at /@offset@/.
--}
-videoChromaResampleGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoChromaResample
-    {- ^ /@resample@/: a 'GI.GstVideo.Structs.VideoChromaResample.VideoChromaResample' -}
-    -> Word32
-    {- ^ /@nLines@/: the number of input lines -}
-    -> Int32
-    {- ^ /@offset@/: the first line -}
-    -> m ()
-videoChromaResampleGetInfo resample nLines offset = liftIO $ do
-    resample' <- unsafeManagedPtrGetPtr resample
-    gst_video_chroma_resample_get_info resample' nLines offset
-    touchManagedPtr resample
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoChromaResampleGetInfoMethodInfo
-instance (signature ~ (Word32 -> Int32 -> m ()), MonadIO m) => O.MethodInfo VideoChromaResampleGetInfoMethodInfo VideoChromaResample signature where
-    overloadedMethod _ = videoChromaResampleGetInfo
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoChromaResampleMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoChromaResampleMethod "free" o = VideoChromaResampleFreeMethodInfo
-    ResolveVideoChromaResampleMethod "getInfo" o = VideoChromaResampleGetInfoMethodInfo
-    ResolveVideoChromaResampleMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoChromaResampleMethod t VideoChromaResample, O.MethodInfo info VideoChromaResample p) => OL.IsLabel t (VideoChromaResample -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoChromaResample.hs-boot b/GI/GstVideo/Structs/VideoChromaResample.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoChromaResample.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoChromaResample 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoChromaResample = VideoChromaResample (ManagedPtr VideoChromaResample)
-instance WrappedPtr VideoChromaResample where
-#if ENABLE_OVERLOADING
-data VideoChromaResampleFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoChromaResampleGetInfoMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoCodecFrame.hs b/GI/GstVideo/Structs/VideoCodecFrame.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCodecFrame.hs
+++ /dev/null
@@ -1,766 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-A 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' represents a video frame both in raw and
-encoded form.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoCodecFrame
-    ( 
-
--- * Exported types
-    VideoCodecFrame(..)                     ,
-    newZeroVideoCodecFrame                  ,
-    noVideoCodecFrame                       ,
-
-
- -- * Methods
--- ** getUserData #method:getUserData#
-
-#if ENABLE_OVERLOADING
-    VideoCodecFrameGetUserDataMethodInfo    ,
-#endif
-    videoCodecFrameGetUserData              ,
-
-
--- ** ref #method:ref#
-
-#if ENABLE_OVERLOADING
-    VideoCodecFrameRefMethodInfo            ,
-#endif
-    videoCodecFrameRef                      ,
-
-
--- ** setUserData #method:setUserData#
-
-#if ENABLE_OVERLOADING
-    VideoCodecFrameSetUserDataMethodInfo    ,
-#endif
-    videoCodecFrameSetUserData              ,
-
-
--- ** unref #method:unref#
-
-#if ENABLE_OVERLOADING
-    VideoCodecFrameUnrefMethodInfo          ,
-#endif
-    videoCodecFrameUnref                    ,
-
-
-
-
- -- * Properties
--- ** deadline #attr:deadline#
-{- | Running time when the frame will be used.
--}
-    getVideoCodecFrameDeadline              ,
-    setVideoCodecFrameDeadline              ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_deadline                ,
-#endif
-
-
--- ** distanceFromSync #attr:distanceFromSync#
-{- | Distance in frames from the last synchronization point.
--}
-    getVideoCodecFrameDistanceFromSync      ,
-    setVideoCodecFrameDistanceFromSync      ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_distanceFromSync        ,
-#endif
-
-
--- ** dts #attr:dts#
-{- | Decoding timestamp
--}
-    getVideoCodecFrameDts                   ,
-    setVideoCodecFrameDts                   ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_dts                     ,
-#endif
-
-
--- ** duration #attr:duration#
-{- | Duration of the frame
--}
-    getVideoCodecFrameDuration              ,
-    setVideoCodecFrameDuration              ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_duration                ,
-#endif
-
-
--- ** inputBuffer #attr:inputBuffer#
-{- | the input 'GI.Gst.Structs.Buffer.Buffer' that created this frame. The buffer is owned
-          by the frame and references to the frame instead of the buffer should
-          be kept.
--}
-    clearVideoCodecFrameInputBuffer         ,
-    getVideoCodecFrameInputBuffer           ,
-    setVideoCodecFrameInputBuffer           ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_inputBuffer             ,
-#endif
-
-
--- ** outputBuffer #attr:outputBuffer#
-{- | the output 'GI.Gst.Structs.Buffer.Buffer'. Implementations should set this either
-          directly, or by using the
-          /@gstVideoDecoderAllocateOutputFrame@/() or
-          /@gstVideoDecoderAllocateOutputBuffer@/() methods. The buffer is
-          owned by the frame and references to the frame instead of the
-          buffer should be kept.
--}
-    clearVideoCodecFrameOutputBuffer        ,
-    getVideoCodecFrameOutputBuffer          ,
-    setVideoCodecFrameOutputBuffer          ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_outputBuffer            ,
-#endif
-
-
--- ** pts #attr:pts#
-{- | Presentation timestamp
--}
-    getVideoCodecFramePts                   ,
-    setVideoCodecFramePts                   ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_pts                     ,
-#endif
-
-
--- ** systemFrameNumber #attr:systemFrameNumber#
-{- | Unique identifier for the frame. Use this if you need
-      to get hold of the frame later (like when data is being decoded).
-      Typical usage in decoders is to set this on the opaque value provided
-      to the library and get back the frame using 'GI.GstVideo.Objects.VideoDecoder.videoDecoderGetFrame'
--}
-    getVideoCodecFrameSystemFrameNumber     ,
-    setVideoCodecFrameSystemFrameNumber     ,
-#if ENABLE_OVERLOADING
-    videoCodecFrame_systemFrameNumber       ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GLib.Callbacks as GLib.Callbacks
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-
--- | Memory-managed wrapper type.
-newtype VideoCodecFrame = VideoCodecFrame (ManagedPtr VideoCodecFrame)
-foreign import ccall "gst_video_codec_frame_get_type" c_gst_video_codec_frame_get_type :: 
-    IO GType
-
-instance BoxedObject VideoCodecFrame where
-    boxedType _ = c_gst_video_codec_frame_get_type
-
--- | Construct a `VideoCodecFrame` struct initialized to zero.
-newZeroVideoCodecFrame :: MonadIO m => m VideoCodecFrame
-newZeroVideoCodecFrame = liftIO $ callocBoxedBytes 104 >>= wrapBoxed VideoCodecFrame
-
-instance tag ~ 'AttrSet => Constructible VideoCodecFrame tag where
-    new _ attrs = do
-        o <- newZeroVideoCodecFrame
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoCodecFrame`.
-noVideoCodecFrame :: Maybe VideoCodecFrame
-noVideoCodecFrame = Nothing
-
-{- |
-Get the value of the “@system_frame_number@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #systemFrameNumber
-@
--}
-getVideoCodecFrameSystemFrameNumber :: MonadIO m => VideoCodecFrame -> m Word32
-getVideoCodecFrameSystemFrameNumber s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@system_frame_number@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #systemFrameNumber 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameSystemFrameNumber :: MonadIO m => VideoCodecFrame -> Word32 -> m ()
-setVideoCodecFrameSystemFrameNumber s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameSystemFrameNumberFieldInfo
-instance AttrInfo VideoCodecFrameSystemFrameNumberFieldInfo where
-    type AttrAllowedOps VideoCodecFrameSystemFrameNumberFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecFrameSystemFrameNumberFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoCodecFrameSystemFrameNumberFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameSystemFrameNumberFieldInfo = Word32
-    type AttrLabel VideoCodecFrameSystemFrameNumberFieldInfo = "system_frame_number"
-    type AttrOrigin VideoCodecFrameSystemFrameNumberFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameSystemFrameNumber
-    attrSet _ = setVideoCodecFrameSystemFrameNumber
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecFrame_systemFrameNumber :: AttrLabelProxy "systemFrameNumber"
-videoCodecFrame_systemFrameNumber = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@dts@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #dts
-@
--}
-getVideoCodecFrameDts :: MonadIO m => VideoCodecFrame -> m Word64
-getVideoCodecFrameDts s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO Word64
-    return val
-
-{- |
-Set the value of the “@dts@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #dts 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameDts :: MonadIO m => VideoCodecFrame -> Word64 -> m ()
-setVideoCodecFrameDts s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 24) (val :: Word64)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameDtsFieldInfo
-instance AttrInfo VideoCodecFrameDtsFieldInfo where
-    type AttrAllowedOps VideoCodecFrameDtsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecFrameDtsFieldInfo = (~) Word64
-    type AttrBaseTypeConstraint VideoCodecFrameDtsFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameDtsFieldInfo = Word64
-    type AttrLabel VideoCodecFrameDtsFieldInfo = "dts"
-    type AttrOrigin VideoCodecFrameDtsFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameDts
-    attrSet _ = setVideoCodecFrameDts
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecFrame_dts :: AttrLabelProxy "dts"
-videoCodecFrame_dts = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@pts@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #pts
-@
--}
-getVideoCodecFramePts :: MonadIO m => VideoCodecFrame -> m Word64
-getVideoCodecFramePts s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Word64
-    return val
-
-{- |
-Set the value of the “@pts@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #pts 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFramePts :: MonadIO m => VideoCodecFrame -> Word64 -> m ()
-setVideoCodecFramePts s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Word64)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFramePtsFieldInfo
-instance AttrInfo VideoCodecFramePtsFieldInfo where
-    type AttrAllowedOps VideoCodecFramePtsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecFramePtsFieldInfo = (~) Word64
-    type AttrBaseTypeConstraint VideoCodecFramePtsFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFramePtsFieldInfo = Word64
-    type AttrLabel VideoCodecFramePtsFieldInfo = "pts"
-    type AttrOrigin VideoCodecFramePtsFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFramePts
-    attrSet _ = setVideoCodecFramePts
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecFrame_pts :: AttrLabelProxy "pts"
-videoCodecFrame_pts = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@duration@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #duration
-@
--}
-getVideoCodecFrameDuration :: MonadIO m => VideoCodecFrame -> m Word64
-getVideoCodecFrameDuration s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 40) :: IO Word64
-    return val
-
-{- |
-Set the value of the “@duration@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #duration 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameDuration :: MonadIO m => VideoCodecFrame -> Word64 -> m ()
-setVideoCodecFrameDuration s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 40) (val :: Word64)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameDurationFieldInfo
-instance AttrInfo VideoCodecFrameDurationFieldInfo where
-    type AttrAllowedOps VideoCodecFrameDurationFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecFrameDurationFieldInfo = (~) Word64
-    type AttrBaseTypeConstraint VideoCodecFrameDurationFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameDurationFieldInfo = Word64
-    type AttrLabel VideoCodecFrameDurationFieldInfo = "duration"
-    type AttrOrigin VideoCodecFrameDurationFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameDuration
-    attrSet _ = setVideoCodecFrameDuration
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecFrame_duration :: AttrLabelProxy "duration"
-videoCodecFrame_duration = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@distance_from_sync@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #distanceFromSync
-@
--}
-getVideoCodecFrameDistanceFromSync :: MonadIO m => VideoCodecFrame -> m Int32
-getVideoCodecFrameDistanceFromSync s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 48) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@distance_from_sync@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #distanceFromSync 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameDistanceFromSync :: MonadIO m => VideoCodecFrame -> Int32 -> m ()
-setVideoCodecFrameDistanceFromSync s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 48) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameDistanceFromSyncFieldInfo
-instance AttrInfo VideoCodecFrameDistanceFromSyncFieldInfo where
-    type AttrAllowedOps VideoCodecFrameDistanceFromSyncFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecFrameDistanceFromSyncFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoCodecFrameDistanceFromSyncFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameDistanceFromSyncFieldInfo = Int32
-    type AttrLabel VideoCodecFrameDistanceFromSyncFieldInfo = "distance_from_sync"
-    type AttrOrigin VideoCodecFrameDistanceFromSyncFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameDistanceFromSync
-    attrSet _ = setVideoCodecFrameDistanceFromSync
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecFrame_distanceFromSync :: AttrLabelProxy "distanceFromSync"
-videoCodecFrame_distanceFromSync = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@input_buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #inputBuffer
-@
--}
-getVideoCodecFrameInputBuffer :: MonadIO m => VideoCodecFrame -> m (Maybe Gst.Buffer.Buffer)
-getVideoCodecFrameInputBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 56) :: IO (Ptr Gst.Buffer.Buffer)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Buffer.Buffer) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@input_buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #inputBuffer 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameInputBuffer :: MonadIO m => VideoCodecFrame -> Ptr Gst.Buffer.Buffer -> m ()
-setVideoCodecFrameInputBuffer s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 56) (val :: Ptr Gst.Buffer.Buffer)
-
-{- |
-Set the value of the “@input_buffer@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #inputBuffer
-@
--}
-clearVideoCodecFrameInputBuffer :: MonadIO m => VideoCodecFrame -> m ()
-clearVideoCodecFrameInputBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 56) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameInputBufferFieldInfo
-instance AttrInfo VideoCodecFrameInputBufferFieldInfo where
-    type AttrAllowedOps VideoCodecFrameInputBufferFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoCodecFrameInputBufferFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
-    type AttrBaseTypeConstraint VideoCodecFrameInputBufferFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameInputBufferFieldInfo = Maybe Gst.Buffer.Buffer
-    type AttrLabel VideoCodecFrameInputBufferFieldInfo = "input_buffer"
-    type AttrOrigin VideoCodecFrameInputBufferFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameInputBuffer
-    attrSet _ = setVideoCodecFrameInputBuffer
-    attrConstruct = undefined
-    attrClear _ = clearVideoCodecFrameInputBuffer
-
-videoCodecFrame_inputBuffer :: AttrLabelProxy "inputBuffer"
-videoCodecFrame_inputBuffer = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@output_buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #outputBuffer
-@
--}
-getVideoCodecFrameOutputBuffer :: MonadIO m => VideoCodecFrame -> m (Maybe Gst.Buffer.Buffer)
-getVideoCodecFrameOutputBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 64) :: IO (Ptr Gst.Buffer.Buffer)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Buffer.Buffer) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@output_buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #outputBuffer 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameOutputBuffer :: MonadIO m => VideoCodecFrame -> Ptr Gst.Buffer.Buffer -> m ()
-setVideoCodecFrameOutputBuffer s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 64) (val :: Ptr Gst.Buffer.Buffer)
-
-{- |
-Set the value of the “@output_buffer@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #outputBuffer
-@
--}
-clearVideoCodecFrameOutputBuffer :: MonadIO m => VideoCodecFrame -> m ()
-clearVideoCodecFrameOutputBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 64) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameOutputBufferFieldInfo
-instance AttrInfo VideoCodecFrameOutputBufferFieldInfo where
-    type AttrAllowedOps VideoCodecFrameOutputBufferFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoCodecFrameOutputBufferFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
-    type AttrBaseTypeConstraint VideoCodecFrameOutputBufferFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameOutputBufferFieldInfo = Maybe Gst.Buffer.Buffer
-    type AttrLabel VideoCodecFrameOutputBufferFieldInfo = "output_buffer"
-    type AttrOrigin VideoCodecFrameOutputBufferFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameOutputBuffer
-    attrSet _ = setVideoCodecFrameOutputBuffer
-    attrConstruct = undefined
-    attrClear _ = clearVideoCodecFrameOutputBuffer
-
-videoCodecFrame_outputBuffer :: AttrLabelProxy "outputBuffer"
-videoCodecFrame_outputBuffer = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@deadline@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecFrame #deadline
-@
--}
-getVideoCodecFrameDeadline :: MonadIO m => VideoCodecFrame -> m Word64
-getVideoCodecFrameDeadline s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 72) :: IO Word64
-    return val
-
-{- |
-Set the value of the “@deadline@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecFrame [ #deadline 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecFrameDeadline :: MonadIO m => VideoCodecFrame -> Word64 -> m ()
-setVideoCodecFrameDeadline s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 72) (val :: Word64)
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameDeadlineFieldInfo
-instance AttrInfo VideoCodecFrameDeadlineFieldInfo where
-    type AttrAllowedOps VideoCodecFrameDeadlineFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecFrameDeadlineFieldInfo = (~) Word64
-    type AttrBaseTypeConstraint VideoCodecFrameDeadlineFieldInfo = (~) VideoCodecFrame
-    type AttrGetType VideoCodecFrameDeadlineFieldInfo = Word64
-    type AttrLabel VideoCodecFrameDeadlineFieldInfo = "deadline"
-    type AttrOrigin VideoCodecFrameDeadlineFieldInfo = VideoCodecFrame
-    attrGet _ = getVideoCodecFrameDeadline
-    attrSet _ = setVideoCodecFrameDeadline
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecFrame_deadline :: AttrLabelProxy "deadline"
-videoCodecFrame_deadline = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoCodecFrame
-type instance O.AttributeList VideoCodecFrame = VideoCodecFrameAttributeList
-type VideoCodecFrameAttributeList = ('[ '("systemFrameNumber", VideoCodecFrameSystemFrameNumberFieldInfo), '("dts", VideoCodecFrameDtsFieldInfo), '("pts", VideoCodecFramePtsFieldInfo), '("duration", VideoCodecFrameDurationFieldInfo), '("distanceFromSync", VideoCodecFrameDistanceFromSyncFieldInfo), '("inputBuffer", VideoCodecFrameInputBufferFieldInfo), '("outputBuffer", VideoCodecFrameOutputBufferFieldInfo), '("deadline", VideoCodecFrameDeadlineFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoCodecFrame::get_user_data
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TPtr)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_codec_frame_get_user_data" gst_video_codec_frame_get_user_data :: 
-    Ptr VideoCodecFrame ->                  -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO (Ptr ())
-
-{- |
-Gets private data set on the frame by the subclass via
-'GI.GstVideo.Structs.VideoCodecFrame.videoCodecFrameSetUserData' previously.
--}
-videoCodecFrameGetUserData ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m (Ptr ())
-    {- ^ __Returns:__ The previously set user_data -}
-videoCodecFrameGetUserData frame = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    result <- gst_video_codec_frame_get_user_data frame'
-    touchManagedPtr frame
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameGetUserDataMethodInfo
-instance (signature ~ (m (Ptr ())), MonadIO m) => O.MethodInfo VideoCodecFrameGetUserDataMethodInfo VideoCodecFrame signature where
-    overloadedMethod _ = videoCodecFrameGetUserData
-
-#endif
-
--- method VideoCodecFrame::ref
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_codec_frame_ref" gst_video_codec_frame_ref :: 
-    Ptr VideoCodecFrame ->                  -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO (Ptr VideoCodecFrame)
-
-{- |
-Increases the refcount of the given frame by one.
--}
-videoCodecFrameRef ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m VideoCodecFrame
-    {- ^ __Returns:__ /@buf@/ -}
-videoCodecFrameRef frame = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    result <- gst_video_codec_frame_ref frame'
-    checkUnexpectedReturnNULL "videoCodecFrameRef" result
-    result' <- (wrapBoxed VideoCodecFrame) result
-    touchManagedPtr frame
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameRefMethodInfo
-instance (signature ~ (m VideoCodecFrame), MonadIO m) => O.MethodInfo VideoCodecFrameRefMethodInfo VideoCodecFrame signature where
-    overloadedMethod _ = videoCodecFrameRef
-
-#endif
-
--- method VideoCodecFrame::set_user_data
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "private data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "notify", argType = TInterface (Name {namespace = "GLib", name = "DestroyNotify"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GDestroyNotify", sinceVersion = Nothing}, argScope = ScopeTypeAsync, argClosure = 1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_codec_frame_set_user_data" gst_video_codec_frame_set_user_data :: 
-    Ptr VideoCodecFrame ->                  -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    Ptr () ->                               -- user_data : TBasicType TPtr
-    FunPtr GLib.Callbacks.C_DestroyNotify -> -- notify : TInterface (Name {namespace = "GLib", name = "DestroyNotify"})
-    IO ()
-
-{- |
-Sets /@userData@/ on the frame and the 'GI.GLib.Callbacks.DestroyNotify' that will be called when
-the frame is freed. Allows to attach private data by the subclass to frames.
-
-If a /@userData@/ was previously set, then the previous set /@notify@/ will be called
-before the /@userData@/ is replaced.
--}
-videoCodecFrameSetUserData ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> GLib.Callbacks.DestroyNotify
-    {- ^ /@notify@/: a 'GI.GLib.Callbacks.DestroyNotify' -}
-    -> m ()
-videoCodecFrameSetUserData frame notify = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    ptrnotify <- callocMem :: IO (Ptr (FunPtr GLib.Callbacks.C_DestroyNotify))
-    notify' <- GLib.Callbacks.mk_DestroyNotify (GLib.Callbacks.wrap_DestroyNotify (Just ptrnotify) notify)
-    poke ptrnotify notify'
-    let userData = nullPtr
-    gst_video_codec_frame_set_user_data frame' userData notify'
-    touchManagedPtr frame
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameSetUserDataMethodInfo
-instance (signature ~ (GLib.Callbacks.DestroyNotify -> m ()), MonadIO m) => O.MethodInfo VideoCodecFrameSetUserDataMethodInfo VideoCodecFrame signature where
-    overloadedMethod _ = videoCodecFrameSetUserData
-
-#endif
-
--- method VideoCodecFrame::unref
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_codec_frame_unref" gst_video_codec_frame_unref :: 
-    Ptr VideoCodecFrame ->                  -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoCodecFrame"})
-    IO ()
-
-{- |
-Decreases the refcount of the frame. If the refcount reaches 0, the frame
-will be freed.
--}
-videoCodecFrameUnref ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoCodecFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoCodecFrame.VideoCodecFrame' -}
-    -> m ()
-videoCodecFrameUnref frame = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    gst_video_codec_frame_unref frame'
-    touchManagedPtr frame
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoCodecFrameUnrefMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoCodecFrameUnrefMethodInfo VideoCodecFrame signature where
-    overloadedMethod _ = videoCodecFrameUnref
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoCodecFrameMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoCodecFrameMethod "ref" o = VideoCodecFrameRefMethodInfo
-    ResolveVideoCodecFrameMethod "unref" o = VideoCodecFrameUnrefMethodInfo
-    ResolveVideoCodecFrameMethod "getUserData" o = VideoCodecFrameGetUserDataMethodInfo
-    ResolveVideoCodecFrameMethod "setUserData" o = VideoCodecFrameSetUserDataMethodInfo
-    ResolveVideoCodecFrameMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoCodecFrameMethod t VideoCodecFrame, O.MethodInfo info VideoCodecFrame p) => OL.IsLabel t (VideoCodecFrame -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoCodecFrame.hs-boot b/GI/GstVideo/Structs/VideoCodecFrame.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCodecFrame.hs-boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoCodecFrame 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoCodecFrame = VideoCodecFrame (ManagedPtr VideoCodecFrame)
-instance BoxedObject VideoCodecFrame where
-#if ENABLE_OVERLOADING
-data VideoCodecFrameGetUserDataMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoCodecFrameRefMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoCodecFrameSetUserDataMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoCodecFrameUnrefMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoCodecState.hs b/GI/GstVideo/Structs/VideoCodecState.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCodecState.hs
+++ /dev/null
@@ -1,452 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Structure representing the state of an incoming or outgoing video
-stream for encoders and decoders.
-
-Decoders and encoders will receive such a state through their
-respective /@setFormat@/ vmethods.
-
-Decoders and encoders can set the downstream state, by using the
-/@gstVideoDecoderSetOutputState@/() or
-/@gstVideoEncoderSetOutputState@/() methods.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoCodecState
-    ( 
-
--- * Exported types
-    VideoCodecState(..)                     ,
-    newZeroVideoCodecState                  ,
-    noVideoCodecState                       ,
-
-
- -- * Methods
--- ** ref #method:ref#
-
-#if ENABLE_OVERLOADING
-    VideoCodecStateRefMethodInfo            ,
-#endif
-    videoCodecStateRef                      ,
-
-
--- ** unref #method:unref#
-
-#if ENABLE_OVERLOADING
-    VideoCodecStateUnrefMethodInfo          ,
-#endif
-    videoCodecStateUnref                    ,
-
-
-
-
- -- * Properties
--- ** allocationCaps #attr:allocationCaps#
-{- | The 'GI.Gst.Structs.Caps.Caps' for allocation query and pool
-    negotiation. Since: 1.10
--}
-    clearVideoCodecStateAllocationCaps      ,
-    getVideoCodecStateAllocationCaps        ,
-    setVideoCodecStateAllocationCaps        ,
-#if ENABLE_OVERLOADING
-    videoCodecState_allocationCaps          ,
-#endif
-
-
--- ** caps #attr:caps#
-{- | The 'GI.Gst.Structs.Caps.Caps' used in the caps negotiation of the pad.
--}
-    clearVideoCodecStateCaps                ,
-    getVideoCodecStateCaps                  ,
-    setVideoCodecStateCaps                  ,
-#if ENABLE_OVERLOADING
-    videoCodecState_caps                    ,
-#endif
-
-
--- ** codecData #attr:codecData#
-{- | a 'GI.Gst.Structs.Buffer.Buffer' corresponding to the
-    \'codec_data\' field of a stream, or NULL.
--}
-    clearVideoCodecStateCodecData           ,
-    getVideoCodecStateCodecData             ,
-    setVideoCodecStateCodecData             ,
-#if ENABLE_OVERLOADING
-    videoCodecState_codecData               ,
-#endif
-
-
--- ** info #attr:info#
-{- | The 'GI.GstVideo.Structs.VideoInfo.VideoInfo' describing the stream
--}
-    getVideoCodecStateInfo                  ,
-#if ENABLE_OVERLOADING
-    videoCodecState_info                    ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Buffer as Gst.Buffer
-import qualified GI.Gst.Structs.Caps as Gst.Caps
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoInfo as GstVideo.VideoInfo
-
--- | Memory-managed wrapper type.
-newtype VideoCodecState = VideoCodecState (ManagedPtr VideoCodecState)
-foreign import ccall "gst_video_codec_state_get_type" c_gst_video_codec_state_get_type :: 
-    IO GType
-
-instance BoxedObject VideoCodecState where
-    boxedType _ = c_gst_video_codec_state_get_type
-
--- | Construct a `VideoCodecState` struct initialized to zero.
-newZeroVideoCodecState :: MonadIO m => m VideoCodecState
-newZeroVideoCodecState = liftIO $ callocBoxedBytes 304 >>= wrapBoxed VideoCodecState
-
-instance tag ~ 'AttrSet => Constructible VideoCodecState tag where
-    new _ attrs = do
-        o <- newZeroVideoCodecState
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoCodecState`.
-noVideoCodecState :: Maybe VideoCodecState
-noVideoCodecState = Nothing
-
-{- |
-Get the value of the “@info@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecState #info
-@
--}
-getVideoCodecStateInfo :: MonadIO m => VideoCodecState -> m GstVideo.VideoInfo.VideoInfo
-getVideoCodecStateInfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 8 :: (Ptr GstVideo.VideoInfo.VideoInfo)
-    val' <- (newBoxed GstVideo.VideoInfo.VideoInfo) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoCodecStateInfoFieldInfo
-instance AttrInfo VideoCodecStateInfoFieldInfo where
-    type AttrAllowedOps VideoCodecStateInfoFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoCodecStateInfoFieldInfo = (~) (Ptr GstVideo.VideoInfo.VideoInfo)
-    type AttrBaseTypeConstraint VideoCodecStateInfoFieldInfo = (~) VideoCodecState
-    type AttrGetType VideoCodecStateInfoFieldInfo = GstVideo.VideoInfo.VideoInfo
-    type AttrLabel VideoCodecStateInfoFieldInfo = "info"
-    type AttrOrigin VideoCodecStateInfoFieldInfo = VideoCodecState
-    attrGet _ = getVideoCodecStateInfo
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCodecState_info :: AttrLabelProxy "info"
-videoCodecState_info = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@caps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecState #caps
-@
--}
-getVideoCodecStateCaps :: MonadIO m => VideoCodecState -> m (Maybe Gst.Caps.Caps)
-getVideoCodecStateCaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 128) :: IO (Ptr Gst.Caps.Caps)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Caps.Caps) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@caps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecState [ #caps 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecStateCaps :: MonadIO m => VideoCodecState -> Ptr Gst.Caps.Caps -> m ()
-setVideoCodecStateCaps s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 128) (val :: Ptr Gst.Caps.Caps)
-
-{- |
-Set the value of the “@caps@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #caps
-@
--}
-clearVideoCodecStateCaps :: MonadIO m => VideoCodecState -> m ()
-clearVideoCodecStateCaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 128) (FP.nullPtr :: Ptr Gst.Caps.Caps)
-
-#if ENABLE_OVERLOADING
-data VideoCodecStateCapsFieldInfo
-instance AttrInfo VideoCodecStateCapsFieldInfo where
-    type AttrAllowedOps VideoCodecStateCapsFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoCodecStateCapsFieldInfo = (~) (Ptr Gst.Caps.Caps)
-    type AttrBaseTypeConstraint VideoCodecStateCapsFieldInfo = (~) VideoCodecState
-    type AttrGetType VideoCodecStateCapsFieldInfo = Maybe Gst.Caps.Caps
-    type AttrLabel VideoCodecStateCapsFieldInfo = "caps"
-    type AttrOrigin VideoCodecStateCapsFieldInfo = VideoCodecState
-    attrGet _ = getVideoCodecStateCaps
-    attrSet _ = setVideoCodecStateCaps
-    attrConstruct = undefined
-    attrClear _ = clearVideoCodecStateCaps
-
-videoCodecState_caps :: AttrLabelProxy "caps"
-videoCodecState_caps = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@codec_data@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecState #codecData
-@
--}
-getVideoCodecStateCodecData :: MonadIO m => VideoCodecState -> m (Maybe Gst.Buffer.Buffer)
-getVideoCodecStateCodecData s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 136) :: IO (Ptr Gst.Buffer.Buffer)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Buffer.Buffer) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@codec_data@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecState [ #codecData 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecStateCodecData :: MonadIO m => VideoCodecState -> Ptr Gst.Buffer.Buffer -> m ()
-setVideoCodecStateCodecData s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 136) (val :: Ptr Gst.Buffer.Buffer)
-
-{- |
-Set the value of the “@codec_data@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #codecData
-@
--}
-clearVideoCodecStateCodecData :: MonadIO m => VideoCodecState -> m ()
-clearVideoCodecStateCodecData s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 136) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
-
-#if ENABLE_OVERLOADING
-data VideoCodecStateCodecDataFieldInfo
-instance AttrInfo VideoCodecStateCodecDataFieldInfo where
-    type AttrAllowedOps VideoCodecStateCodecDataFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoCodecStateCodecDataFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
-    type AttrBaseTypeConstraint VideoCodecStateCodecDataFieldInfo = (~) VideoCodecState
-    type AttrGetType VideoCodecStateCodecDataFieldInfo = Maybe Gst.Buffer.Buffer
-    type AttrLabel VideoCodecStateCodecDataFieldInfo = "codec_data"
-    type AttrOrigin VideoCodecStateCodecDataFieldInfo = VideoCodecState
-    attrGet _ = getVideoCodecStateCodecData
-    attrSet _ = setVideoCodecStateCodecData
-    attrConstruct = undefined
-    attrClear _ = clearVideoCodecStateCodecData
-
-videoCodecState_codecData :: AttrLabelProxy "codecData"
-videoCodecState_codecData = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@allocation_caps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCodecState #allocationCaps
-@
--}
-getVideoCodecStateAllocationCaps :: MonadIO m => VideoCodecState -> m (Maybe Gst.Caps.Caps)
-getVideoCodecStateAllocationCaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 144) :: IO (Ptr Gst.Caps.Caps)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Caps.Caps) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@allocation_caps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCodecState [ #allocationCaps 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCodecStateAllocationCaps :: MonadIO m => VideoCodecState -> Ptr Gst.Caps.Caps -> m ()
-setVideoCodecStateAllocationCaps s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 144) (val :: Ptr Gst.Caps.Caps)
-
-{- |
-Set the value of the “@allocation_caps@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #allocationCaps
-@
--}
-clearVideoCodecStateAllocationCaps :: MonadIO m => VideoCodecState -> m ()
-clearVideoCodecStateAllocationCaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 144) (FP.nullPtr :: Ptr Gst.Caps.Caps)
-
-#if ENABLE_OVERLOADING
-data VideoCodecStateAllocationCapsFieldInfo
-instance AttrInfo VideoCodecStateAllocationCapsFieldInfo where
-    type AttrAllowedOps VideoCodecStateAllocationCapsFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoCodecStateAllocationCapsFieldInfo = (~) (Ptr Gst.Caps.Caps)
-    type AttrBaseTypeConstraint VideoCodecStateAllocationCapsFieldInfo = (~) VideoCodecState
-    type AttrGetType VideoCodecStateAllocationCapsFieldInfo = Maybe Gst.Caps.Caps
-    type AttrLabel VideoCodecStateAllocationCapsFieldInfo = "allocation_caps"
-    type AttrOrigin VideoCodecStateAllocationCapsFieldInfo = VideoCodecState
-    attrGet _ = getVideoCodecStateAllocationCaps
-    attrSet _ = setVideoCodecStateAllocationCaps
-    attrConstruct = undefined
-    attrClear _ = clearVideoCodecStateAllocationCaps
-
-videoCodecState_allocationCaps :: AttrLabelProxy "allocationCaps"
-videoCodecState_allocationCaps = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoCodecState
-type instance O.AttributeList VideoCodecState = VideoCodecStateAttributeList
-type VideoCodecStateAttributeList = ('[ '("info", VideoCodecStateInfoFieldInfo), '("caps", VideoCodecStateCapsFieldInfo), '("codecData", VideoCodecStateCodecDataFieldInfo), '("allocationCaps", VideoCodecStateAllocationCapsFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoCodecState::ref
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "state", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_codec_state_ref" gst_video_codec_state_ref :: 
-    Ptr VideoCodecState ->                  -- state : TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"})
-    IO (Ptr VideoCodecState)
-
-{- |
-Increases the refcount of the given state by one.
--}
-videoCodecStateRef ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoCodecState
-    {- ^ /@state@/: a 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' -}
-    -> m VideoCodecState
-    {- ^ __Returns:__ /@buf@/ -}
-videoCodecStateRef state = liftIO $ do
-    state' <- unsafeManagedPtrGetPtr state
-    result <- gst_video_codec_state_ref state'
-    checkUnexpectedReturnNULL "videoCodecStateRef" result
-    result' <- (wrapBoxed VideoCodecState) result
-    touchManagedPtr state
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoCodecStateRefMethodInfo
-instance (signature ~ (m VideoCodecState), MonadIO m) => O.MethodInfo VideoCodecStateRefMethodInfo VideoCodecState signature where
-    overloadedMethod _ = videoCodecStateRef
-
-#endif
-
--- method VideoCodecState::unref
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "state", argType = TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoCodecState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_codec_state_unref" gst_video_codec_state_unref :: 
-    Ptr VideoCodecState ->                  -- state : TInterface (Name {namespace = "GstVideo", name = "VideoCodecState"})
-    IO ()
-
-{- |
-Decreases the refcount of the state. If the refcount reaches 0, the state
-will be freed.
--}
-videoCodecStateUnref ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoCodecState
-    {- ^ /@state@/: a 'GI.GstVideo.Structs.VideoCodecState.VideoCodecState' -}
-    -> m ()
-videoCodecStateUnref state = liftIO $ do
-    state' <- unsafeManagedPtrGetPtr state
-    gst_video_codec_state_unref state'
-    touchManagedPtr state
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoCodecStateUnrefMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoCodecStateUnrefMethodInfo VideoCodecState signature where
-    overloadedMethod _ = videoCodecStateUnref
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoCodecStateMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoCodecStateMethod "ref" o = VideoCodecStateRefMethodInfo
-    ResolveVideoCodecStateMethod "unref" o = VideoCodecStateUnrefMethodInfo
-    ResolveVideoCodecStateMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoCodecStateMethod t VideoCodecState, O.MethodInfo info VideoCodecState p) => OL.IsLabel t (VideoCodecState -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoCodecState.hs-boot b/GI/GstVideo/Structs/VideoCodecState.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCodecState.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoCodecState 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoCodecState = VideoCodecState (ManagedPtr VideoCodecState)
-instance BoxedObject VideoCodecState where
-#if ENABLE_OVERLOADING
-data VideoCodecStateRefMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoCodecStateUnrefMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoColorPrimariesInfo.hs b/GI/GstVideo/Structs/VideoColorPrimariesInfo.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoColorPrimariesInfo.hs
+++ /dev/null
@@ -1,609 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Structure describing the chromaticity coordinates of an RGB system. These
-values can be used to construct a matrix to transform RGB to and from the
-XYZ colorspace.
-
-/Since: 1.6/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoColorPrimariesInfo
-    ( 
-
--- * Exported types
-    VideoColorPrimariesInfo(..)             ,
-    newZeroVideoColorPrimariesInfo          ,
-    noVideoColorPrimariesInfo               ,
-
-
- -- * Properties
--- ** bx #attr:bx#
-{- | blue x coordinate
--}
-    getVideoColorPrimariesInfoBx            ,
-    setVideoColorPrimariesInfoBx            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_bx              ,
-#endif
-
-
--- ** by #attr:by#
-{- | blue y coordinate
--}
-    getVideoColorPrimariesInfoBy            ,
-    setVideoColorPrimariesInfoBy            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_by              ,
-#endif
-
-
--- ** gx #attr:gx#
-{- | green x coordinate
--}
-    getVideoColorPrimariesInfoGx            ,
-    setVideoColorPrimariesInfoGx            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_gx              ,
-#endif
-
-
--- ** gy #attr:gy#
-{- | green y coordinate
--}
-    getVideoColorPrimariesInfoGy            ,
-    setVideoColorPrimariesInfoGy            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_gy              ,
-#endif
-
-
--- ** primaries #attr:primaries#
-{- | a 'GI.GstVideo.Enums.VideoColorPrimaries'
--}
-    getVideoColorPrimariesInfoPrimaries     ,
-    setVideoColorPrimariesInfoPrimaries     ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_primaries       ,
-#endif
-
-
--- ** rx #attr:rx#
-{- | red x coordinate
--}
-    getVideoColorPrimariesInfoRx            ,
-    setVideoColorPrimariesInfoRx            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_rx              ,
-#endif
-
-
--- ** ry #attr:ry#
-{- | red y coordinate
--}
-    getVideoColorPrimariesInfoRy            ,
-    setVideoColorPrimariesInfoRy            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_ry              ,
-#endif
-
-
--- ** wx #attr:wx#
-{- | reference white x coordinate
--}
-    getVideoColorPrimariesInfoWx            ,
-    setVideoColorPrimariesInfoWx            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_wx              ,
-#endif
-
-
--- ** wy #attr:wy#
-{- | reference white y coordinate
--}
-    getVideoColorPrimariesInfoWy            ,
-    setVideoColorPrimariesInfoWy            ,
-#if ENABLE_OVERLOADING
-    videoColorPrimariesInfo_wy              ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- | Memory-managed wrapper type.
-newtype VideoColorPrimariesInfo = VideoColorPrimariesInfo (ManagedPtr VideoColorPrimariesInfo)
-instance WrappedPtr VideoColorPrimariesInfo where
-    wrappedPtrCalloc = callocBytes 72
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 72 >=> wrapPtr VideoColorPrimariesInfo)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoColorPrimariesInfo` struct initialized to zero.
-newZeroVideoColorPrimariesInfo :: MonadIO m => m VideoColorPrimariesInfo
-newZeroVideoColorPrimariesInfo = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoColorPrimariesInfo
-
-instance tag ~ 'AttrSet => Constructible VideoColorPrimariesInfo tag where
-    new _ attrs = do
-        o <- newZeroVideoColorPrimariesInfo
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoColorPrimariesInfo`.
-noVideoColorPrimariesInfo :: Maybe VideoColorPrimariesInfo
-noVideoColorPrimariesInfo = Nothing
-
-{- |
-Get the value of the “@primaries@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #primaries
-@
--}
-getVideoColorPrimariesInfoPrimaries :: MonadIO m => VideoColorPrimariesInfo -> m GstVideo.Enums.VideoColorPrimaries
-getVideoColorPrimariesInfoPrimaries s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@primaries@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #primaries 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoPrimaries :: MonadIO m => VideoColorPrimariesInfo -> GstVideo.Enums.VideoColorPrimaries -> m ()
-setVideoColorPrimariesInfoPrimaries s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 0) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoPrimariesFieldInfo
-instance AttrInfo VideoColorPrimariesInfoPrimariesFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoPrimariesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoPrimariesFieldInfo = (~) GstVideo.Enums.VideoColorPrimaries
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoPrimariesFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoPrimariesFieldInfo = GstVideo.Enums.VideoColorPrimaries
-    type AttrLabel VideoColorPrimariesInfoPrimariesFieldInfo = "primaries"
-    type AttrOrigin VideoColorPrimariesInfoPrimariesFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoPrimaries
-    attrSet _ = setVideoColorPrimariesInfoPrimaries
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_primaries :: AttrLabelProxy "primaries"
-videoColorPrimariesInfo_primaries = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Wx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #wx
-@
--}
-getVideoColorPrimariesInfoWx :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoWx s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Wx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #wx 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoWx :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoWx s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 8) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoWxFieldInfo
-instance AttrInfo VideoColorPrimariesInfoWxFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoWxFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoWxFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoWxFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoWxFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoWxFieldInfo = "Wx"
-    type AttrOrigin VideoColorPrimariesInfoWxFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoWx
-    attrSet _ = setVideoColorPrimariesInfoWx
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_wx :: AttrLabelProxy "wx"
-videoColorPrimariesInfo_wx = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Wy@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #wy
-@
--}
-getVideoColorPrimariesInfoWy :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoWy s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Wy@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #wy 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoWy :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoWy s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 16) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoWyFieldInfo
-instance AttrInfo VideoColorPrimariesInfoWyFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoWyFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoWyFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoWyFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoWyFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoWyFieldInfo = "Wy"
-    type AttrOrigin VideoColorPrimariesInfoWyFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoWy
-    attrSet _ = setVideoColorPrimariesInfoWy
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_wy :: AttrLabelProxy "wy"
-videoColorPrimariesInfo_wy = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Rx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #rx
-@
--}
-getVideoColorPrimariesInfoRx :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoRx s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Rx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #rx 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoRx :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoRx s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 24) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoRxFieldInfo
-instance AttrInfo VideoColorPrimariesInfoRxFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoRxFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoRxFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoRxFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoRxFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoRxFieldInfo = "Rx"
-    type AttrOrigin VideoColorPrimariesInfoRxFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoRx
-    attrSet _ = setVideoColorPrimariesInfoRx
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_rx :: AttrLabelProxy "rx"
-videoColorPrimariesInfo_rx = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Ry@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #ry
-@
--}
-getVideoColorPrimariesInfoRy :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoRy s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Ry@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #ry 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoRy :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoRy s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 32) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoRyFieldInfo
-instance AttrInfo VideoColorPrimariesInfoRyFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoRyFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoRyFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoRyFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoRyFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoRyFieldInfo = "Ry"
-    type AttrOrigin VideoColorPrimariesInfoRyFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoRy
-    attrSet _ = setVideoColorPrimariesInfoRy
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_ry :: AttrLabelProxy "ry"
-videoColorPrimariesInfo_ry = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Gx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #gx
-@
--}
-getVideoColorPrimariesInfoGx :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoGx s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 40) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Gx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #gx 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoGx :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoGx s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 40) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoGxFieldInfo
-instance AttrInfo VideoColorPrimariesInfoGxFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoGxFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoGxFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoGxFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoGxFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoGxFieldInfo = "Gx"
-    type AttrOrigin VideoColorPrimariesInfoGxFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoGx
-    attrSet _ = setVideoColorPrimariesInfoGx
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_gx :: AttrLabelProxy "gx"
-videoColorPrimariesInfo_gx = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Gy@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #gy
-@
--}
-getVideoColorPrimariesInfoGy :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoGy s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 48) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Gy@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #gy 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoGy :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoGy s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 48) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoGyFieldInfo
-instance AttrInfo VideoColorPrimariesInfoGyFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoGyFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoGyFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoGyFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoGyFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoGyFieldInfo = "Gy"
-    type AttrOrigin VideoColorPrimariesInfoGyFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoGy
-    attrSet _ = setVideoColorPrimariesInfoGy
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_gy :: AttrLabelProxy "gy"
-videoColorPrimariesInfo_gy = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@Bx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #bx
-@
--}
-getVideoColorPrimariesInfoBx :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoBx s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 56) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@Bx@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #bx 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoBx :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoBx s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 56) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoBxFieldInfo
-instance AttrInfo VideoColorPrimariesInfoBxFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoBxFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoBxFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoBxFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoBxFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoBxFieldInfo = "Bx"
-    type AttrOrigin VideoColorPrimariesInfoBxFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoBx
-    attrSet _ = setVideoColorPrimariesInfoBx
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_bx :: AttrLabelProxy "bx"
-videoColorPrimariesInfo_bx = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@By@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorPrimariesInfo #by
-@
--}
-getVideoColorPrimariesInfoBy :: MonadIO m => VideoColorPrimariesInfo -> m Double
-getVideoColorPrimariesInfoBy s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 64) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@By@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorPrimariesInfo [ #by 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorPrimariesInfoBy :: MonadIO m => VideoColorPrimariesInfo -> Double -> m ()
-setVideoColorPrimariesInfoBy s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 64) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoColorPrimariesInfoByFieldInfo
-instance AttrInfo VideoColorPrimariesInfoByFieldInfo where
-    type AttrAllowedOps VideoColorPrimariesInfoByFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorPrimariesInfoByFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoColorPrimariesInfoByFieldInfo = (~) VideoColorPrimariesInfo
-    type AttrGetType VideoColorPrimariesInfoByFieldInfo = Double
-    type AttrLabel VideoColorPrimariesInfoByFieldInfo = "By"
-    type AttrOrigin VideoColorPrimariesInfoByFieldInfo = VideoColorPrimariesInfo
-    attrGet _ = getVideoColorPrimariesInfoBy
-    attrSet _ = setVideoColorPrimariesInfoBy
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorPrimariesInfo_by :: AttrLabelProxy "by"
-videoColorPrimariesInfo_by = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoColorPrimariesInfo
-type instance O.AttributeList VideoColorPrimariesInfo = VideoColorPrimariesInfoAttributeList
-type VideoColorPrimariesInfoAttributeList = ('[ '("primaries", VideoColorPrimariesInfoPrimariesFieldInfo), '("wx", VideoColorPrimariesInfoWxFieldInfo), '("wy", VideoColorPrimariesInfoWyFieldInfo), '("rx", VideoColorPrimariesInfoRxFieldInfo), '("ry", VideoColorPrimariesInfoRyFieldInfo), '("gx", VideoColorPrimariesInfoGxFieldInfo), '("gy", VideoColorPrimariesInfoGyFieldInfo), '("bx", VideoColorPrimariesInfoBxFieldInfo), '("by", VideoColorPrimariesInfoByFieldInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoColorPrimariesInfoMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoColorPrimariesInfoMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoColorPrimariesInfoMethod t VideoColorPrimariesInfo, O.MethodInfo info VideoColorPrimariesInfo p) => OL.IsLabel t (VideoColorPrimariesInfo -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoColorPrimariesInfo.hs-boot b/GI/GstVideo/Structs/VideoColorPrimariesInfo.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoColorPrimariesInfo.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoColorPrimariesInfo 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoColorPrimariesInfo = VideoColorPrimariesInfo (ManagedPtr VideoColorPrimariesInfo)
-instance WrappedPtr VideoColorPrimariesInfo where
diff --git a/GI/GstVideo/Structs/VideoColorimetry.hs b/GI/GstVideo/Structs/VideoColorimetry.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoColorimetry.hs
+++ /dev/null
@@ -1,523 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Structure describing the color info.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoColorimetry
-    ( 
-
--- * Exported types
-    VideoColorimetry(..)                    ,
-    newZeroVideoColorimetry                 ,
-    noVideoColorimetry                      ,
-
-
- -- * Methods
--- ** fromString #method:fromString#
-
-#if ENABLE_OVERLOADING
-    VideoColorimetryFromStringMethodInfo    ,
-#endif
-    videoColorimetryFromString              ,
-
-
--- ** isEqual #method:isEqual#
-
-#if ENABLE_OVERLOADING
-    VideoColorimetryIsEqualMethodInfo       ,
-#endif
-    videoColorimetryIsEqual                 ,
-
-
--- ** matches #method:matches#
-
-#if ENABLE_OVERLOADING
-    VideoColorimetryMatchesMethodInfo       ,
-#endif
-    videoColorimetryMatches                 ,
-
-
--- ** toString #method:toString#
-
-#if ENABLE_OVERLOADING
-    VideoColorimetryToStringMethodInfo      ,
-#endif
-    videoColorimetryToString                ,
-
-
-
-
- -- * Properties
--- ** matrix #attr:matrix#
-{- | the color matrix. Used to convert between Y\'PbPr and
-         non-linear RGB (R\'G\'B\')
--}
-    getVideoColorimetryMatrix               ,
-    setVideoColorimetryMatrix               ,
-#if ENABLE_OVERLOADING
-    videoColorimetry_matrix                 ,
-#endif
-
-
--- ** primaries #attr:primaries#
-{- | color primaries. used to convert between R\'G\'B\' and CIE XYZ
--}
-    getVideoColorimetryPrimaries            ,
-    setVideoColorimetryPrimaries            ,
-#if ENABLE_OVERLOADING
-    videoColorimetry_primaries              ,
-#endif
-
-
--- ** range #attr:range#
-{- | the color range. This is the valid range for the samples.
-        It is used to convert the samples to Y\'PbPr values.
--}
-    getVideoColorimetryRange                ,
-    setVideoColorimetryRange                ,
-#if ENABLE_OVERLOADING
-    videoColorimetry_range                  ,
-#endif
-
-
--- ** transfer #attr:transfer#
-{- | the transfer function. used to convert between R\'G\'B\' and RGB
--}
-    getVideoColorimetryTransfer             ,
-    setVideoColorimetryTransfer             ,
-#if ENABLE_OVERLOADING
-    videoColorimetry_transfer               ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- | Memory-managed wrapper type.
-newtype VideoColorimetry = VideoColorimetry (ManagedPtr VideoColorimetry)
-instance WrappedPtr VideoColorimetry where
-    wrappedPtrCalloc = callocBytes 16
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 16 >=> wrapPtr VideoColorimetry)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoColorimetry` struct initialized to zero.
-newZeroVideoColorimetry :: MonadIO m => m VideoColorimetry
-newZeroVideoColorimetry = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoColorimetry
-
-instance tag ~ 'AttrSet => Constructible VideoColorimetry tag where
-    new _ attrs = do
-        o <- newZeroVideoColorimetry
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoColorimetry`.
-noVideoColorimetry :: Maybe VideoColorimetry
-noVideoColorimetry = Nothing
-
-{- |
-Get the value of the “@range@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorimetry #range
-@
--}
-getVideoColorimetryRange :: MonadIO m => VideoColorimetry -> m GstVideo.Enums.VideoColorRange
-getVideoColorimetryRange s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@range@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorimetry [ #range 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorimetryRange :: MonadIO m => VideoColorimetry -> GstVideo.Enums.VideoColorRange -> m ()
-setVideoColorimetryRange s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 0) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryRangeFieldInfo
-instance AttrInfo VideoColorimetryRangeFieldInfo where
-    type AttrAllowedOps VideoColorimetryRangeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorimetryRangeFieldInfo = (~) GstVideo.Enums.VideoColorRange
-    type AttrBaseTypeConstraint VideoColorimetryRangeFieldInfo = (~) VideoColorimetry
-    type AttrGetType VideoColorimetryRangeFieldInfo = GstVideo.Enums.VideoColorRange
-    type AttrLabel VideoColorimetryRangeFieldInfo = "range"
-    type AttrOrigin VideoColorimetryRangeFieldInfo = VideoColorimetry
-    attrGet _ = getVideoColorimetryRange
-    attrSet _ = setVideoColorimetryRange
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorimetry_range :: AttrLabelProxy "range"
-videoColorimetry_range = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@matrix@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorimetry #matrix
-@
--}
-getVideoColorimetryMatrix :: MonadIO m => VideoColorimetry -> m GstVideo.Enums.VideoColorMatrix
-getVideoColorimetryMatrix s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 4) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@matrix@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorimetry [ #matrix 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorimetryMatrix :: MonadIO m => VideoColorimetry -> GstVideo.Enums.VideoColorMatrix -> m ()
-setVideoColorimetryMatrix s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 4) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryMatrixFieldInfo
-instance AttrInfo VideoColorimetryMatrixFieldInfo where
-    type AttrAllowedOps VideoColorimetryMatrixFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorimetryMatrixFieldInfo = (~) GstVideo.Enums.VideoColorMatrix
-    type AttrBaseTypeConstraint VideoColorimetryMatrixFieldInfo = (~) VideoColorimetry
-    type AttrGetType VideoColorimetryMatrixFieldInfo = GstVideo.Enums.VideoColorMatrix
-    type AttrLabel VideoColorimetryMatrixFieldInfo = "matrix"
-    type AttrOrigin VideoColorimetryMatrixFieldInfo = VideoColorimetry
-    attrGet _ = getVideoColorimetryMatrix
-    attrSet _ = setVideoColorimetryMatrix
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorimetry_matrix :: AttrLabelProxy "matrix"
-videoColorimetry_matrix = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@transfer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorimetry #transfer
-@
--}
-getVideoColorimetryTransfer :: MonadIO m => VideoColorimetry -> m GstVideo.Enums.VideoTransferFunction
-getVideoColorimetryTransfer s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@transfer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorimetry [ #transfer 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorimetryTransfer :: MonadIO m => VideoColorimetry -> GstVideo.Enums.VideoTransferFunction -> m ()
-setVideoColorimetryTransfer s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 8) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryTransferFieldInfo
-instance AttrInfo VideoColorimetryTransferFieldInfo where
-    type AttrAllowedOps VideoColorimetryTransferFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorimetryTransferFieldInfo = (~) GstVideo.Enums.VideoTransferFunction
-    type AttrBaseTypeConstraint VideoColorimetryTransferFieldInfo = (~) VideoColorimetry
-    type AttrGetType VideoColorimetryTransferFieldInfo = GstVideo.Enums.VideoTransferFunction
-    type AttrLabel VideoColorimetryTransferFieldInfo = "transfer"
-    type AttrOrigin VideoColorimetryTransferFieldInfo = VideoColorimetry
-    attrGet _ = getVideoColorimetryTransfer
-    attrSet _ = setVideoColorimetryTransfer
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorimetry_transfer :: AttrLabelProxy "transfer"
-videoColorimetry_transfer = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@primaries@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoColorimetry #primaries
-@
--}
-getVideoColorimetryPrimaries :: MonadIO m => VideoColorimetry -> m GstVideo.Enums.VideoColorPrimaries
-getVideoColorimetryPrimaries s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 12) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@primaries@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoColorimetry [ #primaries 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoColorimetryPrimaries :: MonadIO m => VideoColorimetry -> GstVideo.Enums.VideoColorPrimaries -> m ()
-setVideoColorimetryPrimaries s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 12) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryPrimariesFieldInfo
-instance AttrInfo VideoColorimetryPrimariesFieldInfo where
-    type AttrAllowedOps VideoColorimetryPrimariesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoColorimetryPrimariesFieldInfo = (~) GstVideo.Enums.VideoColorPrimaries
-    type AttrBaseTypeConstraint VideoColorimetryPrimariesFieldInfo = (~) VideoColorimetry
-    type AttrGetType VideoColorimetryPrimariesFieldInfo = GstVideo.Enums.VideoColorPrimaries
-    type AttrLabel VideoColorimetryPrimariesFieldInfo = "primaries"
-    type AttrOrigin VideoColorimetryPrimariesFieldInfo = VideoColorimetry
-    attrGet _ = getVideoColorimetryPrimaries
-    attrSet _ = setVideoColorimetryPrimaries
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoColorimetry_primaries :: AttrLabelProxy "primaries"
-videoColorimetry_primaries = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoColorimetry
-type instance O.AttributeList VideoColorimetry = VideoColorimetryAttributeList
-type VideoColorimetryAttributeList = ('[ '("range", VideoColorimetryRangeFieldInfo), '("matrix", VideoColorimetryMatrixFieldInfo), '("transfer", VideoColorimetryTransferFieldInfo), '("primaries", VideoColorimetryPrimariesFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoColorimetry::from_string
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "cinfo", argType = TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoColorimetry", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "color", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a colorimetry string", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_colorimetry_from_string" gst_video_colorimetry_from_string :: 
-    Ptr VideoColorimetry ->                 -- cinfo : TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"})
-    CString ->                              -- color : TBasicType TUTF8
-    IO CInt
-
-{- |
-Parse the colorimetry string and update /@cinfo@/ with the parsed
-values.
--}
-videoColorimetryFromString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoColorimetry
-    {- ^ /@cinfo@/: a 'GI.GstVideo.Structs.VideoColorimetry.VideoColorimetry' -}
-    -> T.Text
-    {- ^ /@color@/: a colorimetry string -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if /@color@/ points to valid colorimetry info. -}
-videoColorimetryFromString cinfo color = liftIO $ do
-    cinfo' <- unsafeManagedPtrGetPtr cinfo
-    color' <- textToCString color
-    result <- gst_video_colorimetry_from_string cinfo' color'
-    let result' = (/= 0) result
-    touchManagedPtr cinfo
-    freeMem color'
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryFromStringMethodInfo
-instance (signature ~ (T.Text -> m Bool), MonadIO m) => O.MethodInfo VideoColorimetryFromStringMethodInfo VideoColorimetry signature where
-    overloadedMethod _ = videoColorimetryFromString
-
-#endif
-
--- method VideoColorimetry::is_equal
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "cinfo", argType = TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoColorimetry", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "other", argType = TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "another #GstVideoColorimetry", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_colorimetry_is_equal" gst_video_colorimetry_is_equal :: 
-    Ptr VideoColorimetry ->                 -- cinfo : TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"})
-    Ptr VideoColorimetry ->                 -- other : TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"})
-    IO CInt
-
-{- |
-Compare the 2 colorimetry sets for equality
-
-/Since: 1.6/
--}
-videoColorimetryIsEqual ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoColorimetry
-    {- ^ /@cinfo@/: a 'GI.GstVideo.Structs.VideoColorimetry.VideoColorimetry' -}
-    -> VideoColorimetry
-    {- ^ /@other@/: another 'GI.GstVideo.Structs.VideoColorimetry.VideoColorimetry' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if /@cinfo@/ and /@other@/ are equal. -}
-videoColorimetryIsEqual cinfo other = liftIO $ do
-    cinfo' <- unsafeManagedPtrGetPtr cinfo
-    other' <- unsafeManagedPtrGetPtr other
-    result <- gst_video_colorimetry_is_equal cinfo' other'
-    let result' = (/= 0) result
-    touchManagedPtr cinfo
-    touchManagedPtr other
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryIsEqualMethodInfo
-instance (signature ~ (VideoColorimetry -> m Bool), MonadIO m) => O.MethodInfo VideoColorimetryIsEqualMethodInfo VideoColorimetry signature where
-    overloadedMethod _ = videoColorimetryIsEqual
-
-#endif
-
--- method VideoColorimetry::matches
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "cinfo", argType = TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "color", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a colorimetry string", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_colorimetry_matches" gst_video_colorimetry_matches :: 
-    Ptr VideoColorimetry ->                 -- cinfo : TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"})
-    CString ->                              -- color : TBasicType TUTF8
-    IO CInt
-
-{- |
-Check if the colorimetry information in /@info@/ matches that of the
-string /@color@/.
--}
-videoColorimetryMatches ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoColorimetry
-    {- ^ /@cinfo@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> T.Text
-    {- ^ /@color@/: a colorimetry string -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if /@color@/ conveys the same colorimetry info as the color
-information in /@info@/. -}
-videoColorimetryMatches cinfo color = liftIO $ do
-    cinfo' <- unsafeManagedPtrGetPtr cinfo
-    color' <- textToCString color
-    result <- gst_video_colorimetry_matches cinfo' color'
-    let result' = (/= 0) result
-    touchManagedPtr cinfo
-    freeMem color'
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryMatchesMethodInfo
-instance (signature ~ (T.Text -> m Bool), MonadIO m) => O.MethodInfo VideoColorimetryMatchesMethodInfo VideoColorimetry signature where
-    overloadedMethod _ = videoColorimetryMatches
-
-#endif
-
--- method VideoColorimetry::to_string
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "cinfo", argType = TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoColorimetry", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUTF8)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_colorimetry_to_string" gst_video_colorimetry_to_string :: 
-    Ptr VideoColorimetry ->                 -- cinfo : TInterface (Name {namespace = "GstVideo", name = "VideoColorimetry"})
-    IO CString
-
-{- |
-Make a string representation of /@cinfo@/.
--}
-videoColorimetryToString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoColorimetry
-    {- ^ /@cinfo@/: a 'GI.GstVideo.Structs.VideoColorimetry.VideoColorimetry' -}
-    -> m T.Text
-    {- ^ __Returns:__ a string representation of /@cinfo@/. -}
-videoColorimetryToString cinfo = liftIO $ do
-    cinfo' <- unsafeManagedPtrGetPtr cinfo
-    result <- gst_video_colorimetry_to_string cinfo'
-    checkUnexpectedReturnNULL "videoColorimetryToString" result
-    result' <- cstringToText result
-    freeMem result
-    touchManagedPtr cinfo
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoColorimetryToStringMethodInfo
-instance (signature ~ (m T.Text), MonadIO m) => O.MethodInfo VideoColorimetryToStringMethodInfo VideoColorimetry signature where
-    overloadedMethod _ = videoColorimetryToString
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoColorimetryMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoColorimetryMethod "fromString" o = VideoColorimetryFromStringMethodInfo
-    ResolveVideoColorimetryMethod "isEqual" o = VideoColorimetryIsEqualMethodInfo
-    ResolveVideoColorimetryMethod "matches" o = VideoColorimetryMatchesMethodInfo
-    ResolveVideoColorimetryMethod "toString" o = VideoColorimetryToStringMethodInfo
-    ResolveVideoColorimetryMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoColorimetryMethod t VideoColorimetry, O.MethodInfo info VideoColorimetry p) => OL.IsLabel t (VideoColorimetry -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoColorimetry.hs-boot b/GI/GstVideo/Structs/VideoColorimetry.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoColorimetry.hs-boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoColorimetry 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoColorimetry = VideoColorimetry (ManagedPtr VideoColorimetry)
-instance WrappedPtr VideoColorimetry where
-#if ENABLE_OVERLOADING
-data VideoColorimetryFromStringMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoColorimetryIsEqualMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoColorimetryMatchesMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoColorimetryToStringMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoConverter.hs b/GI/GstVideo/Structs/VideoConverter.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoConverter.hs
+++ /dev/null
@@ -1,284 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-/No description available in the introspection data./
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoConverter
-    ( 
-
--- * Exported types
-    VideoConverter(..)                      ,
-    noVideoConverter                        ,
-
-
- -- * Methods
--- ** frame #method:frame#
-
-#if ENABLE_OVERLOADING
-    VideoConverterFrameMethodInfo           ,
-#endif
-    videoConverterFrame                     ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoConverterFreeMethodInfo            ,
-#endif
-    videoConverterFree                      ,
-
-
--- ** getConfig #method:getConfig#
-
-#if ENABLE_OVERLOADING
-    VideoConverterGetConfigMethodInfo       ,
-#endif
-    videoConverterGetConfig                 ,
-
-
--- ** setConfig #method:setConfig#
-
-#if ENABLE_OVERLOADING
-    VideoConverterSetConfigMethodInfo       ,
-#endif
-    videoConverterSetConfig                 ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Structure as Gst.Structure
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoFrame as GstVideo.VideoFrame
-
--- | Memory-managed wrapper type.
-newtype VideoConverter = VideoConverter (ManagedPtr VideoConverter)
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr VideoConverter where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoConverter`.
-noVideoConverter :: Maybe VideoConverter
-noVideoConverter = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoConverter
-type instance O.AttributeList VideoConverter = VideoConverterAttributeList
-type VideoConverterAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoConverter::frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "convert", argType = TInterface (Name {namespace = "GstVideo", name = "VideoConverter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoConverter", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_converter_frame" gst_video_converter_frame :: 
-    Ptr VideoConverter ->                   -- convert : TInterface (Name {namespace = "GstVideo", name = "VideoConverter"})
-    Ptr GstVideo.VideoFrame.VideoFrame ->   -- src : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Ptr GstVideo.VideoFrame.VideoFrame ->   -- dest : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    IO ()
-
-{- |
-Convert the pixels of /@src@/ into /@dest@/ using /@convert@/.
-
-/Since: 1.6/
--}
-videoConverterFrame ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoConverter
-    {- ^ /@convert@/: a 'GI.GstVideo.Structs.VideoConverter.VideoConverter' -}
-    -> GstVideo.VideoFrame.VideoFrame
-    {- ^ /@src@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> GstVideo.VideoFrame.VideoFrame
-    {- ^ /@dest@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> m ()
-videoConverterFrame convert src dest = liftIO $ do
-    convert' <- unsafeManagedPtrGetPtr convert
-    src' <- unsafeManagedPtrGetPtr src
-    dest' <- unsafeManagedPtrGetPtr dest
-    gst_video_converter_frame convert' src' dest'
-    touchManagedPtr convert
-    touchManagedPtr src
-    touchManagedPtr dest
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoConverterFrameMethodInfo
-instance (signature ~ (GstVideo.VideoFrame.VideoFrame -> GstVideo.VideoFrame.VideoFrame -> m ()), MonadIO m) => O.MethodInfo VideoConverterFrameMethodInfo VideoConverter signature where
-    overloadedMethod _ = videoConverterFrame
-
-#endif
-
--- method VideoConverter::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "convert", argType = TInterface (Name {namespace = "GstVideo", name = "VideoConverter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoConverter", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_converter_free" gst_video_converter_free :: 
-    Ptr VideoConverter ->                   -- convert : TInterface (Name {namespace = "GstVideo", name = "VideoConverter"})
-    IO ()
-
-{- |
-Free /@convert@/
-
-/Since: 1.6/
--}
-videoConverterFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoConverter
-    {- ^ /@convert@/: a 'GI.GstVideo.Structs.VideoConverter.VideoConverter' -}
-    -> m ()
-videoConverterFree convert = liftIO $ do
-    convert' <- unsafeManagedPtrGetPtr convert
-    gst_video_converter_free convert'
-    touchManagedPtr convert
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoConverterFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoConverterFreeMethodInfo VideoConverter signature where
-    overloadedMethod _ = videoConverterFree
-
-#endif
-
--- method VideoConverter::get_config
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "convert", argType = TInterface (Name {namespace = "GstVideo", name = "VideoConverter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoConverter", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Structure"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_converter_get_config" gst_video_converter_get_config :: 
-    Ptr VideoConverter ->                   -- convert : TInterface (Name {namespace = "GstVideo", name = "VideoConverter"})
-    IO (Ptr Gst.Structure.Structure)
-
-{- |
-Get the current configuration of /@convert@/.
--}
-videoConverterGetConfig ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoConverter
-    {- ^ /@convert@/: a 'GI.GstVideo.Structs.VideoConverter.VideoConverter' -}
-    -> m Gst.Structure.Structure
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Structure.Structure' that remains valid for as long as /@convert@/ is valid
-  or until 'GI.GstVideo.Structs.VideoConverter.videoConverterSetConfig' is called. -}
-videoConverterGetConfig convert = liftIO $ do
-    convert' <- unsafeManagedPtrGetPtr convert
-    result <- gst_video_converter_get_config convert'
-    checkUnexpectedReturnNULL "videoConverterGetConfig" result
-    result' <- (newBoxed Gst.Structure.Structure) result
-    touchManagedPtr convert
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoConverterGetConfigMethodInfo
-instance (signature ~ (m Gst.Structure.Structure), MonadIO m) => O.MethodInfo VideoConverterGetConfigMethodInfo VideoConverter signature where
-    overloadedMethod _ = videoConverterGetConfig
-
-#endif
-
--- method VideoConverter::set_config
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "convert", argType = TInterface (Name {namespace = "GstVideo", name = "VideoConverter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoConverter", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "config", argType = TInterface (Name {namespace = "Gst", name = "Structure"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstStructure", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_converter_set_config" gst_video_converter_set_config :: 
-    Ptr VideoConverter ->                   -- convert : TInterface (Name {namespace = "GstVideo", name = "VideoConverter"})
-    Ptr Gst.Structure.Structure ->          -- config : TInterface (Name {namespace = "Gst", name = "Structure"})
-    IO CInt
-
-{- |
-Set /@config@/ as extra configuraion for /@convert@/.
-
-If the parameters in /@config@/ can not be set exactly, this function returns
-'False' and will try to update as much state as possible. The new state can
-then be retrieved and refined with 'GI.GstVideo.Structs.VideoConverter.videoConverterGetConfig'.
-
-Look at the @/GST_VIDEO_CONVERTER_OPT_/@* fields to check valid configuration
-option and values.
-
-/Since: 1.6/
--}
-videoConverterSetConfig ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoConverter
-    {- ^ /@convert@/: a 'GI.GstVideo.Structs.VideoConverter.VideoConverter' -}
-    -> Gst.Structure.Structure
-    {- ^ /@config@/: a 'GI.Gst.Structs.Structure.Structure' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' when /@config@/ could be set. -}
-videoConverterSetConfig convert config = liftIO $ do
-    convert' <- unsafeManagedPtrGetPtr convert
-    config' <- B.ManagedPtr.disownBoxed config
-    result <- gst_video_converter_set_config convert' config'
-    let result' = (/= 0) result
-    touchManagedPtr convert
-    touchManagedPtr config
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoConverterSetConfigMethodInfo
-instance (signature ~ (Gst.Structure.Structure -> m Bool), MonadIO m) => O.MethodInfo VideoConverterSetConfigMethodInfo VideoConverter signature where
-    overloadedMethod _ = videoConverterSetConfig
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoConverterMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoConverterMethod "frame" o = VideoConverterFrameMethodInfo
-    ResolveVideoConverterMethod "free" o = VideoConverterFreeMethodInfo
-    ResolveVideoConverterMethod "getConfig" o = VideoConverterGetConfigMethodInfo
-    ResolveVideoConverterMethod "setConfig" o = VideoConverterSetConfigMethodInfo
-    ResolveVideoConverterMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoConverterMethod t VideoConverter, O.MethodInfo info VideoConverter p) => OL.IsLabel t (VideoConverter -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoConverter.hs-boot b/GI/GstVideo/Structs/VideoConverter.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoConverter.hs-boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoConverter 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoConverter = VideoConverter (ManagedPtr VideoConverter)
-instance WrappedPtr VideoConverter where
-#if ENABLE_OVERLOADING
-data VideoConverterFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoConverterFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoConverterGetConfigMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoConverterSetConfigMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoCropMeta.hs b/GI/GstVideo/Structs/VideoCropMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCropMeta.hs
+++ /dev/null
@@ -1,390 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata describing image cropping.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoCropMeta
-    ( 
-
--- * Exported types
-    VideoCropMeta(..)                       ,
-    newZeroVideoCropMeta                    ,
-    noVideoCropMeta                         ,
-
-
- -- * Methods
--- ** getInfo #method:getInfo#
-
-    videoCropMetaGetInfo                    ,
-
-
-
-
- -- * Properties
--- ** height #attr:height#
-{- | the cropped height
--}
-    getVideoCropMetaHeight                  ,
-    setVideoCropMetaHeight                  ,
-#if ENABLE_OVERLOADING
-    videoCropMeta_height                    ,
-#endif
-
-
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoCropMetaMeta                    ,
-#if ENABLE_OVERLOADING
-    videoCropMeta_meta                      ,
-#endif
-
-
--- ** width #attr:width#
-{- | the cropped width
--}
-    getVideoCropMetaWidth                   ,
-    setVideoCropMetaWidth                   ,
-#if ENABLE_OVERLOADING
-    videoCropMeta_width                     ,
-#endif
-
-
--- ** x #attr:x#
-{- | the horizontal offset
--}
-    getVideoCropMetaX                       ,
-    setVideoCropMetaX                       ,
-#if ENABLE_OVERLOADING
-    videoCropMeta_x                         ,
-#endif
-
-
--- ** y #attr:y#
-{- | the vertical offset
--}
-    getVideoCropMetaY                       ,
-    setVideoCropMetaY                       ,
-#if ENABLE_OVERLOADING
-    videoCropMeta_y                         ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-
--- | Memory-managed wrapper type.
-newtype VideoCropMeta = VideoCropMeta (ManagedPtr VideoCropMeta)
-instance WrappedPtr VideoCropMeta where
-    wrappedPtrCalloc = callocBytes 32
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 32 >=> wrapPtr VideoCropMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoCropMeta` struct initialized to zero.
-newZeroVideoCropMeta :: MonadIO m => m VideoCropMeta
-newZeroVideoCropMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoCropMeta
-
-instance tag ~ 'AttrSet => Constructible VideoCropMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoCropMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoCropMeta`.
-noVideoCropMeta :: Maybe VideoCropMeta
-noVideoCropMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCropMeta #meta
-@
--}
-getVideoCropMetaMeta :: MonadIO m => VideoCropMeta -> m Gst.Meta.Meta
-getVideoCropMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoCropMetaMetaFieldInfo
-instance AttrInfo VideoCropMetaMetaFieldInfo where
-    type AttrAllowedOps VideoCropMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoCropMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoCropMetaMetaFieldInfo = (~) VideoCropMeta
-    type AttrGetType VideoCropMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoCropMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoCropMetaMetaFieldInfo = VideoCropMeta
-    attrGet _ = getVideoCropMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCropMeta_meta :: AttrLabelProxy "meta"
-videoCropMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@x@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCropMeta #x
-@
--}
-getVideoCropMetaX :: MonadIO m => VideoCropMeta -> m Word32
-getVideoCropMetaX s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@x@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCropMeta [ #x 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCropMetaX :: MonadIO m => VideoCropMeta -> Word32 -> m ()
-setVideoCropMetaX s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoCropMetaXFieldInfo
-instance AttrInfo VideoCropMetaXFieldInfo where
-    type AttrAllowedOps VideoCropMetaXFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCropMetaXFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoCropMetaXFieldInfo = (~) VideoCropMeta
-    type AttrGetType VideoCropMetaXFieldInfo = Word32
-    type AttrLabel VideoCropMetaXFieldInfo = "x"
-    type AttrOrigin VideoCropMetaXFieldInfo = VideoCropMeta
-    attrGet _ = getVideoCropMetaX
-    attrSet _ = setVideoCropMetaX
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCropMeta_x :: AttrLabelProxy "x"
-videoCropMeta_x = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@y@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCropMeta #y
-@
--}
-getVideoCropMetaY :: MonadIO m => VideoCropMeta -> m Word32
-getVideoCropMetaY s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 20) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@y@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCropMeta [ #y 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCropMetaY :: MonadIO m => VideoCropMeta -> Word32 -> m ()
-setVideoCropMetaY s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 20) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoCropMetaYFieldInfo
-instance AttrInfo VideoCropMetaYFieldInfo where
-    type AttrAllowedOps VideoCropMetaYFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCropMetaYFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoCropMetaYFieldInfo = (~) VideoCropMeta
-    type AttrGetType VideoCropMetaYFieldInfo = Word32
-    type AttrLabel VideoCropMetaYFieldInfo = "y"
-    type AttrOrigin VideoCropMetaYFieldInfo = VideoCropMeta
-    attrGet _ = getVideoCropMetaY
-    attrSet _ = setVideoCropMetaY
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCropMeta_y :: AttrLabelProxy "y"
-videoCropMeta_y = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@width@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCropMeta #width
-@
--}
-getVideoCropMetaWidth :: MonadIO m => VideoCropMeta -> m Word32
-getVideoCropMetaWidth s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@width@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCropMeta [ #width 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCropMetaWidth :: MonadIO m => VideoCropMeta -> Word32 -> m ()
-setVideoCropMetaWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 24) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoCropMetaWidthFieldInfo
-instance AttrInfo VideoCropMetaWidthFieldInfo where
-    type AttrAllowedOps VideoCropMetaWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCropMetaWidthFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoCropMetaWidthFieldInfo = (~) VideoCropMeta
-    type AttrGetType VideoCropMetaWidthFieldInfo = Word32
-    type AttrLabel VideoCropMetaWidthFieldInfo = "width"
-    type AttrOrigin VideoCropMetaWidthFieldInfo = VideoCropMeta
-    attrGet _ = getVideoCropMetaWidth
-    attrSet _ = setVideoCropMetaWidth
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCropMeta_width :: AttrLabelProxy "width"
-videoCropMeta_width = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@height@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoCropMeta #height
-@
--}
-getVideoCropMetaHeight :: MonadIO m => VideoCropMeta -> m Word32
-getVideoCropMetaHeight s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 28) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@height@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoCropMeta [ #height 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoCropMetaHeight :: MonadIO m => VideoCropMeta -> Word32 -> m ()
-setVideoCropMetaHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 28) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoCropMetaHeightFieldInfo
-instance AttrInfo VideoCropMetaHeightFieldInfo where
-    type AttrAllowedOps VideoCropMetaHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoCropMetaHeightFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoCropMetaHeightFieldInfo = (~) VideoCropMeta
-    type AttrGetType VideoCropMetaHeightFieldInfo = Word32
-    type AttrLabel VideoCropMetaHeightFieldInfo = "height"
-    type AttrOrigin VideoCropMetaHeightFieldInfo = VideoCropMeta
-    attrGet _ = getVideoCropMetaHeight
-    attrSet _ = setVideoCropMetaHeight
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoCropMeta_height :: AttrLabelProxy "height"
-videoCropMeta_height = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoCropMeta
-type instance O.AttributeList VideoCropMeta = VideoCropMetaAttributeList
-type VideoCropMetaAttributeList = ('[ '("meta", VideoCropMetaMetaFieldInfo), '("x", VideoCropMetaXFieldInfo), '("y", VideoCropMetaYFieldInfo), '("width", VideoCropMetaWidthFieldInfo), '("height", VideoCropMetaHeightFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoCropMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_crop_meta_get_info" gst_video_crop_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoCropMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoCropMetaGetInfo  = liftIO $ do
-    result <- gst_video_crop_meta_get_info
-    checkUnexpectedReturnNULL "videoCropMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoCropMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoCropMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoCropMetaMethod t VideoCropMeta, O.MethodInfo info VideoCropMeta p) => OL.IsLabel t (VideoCropMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoCropMeta.hs-boot b/GI/GstVideo/Structs/VideoCropMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoCropMeta.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoCropMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoCropMeta = VideoCropMeta (ManagedPtr VideoCropMeta)
-instance WrappedPtr VideoCropMeta where
diff --git a/GI/GstVideo/Structs/VideoDither.hs b/GI/GstVideo/Structs/VideoDither.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoDither.hs
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-GstVideoDither provides implementations of several dithering algorithms
-that can be applied to lines of video pixels to quantize and dither them.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoDither
-    ( 
-
--- * Exported types
-    VideoDither(..)                         ,
-    noVideoDither                           ,
-
-
- -- * Methods
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoDitherFreeMethodInfo               ,
-#endif
-    videoDitherFree                         ,
-
-
--- ** line #method:line#
-
-#if ENABLE_OVERLOADING
-    VideoDitherLineMethodInfo               ,
-#endif
-    videoDitherLine                         ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- | Memory-managed wrapper type.
-newtype VideoDither = VideoDither (ManagedPtr VideoDither)
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr VideoDither where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoDither`.
-noVideoDither :: Maybe VideoDither
-noVideoDither = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoDither
-type instance O.AttributeList VideoDither = VideoDitherAttributeList
-type VideoDitherAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoDither::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dither", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDither"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDither", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_dither_free" gst_video_dither_free :: 
-    Ptr VideoDither ->                      -- dither : TInterface (Name {namespace = "GstVideo", name = "VideoDither"})
-    IO ()
-
-{- |
-Free /@dither@/
--}
-videoDitherFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoDither
-    {- ^ /@dither@/: a 'GI.GstVideo.Structs.VideoDither.VideoDither' -}
-    -> m ()
-videoDitherFree dither = liftIO $ do
-    dither' <- unsafeManagedPtrGetPtr dither
-    gst_video_dither_free dither'
-    touchManagedPtr dither
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDitherFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoDitherFreeMethodInfo VideoDither signature where
-    overloadedMethod _ = videoDitherFree
-
-#endif
-
--- method VideoDither::line
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dither", argType = TInterface (Name {namespace = "GstVideo", name = "VideoDither"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoDither", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "line", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "pointer to the pixels of the line", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "x coordinate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "y coordinate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_dither_line" gst_video_dither_line :: 
-    Ptr VideoDither ->                      -- dither : TInterface (Name {namespace = "GstVideo", name = "VideoDither"})
-    Ptr () ->                               -- line : TBasicType TPtr
-    Word32 ->                               -- x : TBasicType TUInt
-    Word32 ->                               -- y : TBasicType TUInt
-    Word32 ->                               -- width : TBasicType TUInt
-    IO ()
-
-{- |
-Dither /@width@/ pixels starting from offset /@x@/ in /@line@/ using /@dither@/.
-
-/@y@/ is the line number of /@line@/ in the output image.
--}
-videoDitherLine ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoDither
-    {- ^ /@dither@/: a 'GI.GstVideo.Structs.VideoDither.VideoDither' -}
-    -> Ptr ()
-    {- ^ /@line@/: pointer to the pixels of the line -}
-    -> Word32
-    {- ^ /@x@/: x coordinate -}
-    -> Word32
-    {- ^ /@y@/: y coordinate -}
-    -> Word32
-    {- ^ /@width@/: the width -}
-    -> m ()
-videoDitherLine dither line x y width = liftIO $ do
-    dither' <- unsafeManagedPtrGetPtr dither
-    gst_video_dither_line dither' line x y width
-    touchManagedPtr dither
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoDitherLineMethodInfo
-instance (signature ~ (Ptr () -> Word32 -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoDitherLineMethodInfo VideoDither signature where
-    overloadedMethod _ = videoDitherLine
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoDitherMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoDitherMethod "free" o = VideoDitherFreeMethodInfo
-    ResolveVideoDitherMethod "line" o = VideoDitherLineMethodInfo
-    ResolveVideoDitherMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoDitherMethod t VideoDither, O.MethodInfo info VideoDither p) => OL.IsLabel t (VideoDither -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoDither.hs-boot b/GI/GstVideo/Structs/VideoDither.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoDither.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoDither 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoDither = VideoDither (ManagedPtr VideoDither)
-instance WrappedPtr VideoDither where
-#if ENABLE_OVERLOADING
-data VideoDitherFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoDitherLineMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoFormatInfo.hs b/GI/GstVideo/Structs/VideoFormatInfo.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoFormatInfo.hs
+++ /dev/null
@@ -1,949 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Information for a video format.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoFormatInfo
-    ( 
-
--- * Exported types
-    VideoFormatInfo(..)                     ,
-    newZeroVideoFormatInfo                  ,
-    noVideoFormatInfo                       ,
-
-
- -- * Properties
--- ** bits #attr:bits#
-{- | The number of bits used to pack data items. This can be less than 8
-   when multiple pixels are stored in a byte. for values > 8 multiple bytes
-   should be read according to the endianness flag before applying the shift
-   and mask.
--}
-    getVideoFormatInfoBits                  ,
-    setVideoFormatInfoBits                  ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_bits                    ,
-#endif
-
-
--- ** description #attr:description#
-{- | use readable description of the format
--}
-    clearVideoFormatInfoDescription         ,
-    getVideoFormatInfoDescription           ,
-    setVideoFormatInfoDescription           ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_description             ,
-#endif
-
-
--- ** flags #attr:flags#
-{- | 'GI.GstVideo.Flags.VideoFormatFlags'
--}
-    getVideoFormatInfoFlags                 ,
-    setVideoFormatInfoFlags                 ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_flags                   ,
-#endif
-
-
--- ** format #attr:format#
-{- | 'GI.GstVideo.Enums.VideoFormat'
--}
-    getVideoFormatInfoFormat                ,
-    setVideoFormatInfoFormat                ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_format                  ,
-#endif
-
-
--- ** nComponents #attr:nComponents#
-{- | the number of components in the video format.
--}
-    getVideoFormatInfoNComponents           ,
-    setVideoFormatInfoNComponents           ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_nComponents             ,
-#endif
-
-
--- ** nPlanes #attr:nPlanes#
-{- | the number of planes for this format. The number of planes can be
-   less than the amount of components when multiple components are packed into
-   one plane.
--}
-    getVideoFormatInfoNPlanes               ,
-    setVideoFormatInfoNPlanes               ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_nPlanes                 ,
-#endif
-
-
--- ** name #attr:name#
-{- | string representation of the format
--}
-    clearVideoFormatInfoName                ,
-    getVideoFormatInfoName                  ,
-    setVideoFormatInfoName                  ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_name                    ,
-#endif
-
-
--- ** packFunc #attr:packFunc#
-{- | an pack function for this format
--}
-    clearVideoFormatInfoPackFunc            ,
-    getVideoFormatInfoPackFunc              ,
-    setVideoFormatInfoPackFunc              ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_packFunc                ,
-#endif
-
-
--- ** packLines #attr:packLines#
-{- | the amount of lines that will be packed
--}
-    getVideoFormatInfoPackLines             ,
-    setVideoFormatInfoPackLines             ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_packLines               ,
-#endif
-
-
--- ** tileHs #attr:tileHs#
-{- | The height of a tile, in bytes, represented as a shift
--}
-    getVideoFormatInfoTileHs                ,
-    setVideoFormatInfoTileHs                ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_tileHs                  ,
-#endif
-
-
--- ** tileMode #attr:tileMode#
-{- | The tiling mode
--}
-    getVideoFormatInfoTileMode              ,
-    setVideoFormatInfoTileMode              ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_tileMode                ,
-#endif
-
-
--- ** tileWs #attr:tileWs#
-{- | The width of a tile, in bytes, represented as a shift
--}
-    getVideoFormatInfoTileWs                ,
-    setVideoFormatInfoTileWs                ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_tileWs                  ,
-#endif
-
-
--- ** unpackFormat #attr:unpackFormat#
-{- | the format of the unpacked pixels. This format must have the
-    @/GST_VIDEO_FORMAT_FLAG_UNPACK/@ flag set.
--}
-    getVideoFormatInfoUnpackFormat          ,
-    setVideoFormatInfoUnpackFormat          ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_unpackFormat            ,
-#endif
-
-
--- ** unpackFunc #attr:unpackFunc#
-{- | an unpack function for this format
--}
-    clearVideoFormatInfoUnpackFunc          ,
-    getVideoFormatInfoUnpackFunc            ,
-    setVideoFormatInfoUnpackFunc            ,
-#if ENABLE_OVERLOADING
-    videoFormatInfo_unpackFunc              ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GstVideo.Callbacks as GstVideo.Callbacks
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-
--- | Memory-managed wrapper type.
-newtype VideoFormatInfo = VideoFormatInfo (ManagedPtr VideoFormatInfo)
-instance WrappedPtr VideoFormatInfo where
-    wrappedPtrCalloc = callocBytes 232
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 232 >=> wrapPtr VideoFormatInfo)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoFormatInfo` struct initialized to zero.
-newZeroVideoFormatInfo :: MonadIO m => m VideoFormatInfo
-newZeroVideoFormatInfo = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoFormatInfo
-
-instance tag ~ 'AttrSet => Constructible VideoFormatInfo tag where
-    new _ attrs = do
-        o <- newZeroVideoFormatInfo
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoFormatInfo`.
-noVideoFormatInfo :: Maybe VideoFormatInfo
-noVideoFormatInfo = Nothing
-
-{- |
-Get the value of the “@format@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #format
-@
--}
-getVideoFormatInfoFormat :: MonadIO m => VideoFormatInfo -> m GstVideo.Enums.VideoFormat
-getVideoFormatInfoFormat s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@format@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #format 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoFormat :: MonadIO m => VideoFormatInfo -> GstVideo.Enums.VideoFormat -> m ()
-setVideoFormatInfoFormat s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 0) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoFormatFieldInfo
-instance AttrInfo VideoFormatInfoFormatFieldInfo where
-    type AttrAllowedOps VideoFormatInfoFormatFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoFormatFieldInfo = (~) GstVideo.Enums.VideoFormat
-    type AttrBaseTypeConstraint VideoFormatInfoFormatFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoFormatFieldInfo = GstVideo.Enums.VideoFormat
-    type AttrLabel VideoFormatInfoFormatFieldInfo = "format"
-    type AttrOrigin VideoFormatInfoFormatFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoFormat
-    attrSet _ = setVideoFormatInfoFormat
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_format :: AttrLabelProxy "format"
-videoFormatInfo_format = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@name@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #name
-@
--}
-getVideoFormatInfoName :: MonadIO m => VideoFormatInfo -> m (Maybe T.Text)
-getVideoFormatInfoName s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO CString
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- cstringToText val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@name@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #name 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoName :: MonadIO m => VideoFormatInfo -> CString -> m ()
-setVideoFormatInfoName s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: CString)
-
-{- |
-Set the value of the “@name@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #name
-@
--}
-clearVideoFormatInfoName :: MonadIO m => VideoFormatInfo -> m ()
-clearVideoFormatInfoName s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (FP.nullPtr :: CString)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoNameFieldInfo
-instance AttrInfo VideoFormatInfoNameFieldInfo where
-    type AttrAllowedOps VideoFormatInfoNameFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoFormatInfoNameFieldInfo = (~) CString
-    type AttrBaseTypeConstraint VideoFormatInfoNameFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoNameFieldInfo = Maybe T.Text
-    type AttrLabel VideoFormatInfoNameFieldInfo = "name"
-    type AttrOrigin VideoFormatInfoNameFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoName
-    attrSet _ = setVideoFormatInfoName
-    attrConstruct = undefined
-    attrClear _ = clearVideoFormatInfoName
-
-videoFormatInfo_name :: AttrLabelProxy "name"
-videoFormatInfo_name = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@description@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #description
-@
--}
-getVideoFormatInfoDescription :: MonadIO m => VideoFormatInfo -> m (Maybe T.Text)
-getVideoFormatInfoDescription s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO CString
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- cstringToText val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@description@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #description 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoDescription :: MonadIO m => VideoFormatInfo -> CString -> m ()
-setVideoFormatInfoDescription s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: CString)
-
-{- |
-Set the value of the “@description@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #description
-@
--}
-clearVideoFormatInfoDescription :: MonadIO m => VideoFormatInfo -> m ()
-clearVideoFormatInfoDescription s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (FP.nullPtr :: CString)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoDescriptionFieldInfo
-instance AttrInfo VideoFormatInfoDescriptionFieldInfo where
-    type AttrAllowedOps VideoFormatInfoDescriptionFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoFormatInfoDescriptionFieldInfo = (~) CString
-    type AttrBaseTypeConstraint VideoFormatInfoDescriptionFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoDescriptionFieldInfo = Maybe T.Text
-    type AttrLabel VideoFormatInfoDescriptionFieldInfo = "description"
-    type AttrOrigin VideoFormatInfoDescriptionFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoDescription
-    attrSet _ = setVideoFormatInfoDescription
-    attrConstruct = undefined
-    attrClear _ = clearVideoFormatInfoDescription
-
-videoFormatInfo_description :: AttrLabelProxy "description"
-videoFormatInfo_description = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #flags
-@
--}
-getVideoFormatInfoFlags :: MonadIO m => VideoFormatInfo -> m [GstVideo.Flags.VideoFormatFlags]
-getVideoFormatInfoFlags s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO CUInt
-    let val' = wordToGFlags val
-    return val'
-
-{- |
-Set the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #flags 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoFlags :: MonadIO m => VideoFormatInfo -> [GstVideo.Flags.VideoFormatFlags] -> m ()
-setVideoFormatInfoFlags s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = gflagsToWord val
-    poke (ptr `plusPtr` 24) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoFlagsFieldInfo
-instance AttrInfo VideoFormatInfoFlagsFieldInfo where
-    type AttrAllowedOps VideoFormatInfoFlagsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoFlagsFieldInfo = (~) [GstVideo.Flags.VideoFormatFlags]
-    type AttrBaseTypeConstraint VideoFormatInfoFlagsFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoFlagsFieldInfo = [GstVideo.Flags.VideoFormatFlags]
-    type AttrLabel VideoFormatInfoFlagsFieldInfo = "flags"
-    type AttrOrigin VideoFormatInfoFlagsFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoFlags
-    attrSet _ = setVideoFormatInfoFlags
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_flags :: AttrLabelProxy "flags"
-videoFormatInfo_flags = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@bits@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #bits
-@
--}
-getVideoFormatInfoBits :: MonadIO m => VideoFormatInfo -> m Word32
-getVideoFormatInfoBits s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 28) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@bits@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #bits 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoBits :: MonadIO m => VideoFormatInfo -> Word32 -> m ()
-setVideoFormatInfoBits s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 28) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoBitsFieldInfo
-instance AttrInfo VideoFormatInfoBitsFieldInfo where
-    type AttrAllowedOps VideoFormatInfoBitsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoBitsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoFormatInfoBitsFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoBitsFieldInfo = Word32
-    type AttrLabel VideoFormatInfoBitsFieldInfo = "bits"
-    type AttrOrigin VideoFormatInfoBitsFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoBits
-    attrSet _ = setVideoFormatInfoBits
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_bits :: AttrLabelProxy "bits"
-videoFormatInfo_bits = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@n_components@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #nComponents
-@
--}
-getVideoFormatInfoNComponents :: MonadIO m => VideoFormatInfo -> m Word32
-getVideoFormatInfoNComponents s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@n_components@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #nComponents 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoNComponents :: MonadIO m => VideoFormatInfo -> Word32 -> m ()
-setVideoFormatInfoNComponents s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoNComponentsFieldInfo
-instance AttrInfo VideoFormatInfoNComponentsFieldInfo where
-    type AttrAllowedOps VideoFormatInfoNComponentsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoNComponentsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoFormatInfoNComponentsFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoNComponentsFieldInfo = Word32
-    type AttrLabel VideoFormatInfoNComponentsFieldInfo = "n_components"
-    type AttrOrigin VideoFormatInfoNComponentsFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoNComponents
-    attrSet _ = setVideoFormatInfoNComponents
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_nComponents :: AttrLabelProxy "nComponents"
-videoFormatInfo_nComponents = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoFormatInfo:shift" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
--- XXX Skipped attribute for "VideoFormatInfo:depth" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
--- XXX Skipped attribute for "VideoFormatInfo:pixel_stride" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TInt)"
-{- |
-Get the value of the “@n_planes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #nPlanes
-@
--}
-getVideoFormatInfoNPlanes :: MonadIO m => VideoFormatInfo -> m Word32
-getVideoFormatInfoNPlanes s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 84) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@n_planes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #nPlanes 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoNPlanes :: MonadIO m => VideoFormatInfo -> Word32 -> m ()
-setVideoFormatInfoNPlanes s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 84) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoNPlanesFieldInfo
-instance AttrInfo VideoFormatInfoNPlanesFieldInfo where
-    type AttrAllowedOps VideoFormatInfoNPlanesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoNPlanesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoFormatInfoNPlanesFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoNPlanesFieldInfo = Word32
-    type AttrLabel VideoFormatInfoNPlanesFieldInfo = "n_planes"
-    type AttrOrigin VideoFormatInfoNPlanesFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoNPlanes
-    attrSet _ = setVideoFormatInfoNPlanes
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_nPlanes :: AttrLabelProxy "nPlanes"
-videoFormatInfo_nPlanes = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoFormatInfo:plane" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
--- XXX Skipped attribute for "VideoFormatInfo:poffset" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
--- XXX Skipped attribute for "VideoFormatInfo:w_sub" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
--- XXX Skipped attribute for "VideoFormatInfo:h_sub" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt)"
-{- |
-Get the value of the “@unpack_format@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #unpackFormat
-@
--}
-getVideoFormatInfoUnpackFormat :: MonadIO m => VideoFormatInfo -> m GstVideo.Enums.VideoFormat
-getVideoFormatInfoUnpackFormat s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 152) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@unpack_format@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #unpackFormat 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoUnpackFormat :: MonadIO m => VideoFormatInfo -> GstVideo.Enums.VideoFormat -> m ()
-setVideoFormatInfoUnpackFormat s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 152) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoUnpackFormatFieldInfo
-instance AttrInfo VideoFormatInfoUnpackFormatFieldInfo where
-    type AttrAllowedOps VideoFormatInfoUnpackFormatFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoUnpackFormatFieldInfo = (~) GstVideo.Enums.VideoFormat
-    type AttrBaseTypeConstraint VideoFormatInfoUnpackFormatFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoUnpackFormatFieldInfo = GstVideo.Enums.VideoFormat
-    type AttrLabel VideoFormatInfoUnpackFormatFieldInfo = "unpack_format"
-    type AttrOrigin VideoFormatInfoUnpackFormatFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoUnpackFormat
-    attrSet _ = setVideoFormatInfoUnpackFormat
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_unpackFormat :: AttrLabelProxy "unpackFormat"
-videoFormatInfo_unpackFormat = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@unpack_func@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #unpackFunc
-@
--}
-getVideoFormatInfoUnpackFunc :: MonadIO m => VideoFormatInfo -> m (Maybe GstVideo.Callbacks.VideoFormatUnpack)
-getVideoFormatInfoUnpackFunc s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 160) :: IO (FunPtr GstVideo.Callbacks.C_VideoFormatUnpack)
-    result <- SP.convertFunPtrIfNonNull val $ \val' -> do
-        let val'' = GstVideo.Callbacks.dynamic_VideoFormatUnpack val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@unpack_func@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #unpackFunc 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoUnpackFunc :: MonadIO m => VideoFormatInfo -> FunPtr GstVideo.Callbacks.C_VideoFormatUnpack -> m ()
-setVideoFormatInfoUnpackFunc s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 160) (val :: FunPtr GstVideo.Callbacks.C_VideoFormatUnpack)
-
-{- |
-Set the value of the “@unpack_func@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #unpackFunc
-@
--}
-clearVideoFormatInfoUnpackFunc :: MonadIO m => VideoFormatInfo -> m ()
-clearVideoFormatInfoUnpackFunc s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 160) (FP.nullFunPtr :: FunPtr GstVideo.Callbacks.C_VideoFormatUnpack)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoUnpackFuncFieldInfo
-instance AttrInfo VideoFormatInfoUnpackFuncFieldInfo where
-    type AttrAllowedOps VideoFormatInfoUnpackFuncFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoFormatInfoUnpackFuncFieldInfo = (~) (FunPtr GstVideo.Callbacks.C_VideoFormatUnpack)
-    type AttrBaseTypeConstraint VideoFormatInfoUnpackFuncFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoUnpackFuncFieldInfo = Maybe GstVideo.Callbacks.VideoFormatUnpack
-    type AttrLabel VideoFormatInfoUnpackFuncFieldInfo = "unpack_func"
-    type AttrOrigin VideoFormatInfoUnpackFuncFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoUnpackFunc
-    attrSet _ = setVideoFormatInfoUnpackFunc
-    attrConstruct = undefined
-    attrClear _ = clearVideoFormatInfoUnpackFunc
-
-videoFormatInfo_unpackFunc :: AttrLabelProxy "unpackFunc"
-videoFormatInfo_unpackFunc = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@pack_lines@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #packLines
-@
--}
-getVideoFormatInfoPackLines :: MonadIO m => VideoFormatInfo -> m Int32
-getVideoFormatInfoPackLines s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 168) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@pack_lines@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #packLines 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoPackLines :: MonadIO m => VideoFormatInfo -> Int32 -> m ()
-setVideoFormatInfoPackLines s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 168) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoPackLinesFieldInfo
-instance AttrInfo VideoFormatInfoPackLinesFieldInfo where
-    type AttrAllowedOps VideoFormatInfoPackLinesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoPackLinesFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoFormatInfoPackLinesFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoPackLinesFieldInfo = Int32
-    type AttrLabel VideoFormatInfoPackLinesFieldInfo = "pack_lines"
-    type AttrOrigin VideoFormatInfoPackLinesFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoPackLines
-    attrSet _ = setVideoFormatInfoPackLines
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_packLines :: AttrLabelProxy "packLines"
-videoFormatInfo_packLines = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@pack_func@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #packFunc
-@
--}
-getVideoFormatInfoPackFunc :: MonadIO m => VideoFormatInfo -> m (Maybe GstVideo.Callbacks.VideoFormatPack)
-getVideoFormatInfoPackFunc s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 176) :: IO (FunPtr GstVideo.Callbacks.C_VideoFormatPack)
-    result <- SP.convertFunPtrIfNonNull val $ \val' -> do
-        let val'' = GstVideo.Callbacks.dynamic_VideoFormatPack val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@pack_func@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #packFunc 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoPackFunc :: MonadIO m => VideoFormatInfo -> FunPtr GstVideo.Callbacks.C_VideoFormatPack -> m ()
-setVideoFormatInfoPackFunc s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 176) (val :: FunPtr GstVideo.Callbacks.C_VideoFormatPack)
-
-{- |
-Set the value of the “@pack_func@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #packFunc
-@
--}
-clearVideoFormatInfoPackFunc :: MonadIO m => VideoFormatInfo -> m ()
-clearVideoFormatInfoPackFunc s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 176) (FP.nullFunPtr :: FunPtr GstVideo.Callbacks.C_VideoFormatPack)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoPackFuncFieldInfo
-instance AttrInfo VideoFormatInfoPackFuncFieldInfo where
-    type AttrAllowedOps VideoFormatInfoPackFuncFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoFormatInfoPackFuncFieldInfo = (~) (FunPtr GstVideo.Callbacks.C_VideoFormatPack)
-    type AttrBaseTypeConstraint VideoFormatInfoPackFuncFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoPackFuncFieldInfo = Maybe GstVideo.Callbacks.VideoFormatPack
-    type AttrLabel VideoFormatInfoPackFuncFieldInfo = "pack_func"
-    type AttrOrigin VideoFormatInfoPackFuncFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoPackFunc
-    attrSet _ = setVideoFormatInfoPackFunc
-    attrConstruct = undefined
-    attrClear _ = clearVideoFormatInfoPackFunc
-
-videoFormatInfo_packFunc :: AttrLabelProxy "packFunc"
-videoFormatInfo_packFunc = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@tile_mode@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #tileMode
-@
--}
-getVideoFormatInfoTileMode :: MonadIO m => VideoFormatInfo -> m GstVideo.Enums.VideoTileMode
-getVideoFormatInfoTileMode s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 184) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@tile_mode@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #tileMode 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoTileMode :: MonadIO m => VideoFormatInfo -> GstVideo.Enums.VideoTileMode -> m ()
-setVideoFormatInfoTileMode s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 184) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoTileModeFieldInfo
-instance AttrInfo VideoFormatInfoTileModeFieldInfo where
-    type AttrAllowedOps VideoFormatInfoTileModeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoTileModeFieldInfo = (~) GstVideo.Enums.VideoTileMode
-    type AttrBaseTypeConstraint VideoFormatInfoTileModeFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoTileModeFieldInfo = GstVideo.Enums.VideoTileMode
-    type AttrLabel VideoFormatInfoTileModeFieldInfo = "tile_mode"
-    type AttrOrigin VideoFormatInfoTileModeFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoTileMode
-    attrSet _ = setVideoFormatInfoTileMode
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_tileMode :: AttrLabelProxy "tileMode"
-videoFormatInfo_tileMode = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@tile_ws@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #tileWs
-@
--}
-getVideoFormatInfoTileWs :: MonadIO m => VideoFormatInfo -> m Word32
-getVideoFormatInfoTileWs s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 188) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@tile_ws@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #tileWs 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoTileWs :: MonadIO m => VideoFormatInfo -> Word32 -> m ()
-setVideoFormatInfoTileWs s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 188) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoTileWsFieldInfo
-instance AttrInfo VideoFormatInfoTileWsFieldInfo where
-    type AttrAllowedOps VideoFormatInfoTileWsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoTileWsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoFormatInfoTileWsFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoTileWsFieldInfo = Word32
-    type AttrLabel VideoFormatInfoTileWsFieldInfo = "tile_ws"
-    type AttrOrigin VideoFormatInfoTileWsFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoTileWs
-    attrSet _ = setVideoFormatInfoTileWs
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_tileWs :: AttrLabelProxy "tileWs"
-videoFormatInfo_tileWs = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@tile_hs@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFormatInfo #tileHs
-@
--}
-getVideoFormatInfoTileHs :: MonadIO m => VideoFormatInfo -> m Word32
-getVideoFormatInfoTileHs s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 192) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@tile_hs@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFormatInfo [ #tileHs 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFormatInfoTileHs :: MonadIO m => VideoFormatInfo -> Word32 -> m ()
-setVideoFormatInfoTileHs s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 192) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoFormatInfoTileHsFieldInfo
-instance AttrInfo VideoFormatInfoTileHsFieldInfo where
-    type AttrAllowedOps VideoFormatInfoTileHsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFormatInfoTileHsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoFormatInfoTileHsFieldInfo = (~) VideoFormatInfo
-    type AttrGetType VideoFormatInfoTileHsFieldInfo = Word32
-    type AttrLabel VideoFormatInfoTileHsFieldInfo = "tile_hs"
-    type AttrOrigin VideoFormatInfoTileHsFieldInfo = VideoFormatInfo
-    attrGet _ = getVideoFormatInfoTileHs
-    attrSet _ = setVideoFormatInfoTileHs
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFormatInfo_tileHs :: AttrLabelProxy "tileHs"
-videoFormatInfo_tileHs = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoFormatInfo
-type instance O.AttributeList VideoFormatInfo = VideoFormatInfoAttributeList
-type VideoFormatInfoAttributeList = ('[ '("format", VideoFormatInfoFormatFieldInfo), '("name", VideoFormatInfoNameFieldInfo), '("description", VideoFormatInfoDescriptionFieldInfo), '("flags", VideoFormatInfoFlagsFieldInfo), '("bits", VideoFormatInfoBitsFieldInfo), '("nComponents", VideoFormatInfoNComponentsFieldInfo), '("nPlanes", VideoFormatInfoNPlanesFieldInfo), '("unpackFormat", VideoFormatInfoUnpackFormatFieldInfo), '("unpackFunc", VideoFormatInfoUnpackFuncFieldInfo), '("packLines", VideoFormatInfoPackLinesFieldInfo), '("packFunc", VideoFormatInfoPackFuncFieldInfo), '("tileMode", VideoFormatInfoTileModeFieldInfo), '("tileWs", VideoFormatInfoTileWsFieldInfo), '("tileHs", VideoFormatInfoTileHsFieldInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoFormatInfoMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoFormatInfoMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoFormatInfoMethod t VideoFormatInfo, O.MethodInfo info VideoFormatInfo p) => OL.IsLabel t (VideoFormatInfo -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoFormatInfo.hs-boot b/GI/GstVideo/Structs/VideoFormatInfo.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoFormatInfo.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoFormatInfo 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoFormatInfo = VideoFormatInfo (ManagedPtr VideoFormatInfo)
-instance WrappedPtr VideoFormatInfo where
diff --git a/GI/GstVideo/Structs/VideoFrame.hs b/GI/GstVideo/Structs/VideoFrame.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoFrame.hs
+++ /dev/null
@@ -1,708 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-A video frame obtained from 'GI.GstVideo.Structs.VideoFrame.videoFrameMap'
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoFrame
-    ( 
-
--- * Exported types
-    VideoFrame(..)                          ,
-    newZeroVideoFrame                       ,
-    noVideoFrame                            ,
-
-
- -- * Methods
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoFrameCopyMethodInfo                ,
-#endif
-    videoFrameCopy                          ,
-
-
--- ** copyPlane #method:copyPlane#
-
-#if ENABLE_OVERLOADING
-    VideoFrameCopyPlaneMethodInfo           ,
-#endif
-    videoFrameCopyPlane                     ,
-
-
--- ** map #method:map#
-
-#if ENABLE_OVERLOADING
-    VideoFrameMapMethodInfo                 ,
-#endif
-    videoFrameMap                           ,
-
-
--- ** mapId #method:mapId#
-
-#if ENABLE_OVERLOADING
-    VideoFrameMapIdMethodInfo               ,
-#endif
-    videoFrameMapId                         ,
-
-
--- ** unmap #method:unmap#
-
-#if ENABLE_OVERLOADING
-    VideoFrameUnmapMethodInfo               ,
-#endif
-    videoFrameUnmap                         ,
-
-
-
-
- -- * Properties
--- ** buffer #attr:buffer#
-{- | the mapped buffer
--}
-    clearVideoFrameBuffer                   ,
-    getVideoFrameBuffer                     ,
-    setVideoFrameBuffer                     ,
-#if ENABLE_OVERLOADING
-    videoFrame_buffer                       ,
-#endif
-
-
--- ** flags #attr:flags#
-{- | 'GI.GstVideo.Flags.VideoFrameFlags' for the frame
--}
-    getVideoFrameFlags                      ,
-    setVideoFrameFlags                      ,
-#if ENABLE_OVERLOADING
-    videoFrame_flags                        ,
-#endif
-
-
--- ** id #attr:id#
-{- | id of the mapped frame. the id can for example be used to
-  indentify the frame in case of multiview video.
--}
-    getVideoFrameId                         ,
-    setVideoFrameId                         ,
-#if ENABLE_OVERLOADING
-    videoFrame_id                           ,
-#endif
-
-
--- ** info #attr:info#
-{- | the 'GI.GstVideo.Structs.VideoInfo.VideoInfo'
--}
-    getVideoFrameInfo                       ,
-#if ENABLE_OVERLOADING
-    videoFrame_info                         ,
-#endif
-
-
--- ** meta #attr:meta#
-{- | pointer to metadata if any
--}
-    clearVideoFrameMeta                     ,
-    getVideoFrameMeta                       ,
-    setVideoFrameMeta                       ,
-#if ENABLE_OVERLOADING
-    videoFrame_meta                         ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Flags as Gst.Flags
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoInfo as GstVideo.VideoInfo
-
--- | Memory-managed wrapper type.
-newtype VideoFrame = VideoFrame (ManagedPtr VideoFrame)
-instance WrappedPtr VideoFrame where
-    wrappedPtrCalloc = callocBytes 632
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 632 >=> wrapPtr VideoFrame)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoFrame` struct initialized to zero.
-newZeroVideoFrame :: MonadIO m => m VideoFrame
-newZeroVideoFrame = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoFrame
-
-instance tag ~ 'AttrSet => Constructible VideoFrame tag where
-    new _ attrs = do
-        o <- newZeroVideoFrame
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoFrame`.
-noVideoFrame :: Maybe VideoFrame
-noVideoFrame = Nothing
-
-{- |
-Get the value of the “@info@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFrame #info
-@
--}
-getVideoFrameInfo :: MonadIO m => VideoFrame -> m GstVideo.VideoInfo.VideoInfo
-getVideoFrameInfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr GstVideo.VideoInfo.VideoInfo)
-    val' <- (newBoxed GstVideo.VideoInfo.VideoInfo) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoFrameInfoFieldInfo
-instance AttrInfo VideoFrameInfoFieldInfo where
-    type AttrAllowedOps VideoFrameInfoFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoFrameInfoFieldInfo = (~) (Ptr GstVideo.VideoInfo.VideoInfo)
-    type AttrBaseTypeConstraint VideoFrameInfoFieldInfo = (~) VideoFrame
-    type AttrGetType VideoFrameInfoFieldInfo = GstVideo.VideoInfo.VideoInfo
-    type AttrLabel VideoFrameInfoFieldInfo = "info"
-    type AttrOrigin VideoFrameInfoFieldInfo = VideoFrame
-    attrGet _ = getVideoFrameInfo
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFrame_info :: AttrLabelProxy "info"
-videoFrame_info = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFrame #flags
-@
--}
-getVideoFrameFlags :: MonadIO m => VideoFrame -> m [GstVideo.Flags.VideoFrameFlags]
-getVideoFrameFlags s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 120) :: IO CUInt
-    let val' = wordToGFlags val
-    return val'
-
-{- |
-Set the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFrame [ #flags 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFrameFlags :: MonadIO m => VideoFrame -> [GstVideo.Flags.VideoFrameFlags] -> m ()
-setVideoFrameFlags s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = gflagsToWord val
-    poke (ptr `plusPtr` 120) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoFrameFlagsFieldInfo
-instance AttrInfo VideoFrameFlagsFieldInfo where
-    type AttrAllowedOps VideoFrameFlagsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFrameFlagsFieldInfo = (~) [GstVideo.Flags.VideoFrameFlags]
-    type AttrBaseTypeConstraint VideoFrameFlagsFieldInfo = (~) VideoFrame
-    type AttrGetType VideoFrameFlagsFieldInfo = [GstVideo.Flags.VideoFrameFlags]
-    type AttrLabel VideoFrameFlagsFieldInfo = "flags"
-    type AttrOrigin VideoFrameFlagsFieldInfo = VideoFrame
-    attrGet _ = getVideoFrameFlags
-    attrSet _ = setVideoFrameFlags
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFrame_flags :: AttrLabelProxy "flags"
-videoFrame_flags = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFrame #buffer
-@
--}
-getVideoFrameBuffer :: MonadIO m => VideoFrame -> m (Maybe Gst.Buffer.Buffer)
-getVideoFrameBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 128) :: IO (Ptr Gst.Buffer.Buffer)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Buffer.Buffer) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFrame [ #buffer 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFrameBuffer :: MonadIO m => VideoFrame -> Ptr Gst.Buffer.Buffer -> m ()
-setVideoFrameBuffer s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 128) (val :: Ptr Gst.Buffer.Buffer)
-
-{- |
-Set the value of the “@buffer@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #buffer
-@
--}
-clearVideoFrameBuffer :: MonadIO m => VideoFrame -> m ()
-clearVideoFrameBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 128) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
-
-#if ENABLE_OVERLOADING
-data VideoFrameBufferFieldInfo
-instance AttrInfo VideoFrameBufferFieldInfo where
-    type AttrAllowedOps VideoFrameBufferFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoFrameBufferFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
-    type AttrBaseTypeConstraint VideoFrameBufferFieldInfo = (~) VideoFrame
-    type AttrGetType VideoFrameBufferFieldInfo = Maybe Gst.Buffer.Buffer
-    type AttrLabel VideoFrameBufferFieldInfo = "buffer"
-    type AttrOrigin VideoFrameBufferFieldInfo = VideoFrame
-    attrGet _ = getVideoFrameBuffer
-    attrSet _ = setVideoFrameBuffer
-    attrConstruct = undefined
-    attrClear _ = clearVideoFrameBuffer
-
-videoFrame_buffer :: AttrLabelProxy "buffer"
-videoFrame_buffer = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFrame #meta
-@
--}
-getVideoFrameMeta :: MonadIO m => VideoFrame -> m (Ptr ())
-getVideoFrameMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 136) :: IO (Ptr ())
-    return val
-
-{- |
-Set the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFrame [ #meta 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFrameMeta :: MonadIO m => VideoFrame -> Ptr () -> m ()
-setVideoFrameMeta s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 136) (val :: Ptr ())
-
-{- |
-Set the value of the “@meta@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #meta
-@
--}
-clearVideoFrameMeta :: MonadIO m => VideoFrame -> m ()
-clearVideoFrameMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 136) (FP.nullPtr :: Ptr ())
-
-#if ENABLE_OVERLOADING
-data VideoFrameMetaFieldInfo
-instance AttrInfo VideoFrameMetaFieldInfo where
-    type AttrAllowedOps VideoFrameMetaFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoFrameMetaFieldInfo = (~) (Ptr ())
-    type AttrBaseTypeConstraint VideoFrameMetaFieldInfo = (~) VideoFrame
-    type AttrGetType VideoFrameMetaFieldInfo = Ptr ()
-    type AttrLabel VideoFrameMetaFieldInfo = "meta"
-    type AttrOrigin VideoFrameMetaFieldInfo = VideoFrame
-    attrGet _ = getVideoFrameMeta
-    attrSet _ = setVideoFrameMeta
-    attrConstruct = undefined
-    attrClear _ = clearVideoFrameMeta
-
-videoFrame_meta :: AttrLabelProxy "meta"
-videoFrame_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoFrame #id
-@
--}
-getVideoFrameId :: MonadIO m => VideoFrame -> m Int32
-getVideoFrameId s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 144) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoFrame [ #id 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoFrameId :: MonadIO m => VideoFrame -> Int32 -> m ()
-setVideoFrameId s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 144) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoFrameIdFieldInfo
-instance AttrInfo VideoFrameIdFieldInfo where
-    type AttrAllowedOps VideoFrameIdFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoFrameIdFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoFrameIdFieldInfo = (~) VideoFrame
-    type AttrGetType VideoFrameIdFieldInfo = Int32
-    type AttrLabel VideoFrameIdFieldInfo = "id"
-    type AttrOrigin VideoFrameIdFieldInfo = VideoFrame
-    attrGet _ = getVideoFrameId
-    attrSet _ = setVideoFrameId
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoFrame_id :: AttrLabelProxy "id"
-videoFrame_id = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoFrame:data" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TPtr)"
--- XXX Skipped attribute for "VideoFrame:map" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TInterface (Name {namespace = \"Gst\", name = \"MapInfo\"}))"
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoFrame
-type instance O.AttributeList VideoFrame = VideoFrameAttributeList
-type VideoFrameAttributeList = ('[ '("info", VideoFrameInfoFieldInfo), '("flags", VideoFrameFlagsFieldInfo), '("buffer", VideoFrameBufferFieldInfo), '("meta", VideoFrameMetaFieldInfo), '("id", VideoFrameIdFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoFrame::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dest", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_frame_copy" gst_video_frame_copy :: 
-    Ptr VideoFrame ->                       -- dest : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Ptr VideoFrame ->                       -- src : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    IO CInt
-
-{- |
-Copy the contents from /@src@/ to /@dest@/.
--}
-videoFrameCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoFrame
-    {- ^ /@dest@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> VideoFrame
-    {- ^ /@src@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> m Bool
-    {- ^ __Returns:__ TRUE if the contents could be copied. -}
-videoFrameCopy dest src = liftIO $ do
-    dest' <- unsafeManagedPtrGetPtr dest
-    src' <- unsafeManagedPtrGetPtr src
-    result <- gst_video_frame_copy dest' src'
-    let result' = (/= 0) result
-    touchManagedPtr dest
-    touchManagedPtr src
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoFrameCopyMethodInfo
-instance (signature ~ (VideoFrame -> m Bool), MonadIO m) => O.MethodInfo VideoFrameCopyMethodInfo VideoFrame signature where
-    overloadedMethod _ = videoFrameCopy
-
-#endif
-
--- method VideoFrame::copy_plane
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "dest", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_frame_copy_plane" gst_video_frame_copy_plane :: 
-    Ptr VideoFrame ->                       -- dest : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Ptr VideoFrame ->                       -- src : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Word32 ->                               -- plane : TBasicType TUInt
-    IO CInt
-
-{- |
-Copy the plane with index /@plane@/ from /@src@/ to /@dest@/.
--}
-videoFrameCopyPlane ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoFrame
-    {- ^ /@dest@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> VideoFrame
-    {- ^ /@src@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> Word32
-    {- ^ /@plane@/: a plane -}
-    -> m Bool
-    {- ^ __Returns:__ TRUE if the contents could be copied. -}
-videoFrameCopyPlane dest src plane = liftIO $ do
-    dest' <- unsafeManagedPtrGetPtr dest
-    src' <- unsafeManagedPtrGetPtr src
-    result <- gst_video_frame_copy_plane dest' src' plane
-    let result' = (/= 0) result
-    touchManagedPtr dest
-    touchManagedPtr src
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoFrameCopyPlaneMethodInfo
-instance (signature ~ (VideoFrame -> Word32 -> m Bool), MonadIO m) => O.MethodInfo VideoFrameCopyPlaneMethodInfo VideoFrame signature where
-    overloadedMethod _ = videoFrameCopyPlane
-
-#endif
-
--- method VideoFrame::map
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "pointer to #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the buffer to map", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "Gst", name = "MapFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstMapFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_frame_map" gst_video_frame_map :: 
-    Ptr VideoFrame ->                       -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Ptr GstVideo.VideoInfo.VideoInfo ->     -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "Gst", name = "MapFlags"})
-    IO CInt
-
-{- |
-Use /@info@/ and /@buffer@/ to fill in the values of /@frame@/. /@frame@/ is usually
-allocated on the stack, and you will pass the address to the 'GI.GstVideo.Structs.VideoFrame.VideoFrame'
-structure allocated on the stack; 'GI.GstVideo.Structs.VideoFrame.videoFrameMap' will then fill in
-the structures with the various video-specific information you need to access
-the pixels of the video buffer. You can then use accessor macros such as
-@/GST_VIDEO_FRAME_COMP_DATA()/@, @/GST_VIDEO_FRAME_PLANE_DATA()/@,
-@/GST_VIDEO_FRAME_COMP_STRIDE()/@, @/GST_VIDEO_FRAME_PLANE_STRIDE()/@ etc.
-to get to the pixels.
-
-
-=== /C code/
->
->  GstVideoFrame vframe;
->  ...
->  // set RGB pixels to black one at a time
->  if (gst_video_frame_map (&amp;vframe, video_info, video_buffer, GST_MAP_WRITE)) {
->    guint8 *pixels = GST_VIDEO_FRAME_PLANE_DATA (vframe, 0);
->    guint stride = GST_VIDEO_FRAME_PLANE_STRIDE (vframe, 0);
->    guint pixel_stride = GST_VIDEO_FRAME_COMP_PSTRIDE (vframe, 0);
->
->    for (h = 0; h < height; ++h) {
->      for (w = 0; w < width; ++w) {
->        guint8 *pixel = pixels + h * stride + w * pixel_stride;
->
->        memset (pixel, 0, pixel_stride);
->      }
->    }
->
->    gst_video_frame_unmap (&amp;vframe);
->  }
->  ...
-
-
-All video planes of /@buffer@/ will be mapped and the pointers will be set in
-/@frame@/->data.
-
-The purpose of this function is to make it easy for you to get to the video
-pixels in a generic way, without you having to worry too much about details
-such as whether the video data is allocated in one contiguous memory chunk
-or multiple memory chunks (e.g. one for each plane); or if custom strides
-and custom plane offsets are used or not (as signalled by GstVideoMeta on
-each buffer). This function will just fill the 'GI.GstVideo.Structs.VideoFrame.VideoFrame' structure
-with the right values and if you use the accessor macros everything will
-just work and you can access the data easily. It also maps the underlying
-memory chunks for you.
--}
-videoFrameMap ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoFrame
-    {- ^ /@frame@/: pointer to 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> GstVideo.VideoInfo.VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> Gst.Buffer.Buffer
-    {- ^ /@buffer@/: the buffer to map -}
-    -> [Gst.Flags.MapFlags]
-    {- ^ /@flags@/: 'GI.Gst.Flags.MapFlags' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' on success. -}
-videoFrameMap frame info buffer flags = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    info' <- unsafeManagedPtrGetPtr info
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    let flags' = gflagsToWord flags
-    result <- gst_video_frame_map frame' info' buffer' flags'
-    let result' = (/= 0) result
-    touchManagedPtr frame
-    touchManagedPtr info
-    touchManagedPtr buffer
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoFrameMapMethodInfo
-instance (signature ~ (GstVideo.VideoInfo.VideoInfo -> Gst.Buffer.Buffer -> [Gst.Flags.MapFlags] -> m Bool), MonadIO m) => O.MethodInfo VideoFrameMapMethodInfo VideoFrame signature where
-    overloadedMethod _ = videoFrameMap
-
-#endif
-
--- method VideoFrame::map_id
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "pointer to #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the buffer to map", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "id", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the frame id to map", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "Gst", name = "MapFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstMapFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_frame_map_id" gst_video_frame_map_id :: 
-    Ptr VideoFrame ->                       -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    Ptr GstVideo.VideoInfo.VideoInfo ->     -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr Gst.Buffer.Buffer ->                -- buffer : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Int32 ->                                -- id : TBasicType TInt
-    CUInt ->                                -- flags : TInterface (Name {namespace = "Gst", name = "MapFlags"})
-    IO CInt
-
-{- |
-Use /@info@/ and /@buffer@/ to fill in the values of /@frame@/ with the video frame
-information of frame /@id@/.
-
-When /@id@/ is -1, the default frame is mapped. When /@id@/ != -1, this function
-will return 'False' when there is no GstVideoMeta with that id.
-
-All video planes of /@buffer@/ will be mapped and the pointers will be set in
-/@frame@/->data.
--}
-videoFrameMapId ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoFrame
-    {- ^ /@frame@/: pointer to 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> GstVideo.VideoInfo.VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> Gst.Buffer.Buffer
-    {- ^ /@buffer@/: the buffer to map -}
-    -> Int32
-    {- ^ /@id@/: the frame id to map -}
-    -> [Gst.Flags.MapFlags]
-    {- ^ /@flags@/: 'GI.Gst.Flags.MapFlags' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' on success. -}
-videoFrameMapId frame info buffer id flags = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    info' <- unsafeManagedPtrGetPtr info
-    buffer' <- unsafeManagedPtrGetPtr buffer
-    let flags' = gflagsToWord flags
-    result <- gst_video_frame_map_id frame' info' buffer' id flags'
-    let result' = (/= 0) result
-    touchManagedPtr frame
-    touchManagedPtr info
-    touchManagedPtr buffer
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoFrameMapIdMethodInfo
-instance (signature ~ (GstVideo.VideoInfo.VideoInfo -> Gst.Buffer.Buffer -> Int32 -> [Gst.Flags.MapFlags] -> m Bool), MonadIO m) => O.MethodInfo VideoFrameMapIdMethodInfo VideoFrame signature where
-    overloadedMethod _ = videoFrameMapId
-
-#endif
-
--- method VideoFrame::unmap
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "frame", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_frame_unmap" gst_video_frame_unmap :: 
-    Ptr VideoFrame ->                       -- frame : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    IO ()
-
-{- |
-Unmap the memory previously mapped with gst_video_frame_map.
--}
-videoFrameUnmap ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoFrame
-    {- ^ /@frame@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' -}
-    -> m ()
-videoFrameUnmap frame = liftIO $ do
-    frame' <- unsafeManagedPtrGetPtr frame
-    gst_video_frame_unmap frame'
-    touchManagedPtr frame
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoFrameUnmapMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoFrameUnmapMethodInfo VideoFrame signature where
-    overloadedMethod _ = videoFrameUnmap
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoFrameMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoFrameMethod "copy" o = VideoFrameCopyMethodInfo
-    ResolveVideoFrameMethod "copyPlane" o = VideoFrameCopyPlaneMethodInfo
-    ResolveVideoFrameMethod "map" o = VideoFrameMapMethodInfo
-    ResolveVideoFrameMethod "mapId" o = VideoFrameMapIdMethodInfo
-    ResolveVideoFrameMethod "unmap" o = VideoFrameUnmapMethodInfo
-    ResolveVideoFrameMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoFrameMethod t VideoFrame, O.MethodInfo info VideoFrame p) => OL.IsLabel t (VideoFrame -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoFrame.hs-boot b/GI/GstVideo/Structs/VideoFrame.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoFrame.hs-boot
+++ /dev/null
@@ -1,41 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoFrame 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoFrame = VideoFrame (ManagedPtr VideoFrame)
-instance WrappedPtr VideoFrame where
-#if ENABLE_OVERLOADING
-data VideoFrameCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoFrameCopyPlaneMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoFrameMapMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoFrameMapIdMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoFrameUnmapMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoGLTextureUploadMeta.hs b/GI/GstVideo/Structs/VideoGLTextureUploadMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoGLTextureUploadMeta.hs
+++ /dev/null
@@ -1,334 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata for uploading a buffer to an OpenGL texture
-ID. The caller of 'GI.GstVideo.Structs.VideoGLTextureUploadMeta.videoGLTextureUploadMetaUpload' must
-have OpenGL set up and call this from a thread where it is valid
-to upload something to an OpenGL texture.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoGLTextureUploadMeta
-    ( 
-
--- * Exported types
-    VideoGLTextureUploadMeta(..)            ,
-    newZeroVideoGLTextureUploadMeta         ,
-    noVideoGLTextureUploadMeta              ,
-
-
- -- * Methods
--- ** getInfo #method:getInfo#
-
-    videoGLTextureUploadMetaGetInfo         ,
-
-
--- ** upload #method:upload#
-
-#if ENABLE_OVERLOADING
-    VideoGLTextureUploadMetaUploadMethodInfo,
-#endif
-    videoGLTextureUploadMetaUpload          ,
-
-
-
-
- -- * Properties
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoGLTextureUploadMetaMeta         ,
-#if ENABLE_OVERLOADING
-    videoGLTextureUploadMeta_meta           ,
-#endif
-
-
--- ** nTextures #attr:nTextures#
-{- | Number of textures that are generated
--}
-    getVideoGLTextureUploadMetaNTextures    ,
-    setVideoGLTextureUploadMetaNTextures    ,
-#if ENABLE_OVERLOADING
-    videoGLTextureUploadMeta_nTextures      ,
-#endif
-
-
--- ** textureOrientation #attr:textureOrientation#
-{- | Orientation of the textures
--}
-    getVideoGLTextureUploadMetaTextureOrientation,
-    setVideoGLTextureUploadMetaTextureOrientation,
-#if ENABLE_OVERLOADING
-    videoGLTextureUploadMeta_textureOrientation,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- | Memory-managed wrapper type.
-newtype VideoGLTextureUploadMeta = VideoGLTextureUploadMeta (ManagedPtr VideoGLTextureUploadMeta)
-instance WrappedPtr VideoGLTextureUploadMeta where
-    wrappedPtrCalloc = callocBytes 80
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 80 >=> wrapPtr VideoGLTextureUploadMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoGLTextureUploadMeta` struct initialized to zero.
-newZeroVideoGLTextureUploadMeta :: MonadIO m => m VideoGLTextureUploadMeta
-newZeroVideoGLTextureUploadMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoGLTextureUploadMeta
-
-instance tag ~ 'AttrSet => Constructible VideoGLTextureUploadMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoGLTextureUploadMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoGLTextureUploadMeta`.
-noVideoGLTextureUploadMeta :: Maybe VideoGLTextureUploadMeta
-noVideoGLTextureUploadMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoGLTextureUploadMeta #meta
-@
--}
-getVideoGLTextureUploadMetaMeta :: MonadIO m => VideoGLTextureUploadMeta -> m Gst.Meta.Meta
-getVideoGLTextureUploadMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoGLTextureUploadMetaMetaFieldInfo
-instance AttrInfo VideoGLTextureUploadMetaMetaFieldInfo where
-    type AttrAllowedOps VideoGLTextureUploadMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoGLTextureUploadMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoGLTextureUploadMetaMetaFieldInfo = (~) VideoGLTextureUploadMeta
-    type AttrGetType VideoGLTextureUploadMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoGLTextureUploadMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoGLTextureUploadMetaMetaFieldInfo = VideoGLTextureUploadMeta
-    attrGet _ = getVideoGLTextureUploadMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoGLTextureUploadMeta_meta :: AttrLabelProxy "meta"
-videoGLTextureUploadMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@texture_orientation@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoGLTextureUploadMeta #textureOrientation
-@
--}
-getVideoGLTextureUploadMetaTextureOrientation :: MonadIO m => VideoGLTextureUploadMeta -> m GstVideo.Enums.VideoGLTextureOrientation
-getVideoGLTextureUploadMetaTextureOrientation s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@texture_orientation@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoGLTextureUploadMeta [ #textureOrientation 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoGLTextureUploadMetaTextureOrientation :: MonadIO m => VideoGLTextureUploadMeta -> GstVideo.Enums.VideoGLTextureOrientation -> m ()
-setVideoGLTextureUploadMetaTextureOrientation s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 16) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoGLTextureUploadMetaTextureOrientationFieldInfo
-instance AttrInfo VideoGLTextureUploadMetaTextureOrientationFieldInfo where
-    type AttrAllowedOps VideoGLTextureUploadMetaTextureOrientationFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoGLTextureUploadMetaTextureOrientationFieldInfo = (~) GstVideo.Enums.VideoGLTextureOrientation
-    type AttrBaseTypeConstraint VideoGLTextureUploadMetaTextureOrientationFieldInfo = (~) VideoGLTextureUploadMeta
-    type AttrGetType VideoGLTextureUploadMetaTextureOrientationFieldInfo = GstVideo.Enums.VideoGLTextureOrientation
-    type AttrLabel VideoGLTextureUploadMetaTextureOrientationFieldInfo = "texture_orientation"
-    type AttrOrigin VideoGLTextureUploadMetaTextureOrientationFieldInfo = VideoGLTextureUploadMeta
-    attrGet _ = getVideoGLTextureUploadMetaTextureOrientation
-    attrSet _ = setVideoGLTextureUploadMetaTextureOrientation
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoGLTextureUploadMeta_textureOrientation :: AttrLabelProxy "textureOrientation"
-videoGLTextureUploadMeta_textureOrientation = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@n_textures@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoGLTextureUploadMeta #nTextures
-@
--}
-getVideoGLTextureUploadMetaNTextures :: MonadIO m => VideoGLTextureUploadMeta -> m Word32
-getVideoGLTextureUploadMetaNTextures s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 20) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@n_textures@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoGLTextureUploadMeta [ #nTextures 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoGLTextureUploadMetaNTextures :: MonadIO m => VideoGLTextureUploadMeta -> Word32 -> m ()
-setVideoGLTextureUploadMetaNTextures s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 20) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoGLTextureUploadMetaNTexturesFieldInfo
-instance AttrInfo VideoGLTextureUploadMetaNTexturesFieldInfo where
-    type AttrAllowedOps VideoGLTextureUploadMetaNTexturesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoGLTextureUploadMetaNTexturesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoGLTextureUploadMetaNTexturesFieldInfo = (~) VideoGLTextureUploadMeta
-    type AttrGetType VideoGLTextureUploadMetaNTexturesFieldInfo = Word32
-    type AttrLabel VideoGLTextureUploadMetaNTexturesFieldInfo = "n_textures"
-    type AttrOrigin VideoGLTextureUploadMetaNTexturesFieldInfo = VideoGLTextureUploadMeta
-    attrGet _ = getVideoGLTextureUploadMetaNTextures
-    attrSet _ = setVideoGLTextureUploadMetaNTextures
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoGLTextureUploadMeta_nTextures :: AttrLabelProxy "nTextures"
-videoGLTextureUploadMeta_nTextures = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoGLTextureUploadMeta:texture_type" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TInterface (Name {namespace = \"GstVideo\", name = \"VideoGLTextureType\"}))"
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoGLTextureUploadMeta
-type instance O.AttributeList VideoGLTextureUploadMeta = VideoGLTextureUploadMetaAttributeList
-type VideoGLTextureUploadMetaAttributeList = ('[ '("meta", VideoGLTextureUploadMetaMetaFieldInfo), '("textureOrientation", VideoGLTextureUploadMetaTextureOrientationFieldInfo), '("nTextures", VideoGLTextureUploadMetaNTexturesFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoGLTextureUploadMeta::upload
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUploadMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoGLTextureUploadMeta", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "texture_id", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the texture IDs to upload to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_gl_texture_upload_meta_upload" gst_video_gl_texture_upload_meta_upload :: 
-    Ptr VideoGLTextureUploadMeta ->         -- meta : TInterface (Name {namespace = "GstVideo", name = "VideoGLTextureUploadMeta"})
-    Word32 ->                               -- texture_id : TBasicType TUInt
-    IO CInt
-
-{- |
-Uploads the buffer which owns the meta to a specific texture ID.
--}
-videoGLTextureUploadMetaUpload ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoGLTextureUploadMeta
-    {- ^ /@meta@/: a 'GI.GstVideo.Structs.VideoGLTextureUploadMeta.VideoGLTextureUploadMeta' -}
-    -> Word32
-    {- ^ /@textureId@/: the texture IDs to upload to -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if uploading succeeded, 'False' otherwise. -}
-videoGLTextureUploadMetaUpload meta textureId = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    result <- gst_video_gl_texture_upload_meta_upload meta' textureId
-    let result' = (/= 0) result
-    touchManagedPtr meta
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoGLTextureUploadMetaUploadMethodInfo
-instance (signature ~ (Word32 -> m Bool), MonadIO m) => O.MethodInfo VideoGLTextureUploadMetaUploadMethodInfo VideoGLTextureUploadMeta signature where
-    overloadedMethod _ = videoGLTextureUploadMetaUpload
-
-#endif
-
--- method VideoGLTextureUploadMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_gl_texture_upload_meta_get_info" gst_video_gl_texture_upload_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoGLTextureUploadMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoGLTextureUploadMetaGetInfo  = liftIO $ do
-    result <- gst_video_gl_texture_upload_meta_get_info
-    checkUnexpectedReturnNULL "videoGLTextureUploadMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoGLTextureUploadMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoGLTextureUploadMetaMethod "upload" o = VideoGLTextureUploadMetaUploadMethodInfo
-    ResolveVideoGLTextureUploadMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoGLTextureUploadMetaMethod t VideoGLTextureUploadMeta, O.MethodInfo info VideoGLTextureUploadMeta p) => OL.IsLabel t (VideoGLTextureUploadMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoGLTextureUploadMeta.hs-boot b/GI/GstVideo/Structs/VideoGLTextureUploadMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoGLTextureUploadMeta.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoGLTextureUploadMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoGLTextureUploadMeta = VideoGLTextureUploadMeta (ManagedPtr VideoGLTextureUploadMeta)
-instance WrappedPtr VideoGLTextureUploadMeta where
-#if ENABLE_OVERLOADING
-data VideoGLTextureUploadMetaUploadMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoInfo.hs b/GI/GstVideo/Structs/VideoInfo.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoInfo.hs
+++ /dev/null
@@ -1,1383 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Information describing image properties. This information can be filled
-in from GstCaps with 'GI.GstVideo.Structs.VideoInfo.videoInfoFromCaps'. The information is also used
-to store the specific video info when mapping a video frame with
-'GI.GstVideo.Structs.VideoFrame.videoFrameMap'.
-
-Use the provided macros to access the info in this structure.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoInfo
-    ( 
-
--- * Exported types
-    VideoInfo(..)                           ,
-    newZeroVideoInfo                        ,
-    noVideoInfo                             ,
-
-
- -- * Methods
--- ** align #method:align#
-
-#if ENABLE_OVERLOADING
-    VideoInfoAlignMethodInfo                ,
-#endif
-    videoInfoAlign                          ,
-
-
--- ** convert #method:convert#
-
-#if ENABLE_OVERLOADING
-    VideoInfoConvertMethodInfo              ,
-#endif
-    videoInfoConvert                        ,
-
-
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoInfoCopyMethodInfo                 ,
-#endif
-    videoInfoCopy                           ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoInfoFreeMethodInfo                 ,
-#endif
-    videoInfoFree                           ,
-
-
--- ** fromCaps #method:fromCaps#
-
-#if ENABLE_OVERLOADING
-    VideoInfoFromCapsMethodInfo             ,
-#endif
-    videoInfoFromCaps                       ,
-
-
--- ** init #method:init#
-
-#if ENABLE_OVERLOADING
-    VideoInfoInitMethodInfo                 ,
-#endif
-    videoInfoInit                           ,
-
-
--- ** isEqual #method:isEqual#
-
-#if ENABLE_OVERLOADING
-    VideoInfoIsEqualMethodInfo              ,
-#endif
-    videoInfoIsEqual                        ,
-
-
--- ** new #method:new#
-
-    videoInfoNew                            ,
-
-
--- ** setFormat #method:setFormat#
-
-#if ENABLE_OVERLOADING
-    VideoInfoSetFormatMethodInfo            ,
-#endif
-    videoInfoSetFormat                      ,
-
-
--- ** setInterlacedFormat #method:setInterlacedFormat#
-
-#if ENABLE_OVERLOADING
-    VideoInfoSetInterlacedFormatMethodInfo  ,
-#endif
-    videoInfoSetInterlacedFormat            ,
-
-
--- ** toCaps #method:toCaps#
-
-#if ENABLE_OVERLOADING
-    VideoInfoToCapsMethodInfo               ,
-#endif
-    videoInfoToCaps                         ,
-
-
-
-
- -- * Properties
--- ** chromaSite #attr:chromaSite#
-{- | a 'GI.GstVideo.Flags.VideoChromaSite'.
--}
-    getVideoInfoChromaSite                  ,
-    setVideoInfoChromaSite                  ,
-#if ENABLE_OVERLOADING
-    videoInfo_chromaSite                    ,
-#endif
-
-
--- ** colorimetry #attr:colorimetry#
-{- | the colorimetry info
--}
-    getVideoInfoColorimetry                 ,
-#if ENABLE_OVERLOADING
-    videoInfo_colorimetry                   ,
-#endif
-
-
--- ** finfo #attr:finfo#
-{- | the format info of the video
--}
-    clearVideoInfoFinfo                     ,
-    getVideoInfoFinfo                       ,
-    setVideoInfoFinfo                       ,
-#if ENABLE_OVERLOADING
-    videoInfo_finfo                         ,
-#endif
-
-
--- ** flags #attr:flags#
-{- | additional video flags
--}
-    getVideoInfoFlags                       ,
-    setVideoInfoFlags                       ,
-#if ENABLE_OVERLOADING
-    videoInfo_flags                         ,
-#endif
-
-
--- ** fpsD #attr:fpsD#
-{- | the framerate demnominator
--}
-    getVideoInfoFpsD                        ,
-    setVideoInfoFpsD                        ,
-#if ENABLE_OVERLOADING
-    videoInfo_fpsD                          ,
-#endif
-
-
--- ** fpsN #attr:fpsN#
-{- | the framerate numerator
--}
-    getVideoInfoFpsN                        ,
-    setVideoInfoFpsN                        ,
-#if ENABLE_OVERLOADING
-    videoInfo_fpsN                          ,
-#endif
-
-
--- ** height #attr:height#
-{- | the height of the video
--}
-    getVideoInfoHeight                      ,
-    setVideoInfoHeight                      ,
-#if ENABLE_OVERLOADING
-    videoInfo_height                        ,
-#endif
-
-
--- ** interlaceMode #attr:interlaceMode#
-{- | the interlace mode
--}
-    getVideoInfoInterlaceMode               ,
-    setVideoInfoInterlaceMode               ,
-#if ENABLE_OVERLOADING
-    videoInfo_interlaceMode                 ,
-#endif
-
-
--- ** parD #attr:parD#
-{- | the pixel-aspect-ratio demnominator
--}
-    getVideoInfoParD                        ,
-    setVideoInfoParD                        ,
-#if ENABLE_OVERLOADING
-    videoInfo_parD                          ,
-#endif
-
-
--- ** parN #attr:parN#
-{- | the pixel-aspect-ratio numerator
--}
-    getVideoInfoParN                        ,
-    setVideoInfoParN                        ,
-#if ENABLE_OVERLOADING
-    videoInfo_parN                          ,
-#endif
-
-
--- ** size #attr:size#
-{- | the default size of one frame
--}
-    getVideoInfoSize                        ,
-    setVideoInfoSize                        ,
-#if ENABLE_OVERLOADING
-    videoInfo_size                          ,
-#endif
-
-
--- ** views #attr:views#
-{- | the number of views for multiview video
--}
-    getVideoInfoViews                       ,
-    setVideoInfoViews                       ,
-#if ENABLE_OVERLOADING
-    videoInfo_views                         ,
-#endif
-
-
--- ** width #attr:width#
-{- | the width of the video
--}
-    getVideoInfoWidth                       ,
-    setVideoInfoWidth                       ,
-#if ENABLE_OVERLOADING
-    videoInfo_width                         ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Enums as Gst.Enums
-import qualified GI.Gst.Structs.Caps as Gst.Caps
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoAlignment as GstVideo.VideoAlignment
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoColorimetry as GstVideo.VideoColorimetry
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoFormatInfo as GstVideo.VideoFormatInfo
-
--- | Memory-managed wrapper type.
-newtype VideoInfo = VideoInfo (ManagedPtr VideoInfo)
-foreign import ccall "gst_video_info_get_type" c_gst_video_info_get_type :: 
-    IO GType
-
-instance BoxedObject VideoInfo where
-    boxedType _ = c_gst_video_info_get_type
-
--- | Construct a `VideoInfo` struct initialized to zero.
-newZeroVideoInfo :: MonadIO m => m VideoInfo
-newZeroVideoInfo = liftIO $ callocBoxedBytes 120 >>= wrapBoxed VideoInfo
-
-instance tag ~ 'AttrSet => Constructible VideoInfo tag where
-    new _ attrs = do
-        o <- newZeroVideoInfo
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoInfo`.
-noVideoInfo :: Maybe VideoInfo
-noVideoInfo = Nothing
-
-{- |
-Get the value of the “@finfo@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #finfo
-@
--}
-getVideoInfoFinfo :: MonadIO m => VideoInfo -> m (Maybe GstVideo.VideoFormatInfo.VideoFormatInfo)
-getVideoInfoFinfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO (Ptr GstVideo.VideoFormatInfo.VideoFormatInfo)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newPtr GstVideo.VideoFormatInfo.VideoFormatInfo) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@finfo@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #finfo 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoFinfo :: MonadIO m => VideoInfo -> Ptr GstVideo.VideoFormatInfo.VideoFormatInfo -> m ()
-setVideoInfoFinfo s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Ptr GstVideo.VideoFormatInfo.VideoFormatInfo)
-
-{- |
-Set the value of the “@finfo@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #finfo
-@
--}
-clearVideoInfoFinfo :: MonadIO m => VideoInfo -> m ()
-clearVideoInfoFinfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (FP.nullPtr :: Ptr GstVideo.VideoFormatInfo.VideoFormatInfo)
-
-#if ENABLE_OVERLOADING
-data VideoInfoFinfoFieldInfo
-instance AttrInfo VideoInfoFinfoFieldInfo where
-    type AttrAllowedOps VideoInfoFinfoFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoInfoFinfoFieldInfo = (~) (Ptr GstVideo.VideoFormatInfo.VideoFormatInfo)
-    type AttrBaseTypeConstraint VideoInfoFinfoFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoFinfoFieldInfo = Maybe GstVideo.VideoFormatInfo.VideoFormatInfo
-    type AttrLabel VideoInfoFinfoFieldInfo = "finfo"
-    type AttrOrigin VideoInfoFinfoFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoFinfo
-    attrSet _ = setVideoInfoFinfo
-    attrConstruct = undefined
-    attrClear _ = clearVideoInfoFinfo
-
-videoInfo_finfo :: AttrLabelProxy "finfo"
-videoInfo_finfo = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@interlace_mode@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #interlaceMode
-@
--}
-getVideoInfoInterlaceMode :: MonadIO m => VideoInfo -> m GstVideo.Enums.VideoInterlaceMode
-getVideoInfoInterlaceMode s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@interlace_mode@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #interlaceMode 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoInterlaceMode :: MonadIO m => VideoInfo -> GstVideo.Enums.VideoInterlaceMode -> m ()
-setVideoInfoInterlaceMode s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 8) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoInfoInterlaceModeFieldInfo
-instance AttrInfo VideoInfoInterlaceModeFieldInfo where
-    type AttrAllowedOps VideoInfoInterlaceModeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoInterlaceModeFieldInfo = (~) GstVideo.Enums.VideoInterlaceMode
-    type AttrBaseTypeConstraint VideoInfoInterlaceModeFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoInterlaceModeFieldInfo = GstVideo.Enums.VideoInterlaceMode
-    type AttrLabel VideoInfoInterlaceModeFieldInfo = "interlace_mode"
-    type AttrOrigin VideoInfoInterlaceModeFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoInterlaceMode
-    attrSet _ = setVideoInfoInterlaceMode
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_interlaceMode :: AttrLabelProxy "interlaceMode"
-videoInfo_interlaceMode = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #flags
-@
--}
-getVideoInfoFlags :: MonadIO m => VideoInfo -> m [GstVideo.Flags.VideoFlags]
-getVideoInfoFlags s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 12) :: IO CUInt
-    let val' = wordToGFlags val
-    return val'
-
-{- |
-Set the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #flags 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoFlags :: MonadIO m => VideoInfo -> [GstVideo.Flags.VideoFlags] -> m ()
-setVideoInfoFlags s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = gflagsToWord val
-    poke (ptr `plusPtr` 12) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoInfoFlagsFieldInfo
-instance AttrInfo VideoInfoFlagsFieldInfo where
-    type AttrAllowedOps VideoInfoFlagsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoFlagsFieldInfo = (~) [GstVideo.Flags.VideoFlags]
-    type AttrBaseTypeConstraint VideoInfoFlagsFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoFlagsFieldInfo = [GstVideo.Flags.VideoFlags]
-    type AttrLabel VideoInfoFlagsFieldInfo = "flags"
-    type AttrOrigin VideoInfoFlagsFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoFlags
-    attrSet _ = setVideoInfoFlags
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_flags :: AttrLabelProxy "flags"
-videoInfo_flags = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@width@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #width
-@
--}
-getVideoInfoWidth :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoWidth s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@width@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #width 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoWidth :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoWidthFieldInfo
-instance AttrInfo VideoInfoWidthFieldInfo where
-    type AttrAllowedOps VideoInfoWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoWidthFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoWidthFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoWidthFieldInfo = Int32
-    type AttrLabel VideoInfoWidthFieldInfo = "width"
-    type AttrOrigin VideoInfoWidthFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoWidth
-    attrSet _ = setVideoInfoWidth
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_width :: AttrLabelProxy "width"
-videoInfo_width = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@height@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #height
-@
--}
-getVideoInfoHeight :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoHeight s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 20) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@height@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #height 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoHeight :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 20) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoHeightFieldInfo
-instance AttrInfo VideoInfoHeightFieldInfo where
-    type AttrAllowedOps VideoInfoHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoHeightFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoHeightFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoHeightFieldInfo = Int32
-    type AttrLabel VideoInfoHeightFieldInfo = "height"
-    type AttrOrigin VideoInfoHeightFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoHeight
-    attrSet _ = setVideoInfoHeight
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_height :: AttrLabelProxy "height"
-videoInfo_height = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #size
-@
--}
-getVideoInfoSize :: MonadIO m => VideoInfo -> m Word64
-getVideoInfoSize s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO Word64
-    return val
-
-{- |
-Set the value of the “@size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #size 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoSize :: MonadIO m => VideoInfo -> Word64 -> m ()
-setVideoInfoSize s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 24) (val :: Word64)
-
-#if ENABLE_OVERLOADING
-data VideoInfoSizeFieldInfo
-instance AttrInfo VideoInfoSizeFieldInfo where
-    type AttrAllowedOps VideoInfoSizeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoSizeFieldInfo = (~) Word64
-    type AttrBaseTypeConstraint VideoInfoSizeFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoSizeFieldInfo = Word64
-    type AttrLabel VideoInfoSizeFieldInfo = "size"
-    type AttrOrigin VideoInfoSizeFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoSize
-    attrSet _ = setVideoInfoSize
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_size :: AttrLabelProxy "size"
-videoInfo_size = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@views@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #views
-@
--}
-getVideoInfoViews :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoViews s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@views@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #views 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoViews :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoViews s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoViewsFieldInfo
-instance AttrInfo VideoInfoViewsFieldInfo where
-    type AttrAllowedOps VideoInfoViewsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoViewsFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoViewsFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoViewsFieldInfo = Int32
-    type AttrLabel VideoInfoViewsFieldInfo = "views"
-    type AttrOrigin VideoInfoViewsFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoViews
-    attrSet _ = setVideoInfoViews
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_views :: AttrLabelProxy "views"
-videoInfo_views = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@chroma_site@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #chromaSite
-@
--}
-getVideoInfoChromaSite :: MonadIO m => VideoInfo -> m [GstVideo.Flags.VideoChromaSite]
-getVideoInfoChromaSite s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 36) :: IO CUInt
-    let val' = wordToGFlags val
-    return val'
-
-{- |
-Set the value of the “@chroma_site@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #chromaSite 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoChromaSite :: MonadIO m => VideoInfo -> [GstVideo.Flags.VideoChromaSite] -> m ()
-setVideoInfoChromaSite s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = gflagsToWord val
-    poke (ptr `plusPtr` 36) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoInfoChromaSiteFieldInfo
-instance AttrInfo VideoInfoChromaSiteFieldInfo where
-    type AttrAllowedOps VideoInfoChromaSiteFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoChromaSiteFieldInfo = (~) [GstVideo.Flags.VideoChromaSite]
-    type AttrBaseTypeConstraint VideoInfoChromaSiteFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoChromaSiteFieldInfo = [GstVideo.Flags.VideoChromaSite]
-    type AttrLabel VideoInfoChromaSiteFieldInfo = "chroma_site"
-    type AttrOrigin VideoInfoChromaSiteFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoChromaSite
-    attrSet _ = setVideoInfoChromaSite
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_chromaSite :: AttrLabelProxy "chromaSite"
-videoInfo_chromaSite = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@colorimetry@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #colorimetry
-@
--}
-getVideoInfoColorimetry :: MonadIO m => VideoInfo -> m GstVideo.VideoColorimetry.VideoColorimetry
-getVideoInfoColorimetry s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 40 :: (Ptr GstVideo.VideoColorimetry.VideoColorimetry)
-    val' <- (newPtr GstVideo.VideoColorimetry.VideoColorimetry) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoInfoColorimetryFieldInfo
-instance AttrInfo VideoInfoColorimetryFieldInfo where
-    type AttrAllowedOps VideoInfoColorimetryFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoColorimetryFieldInfo = (~) (Ptr GstVideo.VideoColorimetry.VideoColorimetry)
-    type AttrBaseTypeConstraint VideoInfoColorimetryFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoColorimetryFieldInfo = GstVideo.VideoColorimetry.VideoColorimetry
-    type AttrLabel VideoInfoColorimetryFieldInfo = "colorimetry"
-    type AttrOrigin VideoInfoColorimetryFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoColorimetry
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_colorimetry :: AttrLabelProxy "colorimetry"
-videoInfo_colorimetry = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@par_n@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #parN
-@
--}
-getVideoInfoParN :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoParN s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 56) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@par_n@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #parN 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoParN :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoParN s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 56) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoParNFieldInfo
-instance AttrInfo VideoInfoParNFieldInfo where
-    type AttrAllowedOps VideoInfoParNFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoParNFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoParNFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoParNFieldInfo = Int32
-    type AttrLabel VideoInfoParNFieldInfo = "par_n"
-    type AttrOrigin VideoInfoParNFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoParN
-    attrSet _ = setVideoInfoParN
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_parN :: AttrLabelProxy "parN"
-videoInfo_parN = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@par_d@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #parD
-@
--}
-getVideoInfoParD :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoParD s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 60) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@par_d@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #parD 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoParD :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoParD s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 60) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoParDFieldInfo
-instance AttrInfo VideoInfoParDFieldInfo where
-    type AttrAllowedOps VideoInfoParDFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoParDFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoParDFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoParDFieldInfo = Int32
-    type AttrLabel VideoInfoParDFieldInfo = "par_d"
-    type AttrOrigin VideoInfoParDFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoParD
-    attrSet _ = setVideoInfoParD
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_parD :: AttrLabelProxy "parD"
-videoInfo_parD = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@fps_n@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #fpsN
-@
--}
-getVideoInfoFpsN :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoFpsN s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 64) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@fps_n@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #fpsN 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoFpsN :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoFpsN s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 64) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoFpsNFieldInfo
-instance AttrInfo VideoInfoFpsNFieldInfo where
-    type AttrAllowedOps VideoInfoFpsNFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoFpsNFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoFpsNFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoFpsNFieldInfo = Int32
-    type AttrLabel VideoInfoFpsNFieldInfo = "fps_n"
-    type AttrOrigin VideoInfoFpsNFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoFpsN
-    attrSet _ = setVideoInfoFpsN
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_fpsN :: AttrLabelProxy "fpsN"
-videoInfo_fpsN = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@fps_d@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoInfo #fpsD
-@
--}
-getVideoInfoFpsD :: MonadIO m => VideoInfo -> m Int32
-getVideoInfoFpsD s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 68) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@fps_d@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoInfo [ #fpsD 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoInfoFpsD :: MonadIO m => VideoInfo -> Int32 -> m ()
-setVideoInfoFpsD s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 68) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoInfoFpsDFieldInfo
-instance AttrInfo VideoInfoFpsDFieldInfo where
-    type AttrAllowedOps VideoInfoFpsDFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoInfoFpsDFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoInfoFpsDFieldInfo = (~) VideoInfo
-    type AttrGetType VideoInfoFpsDFieldInfo = Int32
-    type AttrLabel VideoInfoFpsDFieldInfo = "fps_d"
-    type AttrOrigin VideoInfoFpsDFieldInfo = VideoInfo
-    attrGet _ = getVideoInfoFpsD
-    attrSet _ = setVideoInfoFpsD
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoInfo_fpsD :: AttrLabelProxy "fpsD"
-videoInfo_fpsD = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoInfo:offset" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt64)"
--- XXX Skipped attribute for "VideoInfo:stride" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TInt)"
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoInfo
-type instance O.AttributeList VideoInfo = VideoInfoAttributeList
-type VideoInfoAttributeList = ('[ '("finfo", VideoInfoFinfoFieldInfo), '("interlaceMode", VideoInfoInterlaceModeFieldInfo), '("flags", VideoInfoFlagsFieldInfo), '("width", VideoInfoWidthFieldInfo), '("height", VideoInfoHeightFieldInfo), '("size", VideoInfoSizeFieldInfo), '("views", VideoInfoViewsFieldInfo), '("chromaSite", VideoInfoChromaSiteFieldInfo), '("colorimetry", VideoInfoColorimetryFieldInfo), '("parN", VideoInfoParNFieldInfo), '("parD", VideoInfoParDFieldInfo), '("fpsN", VideoInfoFpsNFieldInfo), '("fpsD", VideoInfoFpsDFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoInfo::new
--- method type : Constructor
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_new" gst_video_info_new :: 
-    IO (Ptr VideoInfo)
-
-{- |
-Allocate a new 'GI.GstVideo.Structs.VideoInfo.VideoInfo' that is also initialized with
-'GI.GstVideo.Structs.VideoInfo.videoInfoInit'.
-
-/Since: 1.6/
--}
-videoInfoNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m VideoInfo
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoInfo.VideoInfo'. free with 'GI.GstVideo.Structs.VideoInfo.videoInfoFree'. -}
-videoInfoNew  = liftIO $ do
-    result <- gst_video_info_new
-    checkUnexpectedReturnNULL "videoInfoNew" result
-    result' <- (wrapBoxed VideoInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoInfo::align
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "align", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "alignment parameters", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_align" gst_video_info_align :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr GstVideo.VideoAlignment.VideoAlignment -> -- align : TInterface (Name {namespace = "GstVideo", name = "VideoAlignment"})
-    IO CInt
-
-{- |
-Adjust the offset and stride fields in /@info@/ so that the padding and
-stride alignment in /@align@/ is respected.
-
-Extra padding will be added to the right side when stride alignment padding
-is required and /@align@/ will be updated with the new padding values.
--}
-videoInfoAlign ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> GstVideo.VideoAlignment.VideoAlignment
-    {- ^ /@align@/: alignment parameters -}
-    -> m Bool
-    {- ^ __Returns:__ 'False' if alignment could not be applied, e.g. because the
-  size of a frame can\'t be represented as a 32 bit integer (Since: 1.12) -}
-videoInfoAlign info align = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    align' <- unsafeManagedPtrGetPtr align
-    result <- gst_video_info_align info' align'
-    let result' = (/= 0) result
-    touchManagedPtr info
-    touchManagedPtr align
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoAlignMethodInfo
-instance (signature ~ (GstVideo.VideoAlignment.VideoAlignment -> m Bool), MonadIO m) => O.MethodInfo VideoInfoAlignMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoAlign
-
-#endif
-
--- method VideoInfo::convert
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src_format", argType = TInterface (Name {namespace = "Gst", name = "Format"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstFormat of the @src_value", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src_value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "value to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_format", argType = TInterface (Name {namespace = "Gst", name = "Format"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstFormat of the @dest_value", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_value", argType = TBasicType TInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "pointer to destination value", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_convert" gst_video_info_convert :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    CUInt ->                                -- src_format : TInterface (Name {namespace = "Gst", name = "Format"})
-    Int64 ->                                -- src_value : TBasicType TInt64
-    CUInt ->                                -- dest_format : TInterface (Name {namespace = "Gst", name = "Format"})
-    Ptr Int64 ->                            -- dest_value : TBasicType TInt64
-    IO CInt
-
-{- |
-Converts among various 'GI.Gst.Enums.Format' types.  This function handles
-GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT.  For
-raw video, GST_FORMAT_DEFAULT corresponds to video frames.  This
-function can be used to handle pad queries of the type GST_QUERY_CONVERT.
--}
-videoInfoConvert ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> Gst.Enums.Format
-    {- ^ /@srcFormat@/: 'GI.Gst.Enums.Format' of the /@srcValue@/ -}
-    -> Int64
-    {- ^ /@srcValue@/: value to convert -}
-    -> Gst.Enums.Format
-    {- ^ /@destFormat@/: 'GI.Gst.Enums.Format' of the /@destValue@/ -}
-    -> m ((Bool, Int64))
-    {- ^ __Returns:__ TRUE if the conversion was successful. -}
-videoInfoConvert info srcFormat srcValue destFormat = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    let srcFormat' = (fromIntegral . fromEnum) srcFormat
-    let destFormat' = (fromIntegral . fromEnum) destFormat
-    destValue <- allocMem :: IO (Ptr Int64)
-    result <- gst_video_info_convert info' srcFormat' srcValue destFormat' destValue
-    let result' = (/= 0) result
-    destValue' <- peek destValue
-    touchManagedPtr info
-    freeMem destValue
-    return (result', destValue')
-
-#if ENABLE_OVERLOADING
-data VideoInfoConvertMethodInfo
-instance (signature ~ (Gst.Enums.Format -> Int64 -> Gst.Enums.Format -> m ((Bool, Int64))), MonadIO m) => O.MethodInfo VideoInfoConvertMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoConvert
-
-#endif
-
--- method VideoInfo::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_copy" gst_video_info_copy :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    IO (Ptr VideoInfo)
-
-{- |
-Copy a GstVideoInfo structure.
-
-/Since: 1.6/
--}
-videoInfoCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> m VideoInfo
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoInfo.VideoInfo'. free with gst_video_info_free. -}
-videoInfoCopy info = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    result <- gst_video_info_copy info'
-    checkUnexpectedReturnNULL "videoInfoCopy" result
-    result' <- (wrapBoxed VideoInfo) result
-    touchManagedPtr info
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoCopyMethodInfo
-instance (signature ~ (m VideoInfo), MonadIO m) => O.MethodInfo VideoInfoCopyMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoCopy
-
-#endif
-
--- method VideoInfo::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_free" gst_video_info_free :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    IO ()
-
-{- |
-Free a GstVideoInfo structure previously allocated with 'GI.GstVideo.Structs.VideoInfo.videoInfoNew'
-or 'GI.GstVideo.Structs.VideoInfo.videoInfoCopy'.
-
-/Since: 1.6/
--}
-videoInfoFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> m ()
-videoInfoFree info = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    gst_video_info_free info'
-    touchManagedPtr info
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoInfoFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoInfoFreeMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoFree
-
-#endif
-
--- method VideoInfo::from_caps
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "caps", argType = TInterface (Name {namespace = "Gst", name = "Caps"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstCaps", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_from_caps" gst_video_info_from_caps :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr Gst.Caps.Caps ->                    -- caps : TInterface (Name {namespace = "Gst", name = "Caps"})
-    IO CInt
-
-{- |
-Parse /@caps@/ and update /@info@/.
--}
-videoInfoFromCaps ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> Gst.Caps.Caps
-    {- ^ /@caps@/: a 'GI.Gst.Structs.Caps.Caps' -}
-    -> m Bool
-    {- ^ __Returns:__ TRUE if /@caps@/ could be parsed -}
-videoInfoFromCaps info caps = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    caps' <- unsafeManagedPtrGetPtr caps
-    result <- gst_video_info_from_caps info' caps'
-    let result' = (/= 0) result
-    touchManagedPtr info
-    touchManagedPtr caps
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoFromCapsMethodInfo
-instance (signature ~ (Gst.Caps.Caps -> m Bool), MonadIO m) => O.MethodInfo VideoInfoFromCapsMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoFromCaps
-
-#endif
-
--- method VideoInfo::init
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_init" gst_video_info_init :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    IO ()
-
-{- |
-Initialize /@info@/ with default values.
--}
-videoInfoInit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> m ()
-videoInfoInit info = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    gst_video_info_init info'
-    touchManagedPtr info
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoInfoInitMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoInfoInitMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoInit
-
-#endif
-
--- method VideoInfo::is_equal
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "other", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_is_equal" gst_video_info_is_equal :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    Ptr VideoInfo ->                        -- other : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    IO CInt
-
-{- |
-Compares two 'GI.GstVideo.Structs.VideoInfo.VideoInfo' and returns whether they are equal or not
--}
-videoInfoIsEqual ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> VideoInfo
-    {- ^ /@other@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if /@info@/ and /@other@/ are equal, else 'False'. -}
-videoInfoIsEqual info other = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    other' <- unsafeManagedPtrGetPtr other
-    result <- gst_video_info_is_equal info' other'
-    let result' = (/= 0) result
-    touchManagedPtr info
-    touchManagedPtr other
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoIsEqualMethodInfo
-instance (signature ~ (VideoInfo -> m Bool), MonadIO m) => O.MethodInfo VideoInfoIsEqualMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoIsEqual
-
-#endif
-
--- method VideoInfo::set_format
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_set_format" gst_video_info_set_format :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    IO CInt
-
-{- |
-Set the default info for a video frame of /@format@/ and /@width@/ and /@height@/.
-
-Note: This initializes /@info@/ first, no values are preserved. This function
-does not set the offsets correctly for interlaced vertically
-subsampled formats.
--}
-videoInfoSetFormat ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: the format -}
-    -> Word32
-    {- ^ /@width@/: a width -}
-    -> Word32
-    {- ^ /@height@/: a height -}
-    -> m Bool
-    {- ^ __Returns:__ 'False' if the returned video info is invalid, e.g. because the
-  size of a frame can\'t be represented as a 32 bit integer (Since: 1.12) -}
-videoInfoSetFormat info format width height = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    let format' = (fromIntegral . fromEnum) format
-    result <- gst_video_info_set_format info' format' width height
-    let result' = (/= 0) result
-    touchManagedPtr info
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoSetFormatMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoFormat -> Word32 -> Word32 -> m Bool), MonadIO m) => O.MethodInfo VideoInfoSetFormatMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoSetFormat
-
-#endif
-
--- method VideoInfo::set_interlaced_format
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mode", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInterlaceMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInterlaceMode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_set_interlaced_format" gst_video_info_set_interlaced_format :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    CUInt ->                                -- mode : TInterface (Name {namespace = "GstVideo", name = "VideoInterlaceMode"})
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    IO CInt
-
-{- |
-Same as @/gst_video_info_set_format/@ but also allowing to set the interlaced
-mode.
-
-/Since: 1.16/
--}
-videoInfoSetInterlacedFormat ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: the format -}
-    -> GstVideo.Enums.VideoInterlaceMode
-    {- ^ /@mode@/: a 'GI.GstVideo.Enums.VideoInterlaceMode' -}
-    -> Word32
-    {- ^ /@width@/: a width -}
-    -> Word32
-    {- ^ /@height@/: a height -}
-    -> m Bool
-    {- ^ __Returns:__ 'False' if the returned video info is invalid, e.g. because the
-  size of a frame can\'t be represented as a 32 bit integer. -}
-videoInfoSetInterlacedFormat info format mode width height = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    let format' = (fromIntegral . fromEnum) format
-    let mode' = (fromIntegral . fromEnum) mode
-    result <- gst_video_info_set_interlaced_format info' format' mode' width height
-    let result' = (/= 0) result
-    touchManagedPtr info
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoSetInterlacedFormatMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoFormat -> GstVideo.Enums.VideoInterlaceMode -> Word32 -> Word32 -> m Bool), MonadIO m) => O.MethodInfo VideoInfoSetInterlacedFormatMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoSetInterlacedFormat
-
-#endif
-
--- method VideoInfo::to_caps
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "info", argType = TInterface (Name {namespace = "GstVideo", name = "VideoInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Caps"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_info_to_caps" gst_video_info_to_caps :: 
-    Ptr VideoInfo ->                        -- info : TInterface (Name {namespace = "GstVideo", name = "VideoInfo"})
-    IO (Ptr Gst.Caps.Caps)
-
-{- |
-Convert the values of /@info@/ into a 'GI.Gst.Structs.Caps.Caps'.
--}
-videoInfoToCaps ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoInfo
-    {- ^ /@info@/: a 'GI.GstVideo.Structs.VideoInfo.VideoInfo' -}
-    -> m Gst.Caps.Caps
-    {- ^ __Returns:__ a new 'GI.Gst.Structs.Caps.Caps' containing the info of /@info@/. -}
-videoInfoToCaps info = liftIO $ do
-    info' <- unsafeManagedPtrGetPtr info
-    result <- gst_video_info_to_caps info'
-    checkUnexpectedReturnNULL "videoInfoToCaps" result
-    result' <- (wrapBoxed Gst.Caps.Caps) result
-    touchManagedPtr info
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoInfoToCapsMethodInfo
-instance (signature ~ (m Gst.Caps.Caps), MonadIO m) => O.MethodInfo VideoInfoToCapsMethodInfo VideoInfo signature where
-    overloadedMethod _ = videoInfoToCaps
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoInfoMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoInfoMethod "align" o = VideoInfoAlignMethodInfo
-    ResolveVideoInfoMethod "convert" o = VideoInfoConvertMethodInfo
-    ResolveVideoInfoMethod "copy" o = VideoInfoCopyMethodInfo
-    ResolveVideoInfoMethod "free" o = VideoInfoFreeMethodInfo
-    ResolveVideoInfoMethod "fromCaps" o = VideoInfoFromCapsMethodInfo
-    ResolveVideoInfoMethod "init" o = VideoInfoInitMethodInfo
-    ResolveVideoInfoMethod "isEqual" o = VideoInfoIsEqualMethodInfo
-    ResolveVideoInfoMethod "toCaps" o = VideoInfoToCapsMethodInfo
-    ResolveVideoInfoMethod "setFormat" o = VideoInfoSetFormatMethodInfo
-    ResolveVideoInfoMethod "setInterlacedFormat" o = VideoInfoSetInterlacedFormatMethodInfo
-    ResolveVideoInfoMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoInfoMethod t VideoInfo, O.MethodInfo info VideoInfo p) => OL.IsLabel t (VideoInfo -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoInfo.hs-boot b/GI/GstVideo/Structs/VideoInfo.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoInfo.hs-boot
+++ /dev/null
@@ -1,56 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoInfo 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoInfo = VideoInfo (ManagedPtr VideoInfo)
-instance BoxedObject VideoInfo where
-#if ENABLE_OVERLOADING
-data VideoInfoAlignMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoConvertMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoFromCapsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoInitMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoIsEqualMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoSetFormatMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoSetInterlacedFormatMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoInfoToCapsMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoMeta.hs b/GI/GstVideo/Structs/VideoMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoMeta.hs
+++ /dev/null
@@ -1,842 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata describing image properties
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoMeta
-    ( 
-
--- * Exported types
-    VideoMeta(..)                           ,
-    newZeroVideoMeta                        ,
-    noVideoMeta                             ,
-
-
- -- * Methods
--- ** getInfo #method:getInfo#
-
-    videoMetaGetInfo                        ,
-
-
--- ** map #method:map#
-
-#if ENABLE_OVERLOADING
-    VideoMetaMapMethodInfo                  ,
-#endif
-    videoMetaMap                            ,
-
-
--- ** unmap #method:unmap#
-
-#if ENABLE_OVERLOADING
-    VideoMetaUnmapMethodInfo                ,
-#endif
-    videoMetaUnmap                          ,
-
-
-
-
- -- * Properties
--- ** buffer #attr:buffer#
-{- | the buffer this metadata belongs to
--}
-    clearVideoMetaBuffer                    ,
-    getVideoMetaBuffer                      ,
-    setVideoMetaBuffer                      ,
-#if ENABLE_OVERLOADING
-    videoMeta_buffer                        ,
-#endif
-
-
--- ** flags #attr:flags#
-{- | additional video flags
--}
-    getVideoMetaFlags                       ,
-    setVideoMetaFlags                       ,
-#if ENABLE_OVERLOADING
-    videoMeta_flags                         ,
-#endif
-
-
--- ** format #attr:format#
-{- | the video format
--}
-    getVideoMetaFormat                      ,
-    setVideoMetaFormat                      ,
-#if ENABLE_OVERLOADING
-    videoMeta_format                        ,
-#endif
-
-
--- ** height #attr:height#
-{- | the video height
--}
-    getVideoMetaHeight                      ,
-    setVideoMetaHeight                      ,
-#if ENABLE_OVERLOADING
-    videoMeta_height                        ,
-#endif
-
-
--- ** id #attr:id#
-{- | identifier of the frame
--}
-    getVideoMetaId                          ,
-    setVideoMetaId                          ,
-#if ENABLE_OVERLOADING
-    videoMeta_id                            ,
-#endif
-
-
--- ** map #attr:map#
-{- | /No description available in the introspection data./
--}
-    clearVideoMetaMap                       ,
-    getVideoMetaMap                         ,
-    setVideoMetaMap                         ,
-#if ENABLE_OVERLOADING
-    videoMeta_map                           ,
-#endif
-
-
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoMetaMeta                        ,
-#if ENABLE_OVERLOADING
-    videoMeta_meta                          ,
-#endif
-
-
--- ** nPlanes #attr:nPlanes#
-{- | the number of planes in the image
--}
-    getVideoMetaNPlanes                     ,
-    setVideoMetaNPlanes                     ,
-#if ENABLE_OVERLOADING
-    videoMeta_nPlanes                       ,
-#endif
-
-
--- ** unmap #attr:unmap#
-{- | /No description available in the introspection data./
--}
-    clearVideoMetaUnmap                     ,
-    getVideoMetaUnmap                       ,
-    setVideoMetaUnmap                       ,
-#if ENABLE_OVERLOADING
-    videoMeta_unmap                         ,
-#endif
-
-
--- ** width #attr:width#
-{- | the video width
--}
-    getVideoMetaWidth                       ,
-    setVideoMetaWidth                       ,
-#if ENABLE_OVERLOADING
-    videoMeta_width                         ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Flags as Gst.Flags
-import qualified GI.Gst.Structs.Buffer as Gst.Buffer
-import qualified GI.Gst.Structs.MapInfo as Gst.MapInfo
-import qualified GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-import qualified GI.GstVideo.Callbacks as GstVideo.Callbacks
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-
--- | Memory-managed wrapper type.
-newtype VideoMeta = VideoMeta (ManagedPtr VideoMeta)
-instance WrappedPtr VideoMeta where
-    wrappedPtrCalloc = callocBytes 112
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 112 >=> wrapPtr VideoMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoMeta` struct initialized to zero.
-newZeroVideoMeta :: MonadIO m => m VideoMeta
-newZeroVideoMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoMeta
-
-instance tag ~ 'AttrSet => Constructible VideoMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoMeta`.
-noVideoMeta :: Maybe VideoMeta
-noVideoMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #meta
-@
--}
-getVideoMetaMeta :: MonadIO m => VideoMeta -> m Gst.Meta.Meta
-getVideoMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoMetaMetaFieldInfo
-instance AttrInfo VideoMetaMetaFieldInfo where
-    type AttrAllowedOps VideoMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoMetaMetaFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoMetaMetaFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_meta :: AttrLabelProxy "meta"
-videoMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #buffer
-@
--}
-getVideoMetaBuffer :: MonadIO m => VideoMeta -> m (Maybe Gst.Buffer.Buffer)
-getVideoMetaBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO (Ptr Gst.Buffer.Buffer)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed Gst.Buffer.Buffer) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@buffer@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #buffer 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaBuffer :: MonadIO m => VideoMeta -> Ptr Gst.Buffer.Buffer -> m ()
-setVideoMetaBuffer s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Ptr Gst.Buffer.Buffer)
-
-{- |
-Set the value of the “@buffer@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #buffer
-@
--}
-clearVideoMetaBuffer :: MonadIO m => VideoMeta -> m ()
-clearVideoMetaBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
-
-#if ENABLE_OVERLOADING
-data VideoMetaBufferFieldInfo
-instance AttrInfo VideoMetaBufferFieldInfo where
-    type AttrAllowedOps VideoMetaBufferFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoMetaBufferFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
-    type AttrBaseTypeConstraint VideoMetaBufferFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaBufferFieldInfo = Maybe Gst.Buffer.Buffer
-    type AttrLabel VideoMetaBufferFieldInfo = "buffer"
-    type AttrOrigin VideoMetaBufferFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaBuffer
-    attrSet _ = setVideoMetaBuffer
-    attrConstruct = undefined
-    attrClear _ = clearVideoMetaBuffer
-
-videoMeta_buffer :: AttrLabelProxy "buffer"
-videoMeta_buffer = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #flags
-@
--}
-getVideoMetaFlags :: MonadIO m => VideoMeta -> m [GstVideo.Flags.VideoFrameFlags]
-getVideoMetaFlags s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO CUInt
-    let val' = wordToGFlags val
-    return val'
-
-{- |
-Set the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #flags 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaFlags :: MonadIO m => VideoMeta -> [GstVideo.Flags.VideoFrameFlags] -> m ()
-setVideoMetaFlags s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = gflagsToWord val
-    poke (ptr `plusPtr` 24) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoMetaFlagsFieldInfo
-instance AttrInfo VideoMetaFlagsFieldInfo where
-    type AttrAllowedOps VideoMetaFlagsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaFlagsFieldInfo = (~) [GstVideo.Flags.VideoFrameFlags]
-    type AttrBaseTypeConstraint VideoMetaFlagsFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaFlagsFieldInfo = [GstVideo.Flags.VideoFrameFlags]
-    type AttrLabel VideoMetaFlagsFieldInfo = "flags"
-    type AttrOrigin VideoMetaFlagsFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaFlags
-    attrSet _ = setVideoMetaFlags
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_flags :: AttrLabelProxy "flags"
-videoMeta_flags = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@format@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #format
-@
--}
-getVideoMetaFormat :: MonadIO m => VideoMeta -> m GstVideo.Enums.VideoFormat
-getVideoMetaFormat s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 28) :: IO CUInt
-    let val' = (toEnum . fromIntegral) val
-    return val'
-
-{- |
-Set the value of the “@format@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #format 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaFormat :: MonadIO m => VideoMeta -> GstVideo.Enums.VideoFormat -> m ()
-setVideoMetaFormat s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = (fromIntegral . fromEnum) val
-    poke (ptr `plusPtr` 28) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoMetaFormatFieldInfo
-instance AttrInfo VideoMetaFormatFieldInfo where
-    type AttrAllowedOps VideoMetaFormatFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaFormatFieldInfo = (~) GstVideo.Enums.VideoFormat
-    type AttrBaseTypeConstraint VideoMetaFormatFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaFormatFieldInfo = GstVideo.Enums.VideoFormat
-    type AttrLabel VideoMetaFormatFieldInfo = "format"
-    type AttrOrigin VideoMetaFormatFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaFormat
-    attrSet _ = setVideoMetaFormat
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_format :: AttrLabelProxy "format"
-videoMeta_format = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #id
-@
--}
-getVideoMetaId :: MonadIO m => VideoMeta -> m Int32
-getVideoMetaId s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #id 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaId :: MonadIO m => VideoMeta -> Int32 -> m ()
-setVideoMetaId s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoMetaIdFieldInfo
-instance AttrInfo VideoMetaIdFieldInfo where
-    type AttrAllowedOps VideoMetaIdFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaIdFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoMetaIdFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaIdFieldInfo = Int32
-    type AttrLabel VideoMetaIdFieldInfo = "id"
-    type AttrOrigin VideoMetaIdFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaId
-    attrSet _ = setVideoMetaId
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_id :: AttrLabelProxy "id"
-videoMeta_id = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@width@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #width
-@
--}
-getVideoMetaWidth :: MonadIO m => VideoMeta -> m Word32
-getVideoMetaWidth s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 36) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@width@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #width 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaWidth :: MonadIO m => VideoMeta -> Word32 -> m ()
-setVideoMetaWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 36) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoMetaWidthFieldInfo
-instance AttrInfo VideoMetaWidthFieldInfo where
-    type AttrAllowedOps VideoMetaWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaWidthFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoMetaWidthFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaWidthFieldInfo = Word32
-    type AttrLabel VideoMetaWidthFieldInfo = "width"
-    type AttrOrigin VideoMetaWidthFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaWidth
-    attrSet _ = setVideoMetaWidth
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_width :: AttrLabelProxy "width"
-videoMeta_width = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@height@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #height
-@
--}
-getVideoMetaHeight :: MonadIO m => VideoMeta -> m Word32
-getVideoMetaHeight s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 40) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@height@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #height 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaHeight :: MonadIO m => VideoMeta -> Word32 -> m ()
-setVideoMetaHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 40) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoMetaHeightFieldInfo
-instance AttrInfo VideoMetaHeightFieldInfo where
-    type AttrAllowedOps VideoMetaHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaHeightFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoMetaHeightFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaHeightFieldInfo = Word32
-    type AttrLabel VideoMetaHeightFieldInfo = "height"
-    type AttrOrigin VideoMetaHeightFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaHeight
-    attrSet _ = setVideoMetaHeight
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_height :: AttrLabelProxy "height"
-videoMeta_height = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@n_planes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #nPlanes
-@
--}
-getVideoMetaNPlanes :: MonadIO m => VideoMeta -> m Word32
-getVideoMetaNPlanes s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 44) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@n_planes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #nPlanes 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaNPlanes :: MonadIO m => VideoMeta -> Word32 -> m ()
-setVideoMetaNPlanes s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 44) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoMetaNPlanesFieldInfo
-instance AttrInfo VideoMetaNPlanesFieldInfo where
-    type AttrAllowedOps VideoMetaNPlanesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoMetaNPlanesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoMetaNPlanesFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaNPlanesFieldInfo = Word32
-    type AttrLabel VideoMetaNPlanesFieldInfo = "n_planes"
-    type AttrOrigin VideoMetaNPlanesFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaNPlanes
-    attrSet _ = setVideoMetaNPlanes
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoMeta_nPlanes :: AttrLabelProxy "nPlanes"
-videoMeta_nPlanes = AttrLabelProxy
-
-#endif
-
-
--- XXX Skipped attribute for "VideoMeta:offset" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TUInt64)"
--- XXX Skipped attribute for "VideoMeta:stride" :: Not implemented: "Don't know how to unpack C array of type TCArray False 4 (-1) (TBasicType TInt)"
-{- |
-Get the value of the “@map@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #map
-@
--}
-getVideoMetaMap :: MonadIO m => VideoMeta -> m (Maybe GstVideo.Callbacks.VideoMetaMapFieldCallback)
-getVideoMetaMap s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 96) :: IO (FunPtr GstVideo.Callbacks.C_VideoMetaMapFieldCallback)
-    result <- SP.convertFunPtrIfNonNull val $ \val' -> do
-        let val'' = GstVideo.Callbacks.dynamic_VideoMetaMapFieldCallback val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@map@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #map 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaMap :: MonadIO m => VideoMeta -> FunPtr GstVideo.Callbacks.C_VideoMetaMapFieldCallback -> m ()
-setVideoMetaMap s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 96) (val :: FunPtr GstVideo.Callbacks.C_VideoMetaMapFieldCallback)
-
-{- |
-Set the value of the “@map@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #map
-@
--}
-clearVideoMetaMap :: MonadIO m => VideoMeta -> m ()
-clearVideoMetaMap s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 96) (FP.nullFunPtr :: FunPtr GstVideo.Callbacks.C_VideoMetaMapFieldCallback)
-
-#if ENABLE_OVERLOADING
-data VideoMetaMapFieldInfo
-instance AttrInfo VideoMetaMapFieldInfo where
-    type AttrAllowedOps VideoMetaMapFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoMetaMapFieldInfo = (~) (FunPtr GstVideo.Callbacks.C_VideoMetaMapFieldCallback)
-    type AttrBaseTypeConstraint VideoMetaMapFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaMapFieldInfo = Maybe GstVideo.Callbacks.VideoMetaMapFieldCallback
-    type AttrLabel VideoMetaMapFieldInfo = "map"
-    type AttrOrigin VideoMetaMapFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaMap
-    attrSet _ = setVideoMetaMap
-    attrConstruct = undefined
-    attrClear _ = clearVideoMetaMap
-
-videoMeta_map :: AttrLabelProxy "map"
-videoMeta_map = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@unmap@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMeta #unmap
-@
--}
-getVideoMetaUnmap :: MonadIO m => VideoMeta -> m (Maybe GstVideo.Callbacks.VideoMetaUnmapFieldCallback)
-getVideoMetaUnmap s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 104) :: IO (FunPtr GstVideo.Callbacks.C_VideoMetaUnmapFieldCallback)
-    result <- SP.convertFunPtrIfNonNull val $ \val' -> do
-        let val'' = GstVideo.Callbacks.dynamic_VideoMetaUnmapFieldCallback val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@unmap@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMeta [ #unmap 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaUnmap :: MonadIO m => VideoMeta -> FunPtr GstVideo.Callbacks.C_VideoMetaUnmapFieldCallback -> m ()
-setVideoMetaUnmap s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 104) (val :: FunPtr GstVideo.Callbacks.C_VideoMetaUnmapFieldCallback)
-
-{- |
-Set the value of the “@unmap@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #unmap
-@
--}
-clearVideoMetaUnmap :: MonadIO m => VideoMeta -> m ()
-clearVideoMetaUnmap s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 104) (FP.nullFunPtr :: FunPtr GstVideo.Callbacks.C_VideoMetaUnmapFieldCallback)
-
-#if ENABLE_OVERLOADING
-data VideoMetaUnmapFieldInfo
-instance AttrInfo VideoMetaUnmapFieldInfo where
-    type AttrAllowedOps VideoMetaUnmapFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoMetaUnmapFieldInfo = (~) (FunPtr GstVideo.Callbacks.C_VideoMetaUnmapFieldCallback)
-    type AttrBaseTypeConstraint VideoMetaUnmapFieldInfo = (~) VideoMeta
-    type AttrGetType VideoMetaUnmapFieldInfo = Maybe GstVideo.Callbacks.VideoMetaUnmapFieldCallback
-    type AttrLabel VideoMetaUnmapFieldInfo = "unmap"
-    type AttrOrigin VideoMetaUnmapFieldInfo = VideoMeta
-    attrGet _ = getVideoMetaUnmap
-    attrSet _ = setVideoMetaUnmap
-    attrConstruct = undefined
-    attrClear _ = clearVideoMetaUnmap
-
-videoMeta_unmap :: AttrLabelProxy "unmap"
-videoMeta_unmap = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoMeta
-type instance O.AttributeList VideoMeta = VideoMetaAttributeList
-type VideoMetaAttributeList = ('[ '("meta", VideoMetaMetaFieldInfo), '("buffer", VideoMetaBufferFieldInfo), '("flags", VideoMetaFlagsFieldInfo), '("format", VideoMetaFormatFieldInfo), '("id", VideoMetaIdFieldInfo), '("width", VideoMetaWidthFieldInfo), '("height", VideoMetaHeightFieldInfo), '("nPlanes", VideoMetaNPlanesFieldInfo), '("map", VideoMetaMapFieldInfo), '("unmap", VideoMetaUnmapFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoMeta::map
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoMeta", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "Gst", name = "MapInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstMapInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionOut, mayBeNull = True, argDoc = Documentation {rawDocText = Just "the data of @plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "stride", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the stride of @plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "flags", argType = TInterface (Name {namespace = "Gst", name = "MapFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "@GstMapFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_meta_map" gst_video_meta_map :: 
-    Ptr VideoMeta ->                        -- meta : TInterface (Name {namespace = "GstVideo", name = "VideoMeta"})
-    Word32 ->                               -- plane : TBasicType TUInt
-    Ptr Gst.MapInfo.MapInfo ->              -- info : TInterface (Name {namespace = "Gst", name = "MapInfo"})
-    Ptr (Ptr ()) ->                         -- data : TBasicType TPtr
-    Ptr Int32 ->                            -- stride : TBasicType TInt
-    CUInt ->                                -- flags : TInterface (Name {namespace = "Gst", name = "MapFlags"})
-    IO CInt
-
-{- |
-Map the video plane with index /@plane@/ in /@meta@/ and return a pointer to the
-first byte of the plane and the stride of the plane.
--}
-videoMetaMap ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoMeta
-    {- ^ /@meta@/: a 'GI.GstVideo.Structs.VideoMeta.VideoMeta' -}
-    -> Word32
-    {- ^ /@plane@/: a plane -}
-    -> Gst.MapInfo.MapInfo
-    {- ^ /@info@/: a 'GI.Gst.Structs.MapInfo.MapInfo' -}
-    -> [Gst.Flags.MapFlags]
-    {- ^ /@flags@/: /@gstMapFlags@/ -}
-    -> m ((Bool, Ptr (), Int32))
-    {- ^ __Returns:__ TRUE if the map operation was successful. -}
-videoMetaMap meta plane info flags = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    info' <- unsafeManagedPtrGetPtr info
-    data_ <- allocMem :: IO (Ptr (Ptr ()))
-    stride <- allocMem :: IO (Ptr Int32)
-    let flags' = gflagsToWord flags
-    result <- gst_video_meta_map meta' plane info' data_ stride flags'
-    let result' = (/= 0) result
-    data_' <- peek data_
-    stride' <- peek stride
-    touchManagedPtr meta
-    touchManagedPtr info
-    freeMem data_
-    freeMem stride
-    return (result', data_', stride')
-
-#if ENABLE_OVERLOADING
-data VideoMetaMapMethodInfo
-instance (signature ~ (Word32 -> Gst.MapInfo.MapInfo -> [Gst.Flags.MapFlags] -> m ((Bool, Ptr (), Int32))), MonadIO m) => O.MethodInfo VideoMetaMapMethodInfo VideoMeta signature where
-    overloadedMethod _ = videoMetaMap
-
-#endif
-
--- method VideoMeta::unmap
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoMeta", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "plane", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a plane", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "info", argType = TInterface (Name {namespace = "Gst", name = "MapInfo"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstMapInfo", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_meta_unmap" gst_video_meta_unmap :: 
-    Ptr VideoMeta ->                        -- meta : TInterface (Name {namespace = "GstVideo", name = "VideoMeta"})
-    Word32 ->                               -- plane : TBasicType TUInt
-    Ptr Gst.MapInfo.MapInfo ->              -- info : TInterface (Name {namespace = "Gst", name = "MapInfo"})
-    IO CInt
-
-{- |
-Unmap a previously mapped plane with 'GI.GstVideo.Structs.VideoMeta.videoMetaMap'.
--}
-videoMetaUnmap ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoMeta
-    {- ^ /@meta@/: a 'GI.GstVideo.Structs.VideoMeta.VideoMeta' -}
-    -> Word32
-    {- ^ /@plane@/: a plane -}
-    -> Gst.MapInfo.MapInfo
-    {- ^ /@info@/: a 'GI.Gst.Structs.MapInfo.MapInfo' -}
-    -> m Bool
-    {- ^ __Returns:__ TRUE if the memory was successfully unmapped. -}
-videoMetaUnmap meta plane info = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    info' <- unsafeManagedPtrGetPtr info
-    result <- gst_video_meta_unmap meta' plane info'
-    let result' = (/= 0) result
-    touchManagedPtr meta
-    touchManagedPtr info
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoMetaUnmapMethodInfo
-instance (signature ~ (Word32 -> Gst.MapInfo.MapInfo -> m Bool), MonadIO m) => O.MethodInfo VideoMetaUnmapMethodInfo VideoMeta signature where
-    overloadedMethod _ = videoMetaUnmap
-
-#endif
-
--- method VideoMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_meta_get_info" gst_video_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoMetaGetInfo  = liftIO $ do
-    result <- gst_video_meta_get_info
-    checkUnexpectedReturnNULL "videoMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoMetaMethod "map" o = VideoMetaMapMethodInfo
-    ResolveVideoMetaMethod "unmap" o = VideoMetaUnmapMethodInfo
-    ResolveVideoMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoMetaMethod t VideoMeta, O.MethodInfo info VideoMeta p) => OL.IsLabel t (VideoMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoMeta.hs-boot b/GI/GstVideo/Structs/VideoMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoMeta.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoMeta = VideoMeta (ManagedPtr VideoMeta)
-instance WrappedPtr VideoMeta where
-#if ENABLE_OVERLOADING
-data VideoMetaMapMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoMetaUnmapMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoMetaTransform.hs b/GI/GstVideo/Structs/VideoMetaTransform.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoMetaTransform.hs
+++ /dev/null
@@ -1,268 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra data passed to a video transform 'GI.Gst.Callbacks.MetaTransformFunction' such as:
-\"gst-video-scale\".
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoMetaTransform
-    ( 
-
--- * Exported types
-    VideoMetaTransform(..)                  ,
-    newZeroVideoMetaTransform               ,
-    noVideoMetaTransform                    ,
-
-
- -- * Methods
--- ** scaleGetQuark #method:scaleGetQuark#
-
-    videoMetaTransformScaleGetQuark         ,
-
-
-
-
- -- * Properties
--- ** inInfo #attr:inInfo#
-{- | the input 'GI.GstVideo.Structs.VideoInfo.VideoInfo'
--}
-    clearVideoMetaTransformInInfo           ,
-    getVideoMetaTransformInInfo             ,
-    setVideoMetaTransformInInfo             ,
-#if ENABLE_OVERLOADING
-    videoMetaTransform_inInfo               ,
-#endif
-
-
--- ** outInfo #attr:outInfo#
-{- | the output 'GI.GstVideo.Structs.VideoInfo.VideoInfo'
--}
-    clearVideoMetaTransformOutInfo          ,
-    getVideoMetaTransformOutInfo            ,
-    setVideoMetaTransformOutInfo            ,
-#if ENABLE_OVERLOADING
-    videoMetaTransform_outInfo              ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoInfo as GstVideo.VideoInfo
-
--- | Memory-managed wrapper type.
-newtype VideoMetaTransform = VideoMetaTransform (ManagedPtr VideoMetaTransform)
-instance WrappedPtr VideoMetaTransform where
-    wrappedPtrCalloc = callocBytes 16
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 16 >=> wrapPtr VideoMetaTransform)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoMetaTransform` struct initialized to zero.
-newZeroVideoMetaTransform :: MonadIO m => m VideoMetaTransform
-newZeroVideoMetaTransform = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoMetaTransform
-
-instance tag ~ 'AttrSet => Constructible VideoMetaTransform tag where
-    new _ attrs = do
-        o <- newZeroVideoMetaTransform
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoMetaTransform`.
-noVideoMetaTransform :: Maybe VideoMetaTransform
-noVideoMetaTransform = Nothing
-
-{- |
-Get the value of the “@in_info@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMetaTransform #inInfo
-@
--}
-getVideoMetaTransformInInfo :: MonadIO m => VideoMetaTransform -> m (Maybe GstVideo.VideoInfo.VideoInfo)
-getVideoMetaTransformInInfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO (Ptr GstVideo.VideoInfo.VideoInfo)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed GstVideo.VideoInfo.VideoInfo) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@in_info@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMetaTransform [ #inInfo 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaTransformInInfo :: MonadIO m => VideoMetaTransform -> Ptr GstVideo.VideoInfo.VideoInfo -> m ()
-setVideoMetaTransformInInfo s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Ptr GstVideo.VideoInfo.VideoInfo)
-
-{- |
-Set the value of the “@in_info@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #inInfo
-@
--}
-clearVideoMetaTransformInInfo :: MonadIO m => VideoMetaTransform -> m ()
-clearVideoMetaTransformInInfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (FP.nullPtr :: Ptr GstVideo.VideoInfo.VideoInfo)
-
-#if ENABLE_OVERLOADING
-data VideoMetaTransformInInfoFieldInfo
-instance AttrInfo VideoMetaTransformInInfoFieldInfo where
-    type AttrAllowedOps VideoMetaTransformInInfoFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoMetaTransformInInfoFieldInfo = (~) (Ptr GstVideo.VideoInfo.VideoInfo)
-    type AttrBaseTypeConstraint VideoMetaTransformInInfoFieldInfo = (~) VideoMetaTransform
-    type AttrGetType VideoMetaTransformInInfoFieldInfo = Maybe GstVideo.VideoInfo.VideoInfo
-    type AttrLabel VideoMetaTransformInInfoFieldInfo = "in_info"
-    type AttrOrigin VideoMetaTransformInInfoFieldInfo = VideoMetaTransform
-    attrGet _ = getVideoMetaTransformInInfo
-    attrSet _ = setVideoMetaTransformInInfo
-    attrConstruct = undefined
-    attrClear _ = clearVideoMetaTransformInInfo
-
-videoMetaTransform_inInfo :: AttrLabelProxy "inInfo"
-videoMetaTransform_inInfo = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@out_info@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoMetaTransform #outInfo
-@
--}
-getVideoMetaTransformOutInfo :: MonadIO m => VideoMetaTransform -> m (Maybe GstVideo.VideoInfo.VideoInfo)
-getVideoMetaTransformOutInfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO (Ptr GstVideo.VideoInfo.VideoInfo)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed GstVideo.VideoInfo.VideoInfo) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@out_info@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoMetaTransform [ #outInfo 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoMetaTransformOutInfo :: MonadIO m => VideoMetaTransform -> Ptr GstVideo.VideoInfo.VideoInfo -> m ()
-setVideoMetaTransformOutInfo s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: Ptr GstVideo.VideoInfo.VideoInfo)
-
-{- |
-Set the value of the “@out_info@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #outInfo
-@
--}
-clearVideoMetaTransformOutInfo :: MonadIO m => VideoMetaTransform -> m ()
-clearVideoMetaTransformOutInfo s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (FP.nullPtr :: Ptr GstVideo.VideoInfo.VideoInfo)
-
-#if ENABLE_OVERLOADING
-data VideoMetaTransformOutInfoFieldInfo
-instance AttrInfo VideoMetaTransformOutInfoFieldInfo where
-    type AttrAllowedOps VideoMetaTransformOutInfoFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoMetaTransformOutInfoFieldInfo = (~) (Ptr GstVideo.VideoInfo.VideoInfo)
-    type AttrBaseTypeConstraint VideoMetaTransformOutInfoFieldInfo = (~) VideoMetaTransform
-    type AttrGetType VideoMetaTransformOutInfoFieldInfo = Maybe GstVideo.VideoInfo.VideoInfo
-    type AttrLabel VideoMetaTransformOutInfoFieldInfo = "out_info"
-    type AttrOrigin VideoMetaTransformOutInfoFieldInfo = VideoMetaTransform
-    attrGet _ = getVideoMetaTransformOutInfo
-    attrSet _ = setVideoMetaTransformOutInfo
-    attrConstruct = undefined
-    attrClear _ = clearVideoMetaTransformOutInfo
-
-videoMetaTransform_outInfo :: AttrLabelProxy "outInfo"
-videoMetaTransform_outInfo = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoMetaTransform
-type instance O.AttributeList VideoMetaTransform = VideoMetaTransformAttributeList
-type VideoMetaTransformAttributeList = ('[ '("inInfo", VideoMetaTransformInInfoFieldInfo), '("outInfo", VideoMetaTransformOutInfoFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoMetaTransform::scale_get_quark
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TBasicType TUInt32)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_meta_transform_scale_get_quark" gst_video_meta_transform_scale_get_quark :: 
-    IO Word32
-
-{- |
-Get the @/GQuark/@ for the \"gst-video-scale\" metadata transform operation.
--}
-videoMetaTransformScaleGetQuark ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Word32
-    {- ^ __Returns:__ a @/GQuark/@ -}
-videoMetaTransformScaleGetQuark  = liftIO $ do
-    result <- gst_video_meta_transform_scale_get_quark
-    return result
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoMetaTransformMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoMetaTransformMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoMetaTransformMethod t VideoMetaTransform, O.MethodInfo info VideoMetaTransform p) => OL.IsLabel t (VideoMetaTransform -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoMetaTransform.hs-boot b/GI/GstVideo/Structs/VideoMetaTransform.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoMetaTransform.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoMetaTransform 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoMetaTransform = VideoMetaTransform (ManagedPtr VideoMetaTransform)
-instance WrappedPtr VideoMetaTransform where
diff --git a/GI/GstVideo/Structs/VideoOverlayComposition.hs b/GI/GstVideo/Structs/VideoOverlayComposition.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoOverlayComposition.hs
+++ /dev/null
@@ -1,486 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Functions to create and handle overlay compositions on video buffers.
-
-An overlay composition describes one or more overlay rectangles to be
-blended on top of a video buffer.
-
-This API serves two main purposes:
-
-* it can be used to attach overlay information (subtitles or logos)
-  to non-raw video buffers such as GL\/VAAPI\/VDPAU surfaces. The actual
-  blending of the overlay can then be done by e.g. the video sink that
-  processes these non-raw buffers.
-
-* it can also be used to blend overlay rectangles on top of raw video
-  buffers, thus consolidating blending functionality for raw video in
-  one place.
-
-Together, this allows existing overlay elements to easily handle raw
-and non-raw video as input in without major changes (once the overlays
-have been put into a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' object anyway) - for raw
-video the overlay can just use the blending function to blend the data
-on top of the video, and for surface buffers it can just attach them to
-the buffer and let the sink render the overlays.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoOverlayComposition
-    ( 
-
--- * Exported types
-    VideoOverlayComposition(..)             ,
-    noVideoOverlayComposition               ,
-
-
- -- * Methods
--- ** addRectangle #method:addRectangle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionAddRectangleMethodInfo,
-#endif
-    videoOverlayCompositionAddRectangle     ,
-
-
--- ** blend #method:blend#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionBlendMethodInfo  ,
-#endif
-    videoOverlayCompositionBlend            ,
-
-
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionCopyMethodInfo   ,
-#endif
-    videoOverlayCompositionCopy             ,
-
-
--- ** getRectangle #method:getRectangle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionGetRectangleMethodInfo,
-#endif
-    videoOverlayCompositionGetRectangle     ,
-
-
--- ** getSeqnum #method:getSeqnum#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionGetSeqnumMethodInfo,
-#endif
-    videoOverlayCompositionGetSeqnum        ,
-
-
--- ** makeWritable #method:makeWritable#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionMakeWritableMethodInfo,
-#endif
-    videoOverlayCompositionMakeWritable     ,
-
-
--- ** nRectangles #method:nRectangles#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayCompositionNRectanglesMethodInfo,
-#endif
-    videoOverlayCompositionNRectangles      ,
-
-
--- ** new #method:new#
-
-    videoOverlayCompositionNew              ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoFrame as GstVideo.VideoFrame
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoOverlayRectangle as GstVideo.VideoOverlayRectangle
-
--- | Memory-managed wrapper type.
-newtype VideoOverlayComposition = VideoOverlayComposition (ManagedPtr VideoOverlayComposition)
-foreign import ccall "gst_video_overlay_composition_get_type" c_gst_video_overlay_composition_get_type :: 
-    IO GType
-
-instance BoxedObject VideoOverlayComposition where
-    boxedType _ = c_gst_video_overlay_composition_get_type
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoOverlayComposition`.
-noVideoOverlayComposition :: Maybe VideoOverlayComposition
-noVideoOverlayComposition = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoOverlayComposition
-type instance O.AttributeList VideoOverlayComposition = VideoOverlayCompositionAttributeList
-type VideoOverlayCompositionAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoOverlayComposition::new
--- method type : Constructor
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle to add to the\n    composition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_new" gst_video_overlay_composition_new :: 
-    Ptr GstVideo.VideoOverlayRectangle.VideoOverlayRectangle -> -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    IO (Ptr VideoOverlayComposition)
-
-{- |
-Creates a new video overlay composition object to hold one or more
-overlay rectangles.
--}
-videoOverlayCompositionNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.VideoOverlayRectangle.VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' to add to the
-    composition -}
-    -> m VideoOverlayComposition
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition'. Unref with
-    @/gst_video_overlay_composition_unref()/@ when no longer needed. -}
-videoOverlayCompositionNew rectangle = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    result <- gst_video_overlay_composition_new rectangle'
-    checkUnexpectedReturnNULL "videoOverlayCompositionNew" result
-    result' <- (wrapBoxed VideoOverlayComposition) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoOverlayComposition::add_rectangle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle to add to the\n    composition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_add_rectangle" gst_video_overlay_composition_add_rectangle :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    Ptr GstVideo.VideoOverlayRectangle.VideoOverlayRectangle -> -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    IO ()
-
-{- |
-Adds an overlay rectangle to an existing overlay composition object. This
-must be done right after creating the overlay composition.
--}
-videoOverlayCompositionAddRectangle ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' -}
-    -> GstVideo.VideoOverlayRectangle.VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' to add to the
-    composition -}
-    -> m ()
-videoOverlayCompositionAddRectangle comp rectangle = liftIO $ do
-    comp' <- unsafeManagedPtrGetPtr comp
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    gst_video_overlay_composition_add_rectangle comp' rectangle'
-    touchManagedPtr comp
-    touchManagedPtr rectangle
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionAddRectangleMethodInfo
-instance (signature ~ (GstVideo.VideoOverlayRectangle.VideoOverlayRectangle -> m ()), MonadIO m) => O.MethodInfo VideoOverlayCompositionAddRectangleMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionAddRectangle
-
-#endif
-
--- method VideoOverlayComposition::blend
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "video_buf", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFrame"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFrame containing raw video data in a\n            supported format. It should be mapped using GST_MAP_READWRITE", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_blend" gst_video_overlay_composition_blend :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    Ptr GstVideo.VideoFrame.VideoFrame ->   -- video_buf : TInterface (Name {namespace = "GstVideo", name = "VideoFrame"})
-    IO CInt
-
-{- |
-Blends the overlay rectangles in /@comp@/ on top of the raw video data
-contained in /@videoBuf@/. The data in /@videoBuf@/ must be writable and
-mapped appropriately.
-
-Since /@videoBuf@/ data is read and will be modified, it ought be
-mapped with flag GST_MAP_READWRITE.
--}
-videoOverlayCompositionBlend ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' -}
-    -> GstVideo.VideoFrame.VideoFrame
-    {- ^ /@videoBuf@/: a 'GI.GstVideo.Structs.VideoFrame.VideoFrame' containing raw video data in a
-            supported format. It should be mapped using GST_MAP_READWRITE -}
-    -> m Bool
-videoOverlayCompositionBlend comp videoBuf = liftIO $ do
-    comp' <- unsafeManagedPtrGetPtr comp
-    videoBuf' <- unsafeManagedPtrGetPtr videoBuf
-    result <- gst_video_overlay_composition_blend comp' videoBuf'
-    let result' = (/= 0) result
-    touchManagedPtr comp
-    touchManagedPtr videoBuf
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionBlendMethodInfo
-instance (signature ~ (GstVideo.VideoFrame.VideoFrame -> m Bool), MonadIO m) => O.MethodInfo VideoOverlayCompositionBlendMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionBlend
-
-#endif
-
--- method VideoOverlayComposition::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition to copy", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_copy" gst_video_overlay_composition_copy :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    IO (Ptr VideoOverlayComposition)
-
-{- |
-Makes a copy of /@comp@/ and all contained rectangles, so that it is possible
-to modify the composition and contained rectangles (e.g. add additional
-rectangles or change the render co-ordinates or render dimension). The
-actual overlay pixel data buffers contained in the rectangles are not
-copied.
--}
-videoOverlayCompositionCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' to copy -}
-    -> m VideoOverlayComposition
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' equivalent
-    to /@comp@/. -}
-videoOverlayCompositionCopy comp = liftIO $ do
-    comp' <- unsafeManagedPtrGetPtr comp
-    result <- gst_video_overlay_composition_copy comp'
-    checkUnexpectedReturnNULL "videoOverlayCompositionCopy" result
-    result' <- (wrapBoxed VideoOverlayComposition) result
-    touchManagedPtr comp
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionCopyMethodInfo
-instance (signature ~ (m VideoOverlayComposition), MonadIO m) => O.MethodInfo VideoOverlayCompositionCopyMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionCopy
-
-#endif
-
--- method VideoOverlayComposition::get_rectangle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "number of the rectangle to get", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_get_rectangle" gst_video_overlay_composition_get_rectangle :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    Word32 ->                               -- n : TBasicType TUInt
-    IO (Ptr GstVideo.VideoOverlayRectangle.VideoOverlayRectangle)
-
-{- |
-Returns the /@n@/-th 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' contained in /@comp@/.
--}
-videoOverlayCompositionGetRectangle ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' -}
-    -> Word32
-    {- ^ /@n@/: number of the rectangle to get -}
-    -> m GstVideo.VideoOverlayRectangle.VideoOverlayRectangle
-    {- ^ __Returns:__ the /@n@/-th rectangle, or NULL if /@n@/ is out of
-    bounds. Will not return a new reference, the caller will need to
-    obtain her own reference using @/gst_video_overlay_rectangle_ref()/@
-    if needed. -}
-videoOverlayCompositionGetRectangle comp n = liftIO $ do
-    comp' <- unsafeManagedPtrGetPtr comp
-    result <- gst_video_overlay_composition_get_rectangle comp' n
-    checkUnexpectedReturnNULL "videoOverlayCompositionGetRectangle" result
-    result' <- (newBoxed GstVideo.VideoOverlayRectangle.VideoOverlayRectangle) result
-    touchManagedPtr comp
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionGetRectangleMethodInfo
-instance (signature ~ (Word32 -> m GstVideo.VideoOverlayRectangle.VideoOverlayRectangle), MonadIO m) => O.MethodInfo VideoOverlayCompositionGetRectangleMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionGetRectangle
-
-#endif
-
--- method VideoOverlayComposition::get_seqnum
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_get_seqnum" gst_video_overlay_composition_get_seqnum :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    IO Word32
-
-{- |
-Returns the sequence number of this composition. Sequence numbers are
-monotonically increasing and unique for overlay compositions and rectangles
-(meaning there will never be a rectangle with the same sequence number as
-a composition).
--}
-videoOverlayCompositionGetSeqnum ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' -}
-    -> m Word32
-    {- ^ __Returns:__ the sequence number of /@comp@/ -}
-videoOverlayCompositionGetSeqnum comp = liftIO $ do
-    comp' <- unsafeManagedPtrGetPtr comp
-    result <- gst_video_overlay_composition_get_seqnum comp'
-    touchManagedPtr comp
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionGetSeqnumMethodInfo
-instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo VideoOverlayCompositionGetSeqnumMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionGetSeqnum
-
-#endif
-
--- method VideoOverlayComposition::make_writable
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition to copy", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_make_writable" gst_video_overlay_composition_make_writable :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    IO (Ptr VideoOverlayComposition)
-
-{- |
-Takes ownership of /@comp@/ and returns a version of /@comp@/ that is writable
-(i.e. can be modified). Will either return /@comp@/ right away, or create a
-new writable copy of /@comp@/ and unref /@comp@/ itself. All the contained
-rectangles will also be copied, but the actual overlay pixel data buffers
-contained in the rectangles are not copied.
--}
-videoOverlayCompositionMakeWritable ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' to copy -}
-    -> m VideoOverlayComposition
-    {- ^ __Returns:__ a writable 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition'
-    equivalent to /@comp@/. -}
-videoOverlayCompositionMakeWritable comp = liftIO $ do
-    comp' <- B.ManagedPtr.disownBoxed comp
-    result <- gst_video_overlay_composition_make_writable comp'
-    checkUnexpectedReturnNULL "videoOverlayCompositionMakeWritable" result
-    result' <- (wrapBoxed VideoOverlayComposition) result
-    touchManagedPtr comp
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionMakeWritableMethodInfo
-instance (signature ~ (m VideoOverlayComposition), MonadIO m) => O.MethodInfo VideoOverlayCompositionMakeWritableMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionMakeWritable
-
-#endif
-
--- method VideoOverlayComposition::n_rectangles
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "comp", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayComposition", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_n_rectangles" gst_video_overlay_composition_n_rectangles :: 
-    Ptr VideoOverlayComposition ->          -- comp : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayComposition"})
-    IO Word32
-
-{- |
-Returns the number of 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle'\<!-- -->s contained in /@comp@/.
--}
-videoOverlayCompositionNRectangles ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayComposition
-    {- ^ /@comp@/: a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' -}
-    -> m Word32
-    {- ^ __Returns:__ the number of rectangles -}
-videoOverlayCompositionNRectangles comp = liftIO $ do
-    comp' <- unsafeManagedPtrGetPtr comp
-    result <- gst_video_overlay_composition_n_rectangles comp'
-    touchManagedPtr comp
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionNRectanglesMethodInfo
-instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo VideoOverlayCompositionNRectanglesMethodInfo VideoOverlayComposition signature where
-    overloadedMethod _ = videoOverlayCompositionNRectangles
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoOverlayCompositionMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoOverlayCompositionMethod "addRectangle" o = VideoOverlayCompositionAddRectangleMethodInfo
-    ResolveVideoOverlayCompositionMethod "blend" o = VideoOverlayCompositionBlendMethodInfo
-    ResolveVideoOverlayCompositionMethod "copy" o = VideoOverlayCompositionCopyMethodInfo
-    ResolveVideoOverlayCompositionMethod "makeWritable" o = VideoOverlayCompositionMakeWritableMethodInfo
-    ResolveVideoOverlayCompositionMethod "nRectangles" o = VideoOverlayCompositionNRectanglesMethodInfo
-    ResolveVideoOverlayCompositionMethod "getRectangle" o = VideoOverlayCompositionGetRectangleMethodInfo
-    ResolveVideoOverlayCompositionMethod "getSeqnum" o = VideoOverlayCompositionGetSeqnumMethodInfo
-    ResolveVideoOverlayCompositionMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoOverlayCompositionMethod t VideoOverlayComposition, O.MethodInfo info VideoOverlayComposition p) => OL.IsLabel t (VideoOverlayComposition -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoOverlayComposition.hs-boot b/GI/GstVideo/Structs/VideoOverlayComposition.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoOverlayComposition.hs-boot
+++ /dev/null
@@ -1,47 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoOverlayComposition 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoOverlayComposition = VideoOverlayComposition (ManagedPtr VideoOverlayComposition)
-instance BoxedObject VideoOverlayComposition where
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionAddRectangleMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionBlendMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionGetRectangleMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionGetSeqnumMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionMakeWritableMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionNRectanglesMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoOverlayCompositionMeta.hs b/GI/GstVideo/Structs/VideoOverlayCompositionMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoOverlayCompositionMeta.hs
+++ /dev/null
@@ -1,242 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata describing image overlay data.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoOverlayCompositionMeta
-    ( 
-
--- * Exported types
-    VideoOverlayCompositionMeta(..)         ,
-    newZeroVideoOverlayCompositionMeta      ,
-    noVideoOverlayCompositionMeta           ,
-
-
- -- * Methods
--- ** getInfo #method:getInfo#
-
-    videoOverlayCompositionMetaGetInfo      ,
-
-
-
-
- -- * Properties
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoOverlayCompositionMetaMeta      ,
-#if ENABLE_OVERLOADING
-    videoOverlayCompositionMeta_meta        ,
-#endif
-
-
--- ** overlay #attr:overlay#
-{- | the attached 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition'
--}
-    clearVideoOverlayCompositionMetaOverlay ,
-    getVideoOverlayCompositionMetaOverlay   ,
-    setVideoOverlayCompositionMetaOverlay   ,
-#if ENABLE_OVERLOADING
-    videoOverlayCompositionMeta_overlay     ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoOverlayComposition as GstVideo.VideoOverlayComposition
-
--- | Memory-managed wrapper type.
-newtype VideoOverlayCompositionMeta = VideoOverlayCompositionMeta (ManagedPtr VideoOverlayCompositionMeta)
-instance WrappedPtr VideoOverlayCompositionMeta where
-    wrappedPtrCalloc = callocBytes 24
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 24 >=> wrapPtr VideoOverlayCompositionMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoOverlayCompositionMeta` struct initialized to zero.
-newZeroVideoOverlayCompositionMeta :: MonadIO m => m VideoOverlayCompositionMeta
-newZeroVideoOverlayCompositionMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoOverlayCompositionMeta
-
-instance tag ~ 'AttrSet => Constructible VideoOverlayCompositionMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoOverlayCompositionMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoOverlayCompositionMeta`.
-noVideoOverlayCompositionMeta :: Maybe VideoOverlayCompositionMeta
-noVideoOverlayCompositionMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoOverlayCompositionMeta #meta
-@
--}
-getVideoOverlayCompositionMetaMeta :: MonadIO m => VideoOverlayCompositionMeta -> m Gst.Meta.Meta
-getVideoOverlayCompositionMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionMetaMetaFieldInfo
-instance AttrInfo VideoOverlayCompositionMetaMetaFieldInfo where
-    type AttrAllowedOps VideoOverlayCompositionMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoOverlayCompositionMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoOverlayCompositionMetaMetaFieldInfo = (~) VideoOverlayCompositionMeta
-    type AttrGetType VideoOverlayCompositionMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoOverlayCompositionMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoOverlayCompositionMetaMetaFieldInfo = VideoOverlayCompositionMeta
-    attrGet _ = getVideoOverlayCompositionMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoOverlayCompositionMeta_meta :: AttrLabelProxy "meta"
-videoOverlayCompositionMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@overlay@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoOverlayCompositionMeta #overlay
-@
--}
-getVideoOverlayCompositionMetaOverlay :: MonadIO m => VideoOverlayCompositionMeta -> m (Maybe GstVideo.VideoOverlayComposition.VideoOverlayComposition)
-getVideoOverlayCompositionMetaOverlay s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO (Ptr GstVideo.VideoOverlayComposition.VideoOverlayComposition)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed GstVideo.VideoOverlayComposition.VideoOverlayComposition) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@overlay@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoOverlayCompositionMeta [ #overlay 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoOverlayCompositionMetaOverlay :: MonadIO m => VideoOverlayCompositionMeta -> Ptr GstVideo.VideoOverlayComposition.VideoOverlayComposition -> m ()
-setVideoOverlayCompositionMetaOverlay s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Ptr GstVideo.VideoOverlayComposition.VideoOverlayComposition)
-
-{- |
-Set the value of the “@overlay@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #overlay
-@
--}
-clearVideoOverlayCompositionMetaOverlay :: MonadIO m => VideoOverlayCompositionMeta -> m ()
-clearVideoOverlayCompositionMetaOverlay s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (FP.nullPtr :: Ptr GstVideo.VideoOverlayComposition.VideoOverlayComposition)
-
-#if ENABLE_OVERLOADING
-data VideoOverlayCompositionMetaOverlayFieldInfo
-instance AttrInfo VideoOverlayCompositionMetaOverlayFieldInfo where
-    type AttrAllowedOps VideoOverlayCompositionMetaOverlayFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoOverlayCompositionMetaOverlayFieldInfo = (~) (Ptr GstVideo.VideoOverlayComposition.VideoOverlayComposition)
-    type AttrBaseTypeConstraint VideoOverlayCompositionMetaOverlayFieldInfo = (~) VideoOverlayCompositionMeta
-    type AttrGetType VideoOverlayCompositionMetaOverlayFieldInfo = Maybe GstVideo.VideoOverlayComposition.VideoOverlayComposition
-    type AttrLabel VideoOverlayCompositionMetaOverlayFieldInfo = "overlay"
-    type AttrOrigin VideoOverlayCompositionMetaOverlayFieldInfo = VideoOverlayCompositionMeta
-    attrGet _ = getVideoOverlayCompositionMetaOverlay
-    attrSet _ = setVideoOverlayCompositionMetaOverlay
-    attrConstruct = undefined
-    attrClear _ = clearVideoOverlayCompositionMetaOverlay
-
-videoOverlayCompositionMeta_overlay :: AttrLabelProxy "overlay"
-videoOverlayCompositionMeta_overlay = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoOverlayCompositionMeta
-type instance O.AttributeList VideoOverlayCompositionMeta = VideoOverlayCompositionMetaAttributeList
-type VideoOverlayCompositionMetaAttributeList = ('[ '("meta", VideoOverlayCompositionMetaMetaFieldInfo), '("overlay", VideoOverlayCompositionMetaOverlayFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoOverlayCompositionMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_composition_meta_get_info" gst_video_overlay_composition_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoOverlayCompositionMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoOverlayCompositionMetaGetInfo  = liftIO $ do
-    result <- gst_video_overlay_composition_meta_get_info
-    checkUnexpectedReturnNULL "videoOverlayCompositionMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoOverlayCompositionMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoOverlayCompositionMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoOverlayCompositionMetaMethod t VideoOverlayCompositionMeta, O.MethodInfo info VideoOverlayCompositionMeta p) => OL.IsLabel t (VideoOverlayCompositionMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoOverlayCompositionMeta.hs-boot b/GI/GstVideo/Structs/VideoOverlayCompositionMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoOverlayCompositionMeta.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoOverlayCompositionMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoOverlayCompositionMeta = VideoOverlayCompositionMeta (ManagedPtr VideoOverlayCompositionMeta)
-instance WrappedPtr VideoOverlayCompositionMeta where
diff --git a/GI/GstVideo/Structs/VideoOverlayRectangle.hs b/GI/GstVideo/Structs/VideoOverlayRectangle.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoOverlayRectangle.hs
+++ /dev/null
@@ -1,868 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-An opaque video overlay rectangle object. A rectangle contains a single
-overlay rectangle which can be added to a composition.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoOverlayRectangle
-    ( 
-
--- * Exported types
-    VideoOverlayRectangle(..)               ,
-    noVideoOverlayRectangle                 ,
-
-
- -- * Methods
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleCopyMethodInfo     ,
-#endif
-    videoOverlayRectangleCopy               ,
-
-
--- ** getFlags #method:getFlags#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetFlagsMethodInfo ,
-#endif
-    videoOverlayRectangleGetFlags           ,
-
-
--- ** getGlobalAlpha #method:getGlobalAlpha#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetGlobalAlphaMethodInfo,
-#endif
-    videoOverlayRectangleGetGlobalAlpha     ,
-
-
--- ** getPixelsArgb #method:getPixelsArgb#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetPixelsArgbMethodInfo,
-#endif
-    videoOverlayRectangleGetPixelsArgb      ,
-
-
--- ** getPixelsAyuv #method:getPixelsAyuv#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetPixelsAyuvMethodInfo,
-#endif
-    videoOverlayRectangleGetPixelsAyuv      ,
-
-
--- ** getPixelsRaw #method:getPixelsRaw#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetPixelsRawMethodInfo,
-#endif
-    videoOverlayRectangleGetPixelsRaw       ,
-
-
--- ** getPixelsUnscaledArgb #method:getPixelsUnscaledArgb#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetPixelsUnscaledArgbMethodInfo,
-#endif
-    videoOverlayRectangleGetPixelsUnscaledArgb,
-
-
--- ** getPixelsUnscaledAyuv #method:getPixelsUnscaledAyuv#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetPixelsUnscaledAyuvMethodInfo,
-#endif
-    videoOverlayRectangleGetPixelsUnscaledAyuv,
-
-
--- ** getPixelsUnscaledRaw #method:getPixelsUnscaledRaw#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetPixelsUnscaledRawMethodInfo,
-#endif
-    videoOverlayRectangleGetPixelsUnscaledRaw,
-
-
--- ** getRenderRectangle #method:getRenderRectangle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetRenderRectangleMethodInfo,
-#endif
-    videoOverlayRectangleGetRenderRectangle ,
-
-
--- ** getSeqnum #method:getSeqnum#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleGetSeqnumMethodInfo,
-#endif
-    videoOverlayRectangleGetSeqnum          ,
-
-
--- ** newRaw #method:newRaw#
-
-    videoOverlayRectangleNewRaw             ,
-
-
--- ** setGlobalAlpha #method:setGlobalAlpha#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleSetGlobalAlphaMethodInfo,
-#endif
-    videoOverlayRectangleSetGlobalAlpha     ,
-
-
--- ** setRenderRectangle #method:setRenderRectangle#
-
-#if ENABLE_OVERLOADING
-    VideoOverlayRectangleSetRenderRectangleMethodInfo,
-#endif
-    videoOverlayRectangleSetRenderRectangle ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Buffer as Gst.Buffer
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-
--- | Memory-managed wrapper type.
-newtype VideoOverlayRectangle = VideoOverlayRectangle (ManagedPtr VideoOverlayRectangle)
-foreign import ccall "gst_video_overlay_rectangle_get_type" c_gst_video_overlay_rectangle_get_type :: 
-    IO GType
-
-instance BoxedObject VideoOverlayRectangle where
-    boxedType _ = c_gst_video_overlay_rectangle_get_type
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoOverlayRectangle`.
-noVideoOverlayRectangle :: Maybe VideoOverlayRectangle
-noVideoOverlayRectangle = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoOverlayRectangle
-type instance O.AttributeList VideoOverlayRectangle = VideoOverlayRectangleAttributeList
-type VideoOverlayRectangleAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoOverlayRectangle::new_raw
--- method type : Constructor
--- Args : [Arg {argCName = "pixels", argType = TInterface (Name {namespace = "Gst", name = "Buffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstBuffer pointing to the pixel memory", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the X co-ordinate on the video where the top-left corner of this\n    overlay rectangle should be rendered to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the Y co-ordinate on the video where the top-left corner of this\n    overlay rectangle should be rendered to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the render width of this rectangle on the video", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the render height of this rectangle on the video", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_new_raw" gst_video_overlay_rectangle_new_raw :: 
-    Ptr Gst.Buffer.Buffer ->                -- pixels : TInterface (Name {namespace = "Gst", name = "Buffer"})
-    Int32 ->                                -- render_x : TBasicType TInt
-    Int32 ->                                -- render_y : TBasicType TInt
-    Word32 ->                               -- render_width : TBasicType TUInt
-    Word32 ->                               -- render_height : TBasicType TUInt
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr VideoOverlayRectangle)
-
-{- |
-Creates a new video overlay rectangle with ARGB or AYUV pixel data.
-The layout in case of ARGB of the components in memory is B-G-R-A
-on little-endian platforms
-(corresponding to @/GST_VIDEO_FORMAT_BGRA/@) and A-R-G-B on big-endian
-platforms (corresponding to @/GST_VIDEO_FORMAT_ARGB/@). In other words,
-pixels are treated as 32-bit words and the lowest 8 bits then contain
-the blue component value and the highest 8 bits contain the alpha
-component value. Unless specified in the flags, the RGB values are
-non-premultiplied. This is the format that is used by most hardware,
-and also many rendering libraries such as Cairo, for example.
-The pixel data buffer must have 'GI.GstVideo.Structs.VideoMeta.VideoMeta' set.
--}
-videoOverlayRectangleNewRaw ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Gst.Buffer.Buffer
-    {- ^ /@pixels@/: a 'GI.Gst.Structs.Buffer.Buffer' pointing to the pixel memory -}
-    -> Int32
-    {- ^ /@renderX@/: the X co-ordinate on the video where the top-left corner of this
-    overlay rectangle should be rendered to -}
-    -> Int32
-    {- ^ /@renderY@/: the Y co-ordinate on the video where the top-left corner of this
-    overlay rectangle should be rendered to -}
-    -> Word32
-    {- ^ /@renderWidth@/: the render width of this rectangle on the video -}
-    -> Word32
-    {- ^ /@renderHeight@/: the render height of this rectangle on the video -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags -}
-    -> m VideoOverlayRectangle
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle'. Unref with
-    @/gst_video_overlay_rectangle_unref()/@ when no longer needed. -}
-videoOverlayRectangleNewRaw pixels renderX renderY renderWidth renderHeight flags = liftIO $ do
-    pixels' <- unsafeManagedPtrGetPtr pixels
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_new_raw pixels' renderX renderY renderWidth renderHeight flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleNewRaw" result
-    result' <- (wrapBoxed VideoOverlayRectangle) result
-    touchManagedPtr pixels
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoOverlayRectangle::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle to copy", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_copy" gst_video_overlay_rectangle_copy :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    IO (Ptr VideoOverlayRectangle)
-
-{- |
-Makes a copy of /@rectangle@/, so that it is possible to modify it
-(e.g. to change the render co-ordinates or render dimension). The
-actual overlay pixel data buffers contained in the rectangle are not
-copied.
--}
-videoOverlayRectangleCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' to copy -}
-    -> m VideoOverlayRectangle
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' equivalent
-    to /@rectangle@/. -}
-videoOverlayRectangleCopy rectangle = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    result <- gst_video_overlay_rectangle_copy rectangle'
-    checkUnexpectedReturnNULL "videoOverlayRectangleCopy" result
-    result' <- (wrapBoxed VideoOverlayRectangle) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleCopyMethodInfo
-instance (signature ~ (m VideoOverlayRectangle), MonadIO m) => O.MethodInfo VideoOverlayRectangleCopyMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleCopy
-
-#endif
-
--- method VideoOverlayRectangle::get_flags
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_flags" gst_video_overlay_rectangle_get_flags :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    IO CUInt
-
-{- |
-Retrieves the flags associated with a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle'.
-This is useful if the caller can handle both premultiplied alpha and
-non premultiplied alpha, for example. By knowing whether the rectangle
-uses premultiplied or not, it can request the pixel data in the format
-it is stored in, to avoid unnecessary conversion.
--}
-videoOverlayRectangleGetFlags ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> m [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ __Returns:__ the 'GI.GstVideo.Flags.VideoOverlayFormatFlags' associated with the rectangle. -}
-videoOverlayRectangleGetFlags rectangle = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    result <- gst_video_overlay_rectangle_get_flags rectangle'
-    let result' = wordToGFlags result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetFlagsMethodInfo
-instance (signature ~ (m [GstVideo.Flags.VideoOverlayFormatFlags]), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetFlagsMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetFlags
-
-#endif
-
--- method VideoOverlayRectangle::get_global_alpha
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TFloat)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_global_alpha" gst_video_overlay_rectangle_get_global_alpha :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    IO CFloat
-
-{- |
-Retrieves the global-alpha value associated with a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle'.
--}
-videoOverlayRectangleGetGlobalAlpha ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> m Float
-    {- ^ __Returns:__ the global-alpha value associated with the rectangle. -}
-videoOverlayRectangleGetGlobalAlpha rectangle = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    result <- gst_video_overlay_rectangle_get_global_alpha rectangle'
-    let result' = realToFrac result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetGlobalAlphaMethodInfo
-instance (signature ~ (m Float), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetGlobalAlphaMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetGlobalAlpha
-
-#endif
-
--- method VideoOverlayRectangle::get_pixels_argb
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags\n   If a global_alpha value != 1 is set for the rectangle, the caller\n   should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag\n   if he wants to apply global-alpha himself. If the flag is not set\n   global_alpha is applied internally before returning the pixel-data.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_pixels_argb" gst_video_overlay_rectangle_get_pixels_argb :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-/No description available in the introspection data./
--}
-videoOverlayRectangleGetPixelsArgb ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags
-   If a global_alpha value != 1 is set for the rectangle, the caller
-   should set the @/GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA/@ flag
-   if he wants to apply global-alpha himself. If the flag is not set
-   global_alpha is applied internally before returning the pixel-data. -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Buffer.Buffer' holding the ARGB pixel data with
-   width and height of the render dimensions as per
-   'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleGetRenderRectangle'. This function does
-   not return a reference, the caller should obtain a reference of her own
-   with @/gst_buffer_ref()/@ if needed. -}
-videoOverlayRectangleGetPixelsArgb rectangle flags = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_get_pixels_argb rectangle' flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleGetPixelsArgb" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsArgbMethodInfo
-instance (signature ~ ([GstVideo.Flags.VideoOverlayFormatFlags] -> m Gst.Buffer.Buffer), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetPixelsArgbMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetPixelsArgb
-
-#endif
-
--- method VideoOverlayRectangle::get_pixels_ayuv
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags\n   If a global_alpha value != 1 is set for the rectangle, the caller\n   should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag\n   if he wants to apply global-alpha himself. If the flag is not set\n   global_alpha is applied internally before returning the pixel-data.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_pixels_ayuv" gst_video_overlay_rectangle_get_pixels_ayuv :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-/No description available in the introspection data./
--}
-videoOverlayRectangleGetPixelsAyuv ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags
-   If a global_alpha value != 1 is set for the rectangle, the caller
-   should set the @/GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA/@ flag
-   if he wants to apply global-alpha himself. If the flag is not set
-   global_alpha is applied internally before returning the pixel-data. -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Buffer.Buffer' holding the AYUV pixel data with
-   width and height of the render dimensions as per
-   'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleGetRenderRectangle'. This function does
-   not return a reference, the caller should obtain a reference of her own
-   with @/gst_buffer_ref()/@ if needed. -}
-videoOverlayRectangleGetPixelsAyuv rectangle flags = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_get_pixels_ayuv rectangle' flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleGetPixelsAyuv" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsAyuvMethodInfo
-instance (signature ~ ([GstVideo.Flags.VideoOverlayFormatFlags] -> m Gst.Buffer.Buffer), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetPixelsAyuvMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetPixelsAyuv
-
-#endif
-
--- method VideoOverlayRectangle::get_pixels_raw
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags\n   If a global_alpha value != 1 is set for the rectangle, the caller\n   should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag\n   if he wants to apply global-alpha himself. If the flag is not set\n   global_alpha is applied internally before returning the pixel-data.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_pixels_raw" gst_video_overlay_rectangle_get_pixels_raw :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-/No description available in the introspection data./
--}
-videoOverlayRectangleGetPixelsRaw ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags
-   If a global_alpha value != 1 is set for the rectangle, the caller
-   should set the @/GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA/@ flag
-   if he wants to apply global-alpha himself. If the flag is not set
-   global_alpha is applied internally before returning the pixel-data. -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Buffer.Buffer' holding the pixel data with
-   format as originally provided and specified in video meta with
-   width and height of the render dimensions as per
-   'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleGetRenderRectangle'. This function does
-   not return a reference, the caller should obtain a reference of her own
-   with @/gst_buffer_ref()/@ if needed. -}
-videoOverlayRectangleGetPixelsRaw rectangle flags = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_get_pixels_raw rectangle' flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleGetPixelsRaw" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsRawMethodInfo
-instance (signature ~ ([GstVideo.Flags.VideoOverlayFormatFlags] -> m Gst.Buffer.Buffer), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetPixelsRawMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetPixelsRaw
-
-#endif
-
--- method VideoOverlayRectangle::get_pixels_unscaled_argb
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags.\n   If a global_alpha value != 1 is set for the rectangle, the caller\n   should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag\n   if he wants to apply global-alpha himself. If the flag is not set\n   global_alpha is applied internally before returning the pixel-data.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_pixels_unscaled_argb" gst_video_overlay_rectangle_get_pixels_unscaled_argb :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-Retrieves the pixel data as it is. This is useful if the caller can
-do the scaling itself when handling the overlaying. The rectangle will
-need to be scaled to the render dimensions, which can be retrieved using
-'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleGetRenderRectangle'.
--}
-videoOverlayRectangleGetPixelsUnscaledArgb ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags.
-   If a global_alpha value != 1 is set for the rectangle, the caller
-   should set the @/GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA/@ flag
-   if he wants to apply global-alpha himself. If the flag is not set
-   global_alpha is applied internally before returning the pixel-data. -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Buffer.Buffer' holding the ARGB pixel data with
-   'GI.GstVideo.Structs.VideoMeta.VideoMeta' set. This function does not return a reference, the caller
-   should obtain a reference of her own with @/gst_buffer_ref()/@ if needed. -}
-videoOverlayRectangleGetPixelsUnscaledArgb rectangle flags = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_get_pixels_unscaled_argb rectangle' flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleGetPixelsUnscaledArgb" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsUnscaledArgbMethodInfo
-instance (signature ~ ([GstVideo.Flags.VideoOverlayFormatFlags] -> m Gst.Buffer.Buffer), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetPixelsUnscaledArgbMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetPixelsUnscaledArgb
-
-#endif
-
--- method VideoOverlayRectangle::get_pixels_unscaled_ayuv
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags.\n   If a global_alpha value != 1 is set for the rectangle, the caller\n   should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag\n   if he wants to apply global-alpha himself. If the flag is not set\n   global_alpha is applied internally before returning the pixel-data.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_pixels_unscaled_ayuv" gst_video_overlay_rectangle_get_pixels_unscaled_ayuv :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-Retrieves the pixel data as it is. This is useful if the caller can
-do the scaling itself when handling the overlaying. The rectangle will
-need to be scaled to the render dimensions, which can be retrieved using
-'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleGetRenderRectangle'.
--}
-videoOverlayRectangleGetPixelsUnscaledAyuv ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags.
-   If a global_alpha value != 1 is set for the rectangle, the caller
-   should set the @/GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA/@ flag
-   if he wants to apply global-alpha himself. If the flag is not set
-   global_alpha is applied internally before returning the pixel-data. -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Buffer.Buffer' holding the AYUV pixel data with
-   'GI.GstVideo.Structs.VideoMeta.VideoMeta' set. This function does not return a reference, the caller
-   should obtain a reference of her own with @/gst_buffer_ref()/@ if needed. -}
-videoOverlayRectangleGetPixelsUnscaledAyuv rectangle flags = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_get_pixels_unscaled_ayuv rectangle' flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleGetPixelsUnscaledAyuv" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsUnscaledAyuvMethodInfo
-instance (signature ~ ([GstVideo.Flags.VideoOverlayFormatFlags] -> m Gst.Buffer.Buffer), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetPixelsUnscaledAyuvMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetPixelsUnscaledAyuv
-
-#endif
-
--- method VideoOverlayRectangle::get_pixels_unscaled_raw
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags.\n   If a global_alpha value != 1 is set for the rectangle, the caller\n   should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag\n   if he wants to apply global-alpha himself. If the flag is not set\n   global_alpha is applied internally before returning the pixel-data.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Buffer"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_pixels_unscaled_raw" gst_video_overlay_rectangle_get_pixels_unscaled_raw :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayFormatFlags"})
-    IO (Ptr Gst.Buffer.Buffer)
-
-{- |
-Retrieves the pixel data as it is. This is useful if the caller can
-do the scaling itself when handling the overlaying. The rectangle will
-need to be scaled to the render dimensions, which can be retrieved using
-'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleGetRenderRectangle'.
--}
-videoOverlayRectangleGetPixelsUnscaledRaw ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> [GstVideo.Flags.VideoOverlayFormatFlags]
-    {- ^ /@flags@/: flags.
-   If a global_alpha value != 1 is set for the rectangle, the caller
-   should set the @/GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA/@ flag
-   if he wants to apply global-alpha himself. If the flag is not set
-   global_alpha is applied internally before returning the pixel-data. -}
-    -> m Gst.Buffer.Buffer
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Buffer.Buffer' holding the pixel data with
-   'GI.GstVideo.Structs.VideoMeta.VideoMeta' set. This function does not return a reference, the caller
-   should obtain a reference of her own with @/gst_buffer_ref()/@ if needed. -}
-videoOverlayRectangleGetPixelsUnscaledRaw rectangle flags = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let flags' = gflagsToWord flags
-    result <- gst_video_overlay_rectangle_get_pixels_unscaled_raw rectangle' flags'
-    checkUnexpectedReturnNULL "videoOverlayRectangleGetPixelsUnscaledRaw" result
-    result' <- (newBoxed Gst.Buffer.Buffer) result
-    touchManagedPtr rectangle
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsUnscaledRawMethodInfo
-instance (signature ~ ([GstVideo.Flags.VideoOverlayFormatFlags] -> m Gst.Buffer.Buffer), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetPixelsUnscaledRawMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetPixelsUnscaledRaw
-
-#endif
-
--- method VideoOverlayRectangle::get_render_rectangle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_x", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address where to store the X render offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "render_y", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address where to store the Y render offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "render_width", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address where to store the render width", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "render_height", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "address where to store the render height", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_render_rectangle" gst_video_overlay_rectangle_get_render_rectangle :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    Ptr Int32 ->                            -- render_x : TBasicType TInt
-    Ptr Int32 ->                            -- render_y : TBasicType TInt
-    Ptr Word32 ->                           -- render_width : TBasicType TUInt
-    Ptr Word32 ->                           -- render_height : TBasicType TUInt
-    IO CInt
-
-{- |
-Retrieves the render position and render dimension of the overlay
-rectangle on the video.
--}
-videoOverlayRectangleGetRenderRectangle ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> m ((Bool, Int32, Int32, Word32, Word32))
-    {- ^ __Returns:__ TRUE if valid render dimensions were retrieved. -}
-videoOverlayRectangleGetRenderRectangle rectangle = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    renderX <- allocMem :: IO (Ptr Int32)
-    renderY <- allocMem :: IO (Ptr Int32)
-    renderWidth <- allocMem :: IO (Ptr Word32)
-    renderHeight <- allocMem :: IO (Ptr Word32)
-    result <- gst_video_overlay_rectangle_get_render_rectangle rectangle' renderX renderY renderWidth renderHeight
-    let result' = (/= 0) result
-    renderX' <- peek renderX
-    renderY' <- peek renderY
-    renderWidth' <- peek renderWidth
-    renderHeight' <- peek renderHeight
-    touchManagedPtr rectangle
-    freeMem renderX
-    freeMem renderY
-    freeMem renderWidth
-    freeMem renderHeight
-    return (result', renderX', renderY', renderWidth', renderHeight')
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetRenderRectangleMethodInfo
-instance (signature ~ (m ((Bool, Int32, Int32, Word32, Word32))), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetRenderRectangleMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetRenderRectangle
-
-#endif
-
--- method VideoOverlayRectangle::get_seqnum
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_get_seqnum" gst_video_overlay_rectangle_get_seqnum :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    IO Word32
-
-{- |
-Returns the sequence number of this rectangle. Sequence numbers are
-monotonically increasing and unique for overlay compositions and rectangles
-(meaning there will never be a rectangle with the same sequence number as
-a composition).
-
-Using the sequence number of a rectangle as an indicator for changed
-pixel-data of a rectangle is dangereous. Some API calls, like e.g.
-'GI.GstVideo.Structs.VideoOverlayRectangle.videoOverlayRectangleSetGlobalAlpha', automatically update
-the per rectangle sequence number, which is misleading for renderers\/
-consumers, that handle global-alpha themselves. For them  the
-pixel-data returned by gst_video_overlay_rectangle_get_pixels_*()
-wont be different for different global-alpha values. In this case a
-renderer could also use the GstBuffer pointers as a hint for changed
-pixel-data.
--}
-videoOverlayRectangleGetSeqnum ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> m Word32
-    {- ^ __Returns:__ the sequence number of /@rectangle@/ -}
-videoOverlayRectangleGetSeqnum rectangle = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    result <- gst_video_overlay_rectangle_get_seqnum rectangle'
-    touchManagedPtr rectangle
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetSeqnumMethodInfo
-instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo VideoOverlayRectangleGetSeqnumMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleGetSeqnum
-
-#endif
-
--- method VideoOverlayRectangle::set_global_alpha
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "global_alpha", argType = TBasicType TFloat, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Global alpha value (0 to 1.0)", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_set_global_alpha" gst_video_overlay_rectangle_set_global_alpha :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    CFloat ->                               -- global_alpha : TBasicType TFloat
-    IO ()
-
-{- |
-Sets the global alpha value associated with a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle'. Per-
-pixel alpha values are multiplied with this value. Valid
-values: 0 \<= global_alpha \<= 1; 1 to deactivate.
-
-/@rectangle@/ must be writable, meaning its refcount must be 1. You can
-make the rectangles inside a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' writable using
-'GI.GstVideo.Structs.VideoOverlayComposition.videoOverlayCompositionMakeWritable' or
-'GI.GstVideo.Structs.VideoOverlayComposition.videoOverlayCompositionCopy'.
--}
-videoOverlayRectangleSetGlobalAlpha ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> Float
-    {- ^ /@globalAlpha@/: Global alpha value (0 to 1.0) -}
-    -> m ()
-videoOverlayRectangleSetGlobalAlpha rectangle globalAlpha = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    let globalAlpha' = realToFrac globalAlpha
-    gst_video_overlay_rectangle_set_global_alpha rectangle' globalAlpha'
-    touchManagedPtr rectangle
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleSetGlobalAlphaMethodInfo
-instance (signature ~ (Float -> m ()), MonadIO m) => O.MethodInfo VideoOverlayRectangleSetGlobalAlphaMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleSetGlobalAlpha
-
-#endif
-
--- method VideoOverlayRectangle::set_render_rectangle
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "rectangle", argType = TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoOverlayRectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_x", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "render X position of rectangle on video", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_y", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "render Y position of rectangle on video", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "render width of rectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "render_height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "render height of rectangle", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_overlay_rectangle_set_render_rectangle" gst_video_overlay_rectangle_set_render_rectangle :: 
-    Ptr VideoOverlayRectangle ->            -- rectangle : TInterface (Name {namespace = "GstVideo", name = "VideoOverlayRectangle"})
-    Int32 ->                                -- render_x : TBasicType TInt
-    Int32 ->                                -- render_y : TBasicType TInt
-    Word32 ->                               -- render_width : TBasicType TUInt
-    Word32 ->                               -- render_height : TBasicType TUInt
-    IO ()
-
-{- |
-Sets the render position and dimensions of the rectangle on the video.
-This function is mainly for elements that modify the size of the video
-in some way (e.g. through scaling or cropping) and need to adjust the
-details of any overlays to match the operation that changed the size.
-
-/@rectangle@/ must be writable, meaning its refcount must be 1. You can
-make the rectangles inside a 'GI.GstVideo.Structs.VideoOverlayComposition.VideoOverlayComposition' writable using
-'GI.GstVideo.Structs.VideoOverlayComposition.videoOverlayCompositionMakeWritable' or
-'GI.GstVideo.Structs.VideoOverlayComposition.videoOverlayCompositionCopy'.
--}
-videoOverlayRectangleSetRenderRectangle ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoOverlayRectangle
-    {- ^ /@rectangle@/: a 'GI.GstVideo.Structs.VideoOverlayRectangle.VideoOverlayRectangle' -}
-    -> Int32
-    {- ^ /@renderX@/: render X position of rectangle on video -}
-    -> Int32
-    {- ^ /@renderY@/: render Y position of rectangle on video -}
-    -> Word32
-    {- ^ /@renderWidth@/: render width of rectangle -}
-    -> Word32
-    {- ^ /@renderHeight@/: render height of rectangle -}
-    -> m ()
-videoOverlayRectangleSetRenderRectangle rectangle renderX renderY renderWidth renderHeight = liftIO $ do
-    rectangle' <- unsafeManagedPtrGetPtr rectangle
-    gst_video_overlay_rectangle_set_render_rectangle rectangle' renderX renderY renderWidth renderHeight
-    touchManagedPtr rectangle
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleSetRenderRectangleMethodInfo
-instance (signature ~ (Int32 -> Int32 -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoOverlayRectangleSetRenderRectangleMethodInfo VideoOverlayRectangle signature where
-    overloadedMethod _ = videoOverlayRectangleSetRenderRectangle
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoOverlayRectangleMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoOverlayRectangleMethod "copy" o = VideoOverlayRectangleCopyMethodInfo
-    ResolveVideoOverlayRectangleMethod "getFlags" o = VideoOverlayRectangleGetFlagsMethodInfo
-    ResolveVideoOverlayRectangleMethod "getGlobalAlpha" o = VideoOverlayRectangleGetGlobalAlphaMethodInfo
-    ResolveVideoOverlayRectangleMethod "getPixelsArgb" o = VideoOverlayRectangleGetPixelsArgbMethodInfo
-    ResolveVideoOverlayRectangleMethod "getPixelsAyuv" o = VideoOverlayRectangleGetPixelsAyuvMethodInfo
-    ResolveVideoOverlayRectangleMethod "getPixelsRaw" o = VideoOverlayRectangleGetPixelsRawMethodInfo
-    ResolveVideoOverlayRectangleMethod "getPixelsUnscaledArgb" o = VideoOverlayRectangleGetPixelsUnscaledArgbMethodInfo
-    ResolveVideoOverlayRectangleMethod "getPixelsUnscaledAyuv" o = VideoOverlayRectangleGetPixelsUnscaledAyuvMethodInfo
-    ResolveVideoOverlayRectangleMethod "getPixelsUnscaledRaw" o = VideoOverlayRectangleGetPixelsUnscaledRawMethodInfo
-    ResolveVideoOverlayRectangleMethod "getRenderRectangle" o = VideoOverlayRectangleGetRenderRectangleMethodInfo
-    ResolveVideoOverlayRectangleMethod "getSeqnum" o = VideoOverlayRectangleGetSeqnumMethodInfo
-    ResolveVideoOverlayRectangleMethod "setGlobalAlpha" o = VideoOverlayRectangleSetGlobalAlphaMethodInfo
-    ResolveVideoOverlayRectangleMethod "setRenderRectangle" o = VideoOverlayRectangleSetRenderRectangleMethodInfo
-    ResolveVideoOverlayRectangleMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoOverlayRectangleMethod t VideoOverlayRectangle, O.MethodInfo info VideoOverlayRectangle p) => OL.IsLabel t (VideoOverlayRectangle -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoOverlayRectangle.hs-boot b/GI/GstVideo/Structs/VideoOverlayRectangle.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoOverlayRectangle.hs-boot
+++ /dev/null
@@ -1,65 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoOverlayRectangle 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoOverlayRectangle = VideoOverlayRectangle (ManagedPtr VideoOverlayRectangle)
-instance BoxedObject VideoOverlayRectangle where
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetFlagsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetGlobalAlphaMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsArgbMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsAyuvMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsRawMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsUnscaledArgbMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsUnscaledAyuvMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetPixelsUnscaledRawMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetRenderRectangleMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleGetSeqnumMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleSetGlobalAlphaMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoOverlayRectangleSetRenderRectangleMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoRectangle.hs b/GI/GstVideo/Structs/VideoRectangle.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoRectangle.hs
+++ /dev/null
@@ -1,311 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Helper structure representing a rectangular area.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoRectangle
-    ( 
-
--- * Exported types
-    VideoRectangle(..)                      ,
-    newZeroVideoRectangle                   ,
-    noVideoRectangle                        ,
-
-
- -- * Properties
--- ** h #attr:h#
-{- | height of the rectangle
--}
-    getVideoRectangleH                      ,
-    setVideoRectangleH                      ,
-#if ENABLE_OVERLOADING
-    videoRectangle_h                        ,
-#endif
-
-
--- ** w #attr:w#
-{- | width of the rectangle
--}
-    getVideoRectangleW                      ,
-    setVideoRectangleW                      ,
-#if ENABLE_OVERLOADING
-    videoRectangle_w                        ,
-#endif
-
-
--- ** x #attr:x#
-{- | X coordinate of rectangle\'s top-left point
--}
-    getVideoRectangleX                      ,
-    setVideoRectangleX                      ,
-#if ENABLE_OVERLOADING
-    videoRectangle_x                        ,
-#endif
-
-
--- ** y #attr:y#
-{- | Y coordinate of rectangle\'s top-left point
--}
-    getVideoRectangleY                      ,
-    setVideoRectangleY                      ,
-#if ENABLE_OVERLOADING
-    videoRectangle_y                        ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- | Memory-managed wrapper type.
-newtype VideoRectangle = VideoRectangle (ManagedPtr VideoRectangle)
-instance WrappedPtr VideoRectangle where
-    wrappedPtrCalloc = callocBytes 16
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 16 >=> wrapPtr VideoRectangle)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoRectangle` struct initialized to zero.
-newZeroVideoRectangle :: MonadIO m => m VideoRectangle
-newZeroVideoRectangle = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoRectangle
-
-instance tag ~ 'AttrSet => Constructible VideoRectangle tag where
-    new _ attrs = do
-        o <- newZeroVideoRectangle
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoRectangle`.
-noVideoRectangle :: Maybe VideoRectangle
-noVideoRectangle = Nothing
-
-{- |
-Get the value of the “@x@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRectangle #x
-@
--}
-getVideoRectangleX :: MonadIO m => VideoRectangle -> m Int32
-getVideoRectangleX s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@x@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRectangle [ #x 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRectangleX :: MonadIO m => VideoRectangle -> Int32 -> m ()
-setVideoRectangleX s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoRectangleXFieldInfo
-instance AttrInfo VideoRectangleXFieldInfo where
-    type AttrAllowedOps VideoRectangleXFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRectangleXFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoRectangleXFieldInfo = (~) VideoRectangle
-    type AttrGetType VideoRectangleXFieldInfo = Int32
-    type AttrLabel VideoRectangleXFieldInfo = "x"
-    type AttrOrigin VideoRectangleXFieldInfo = VideoRectangle
-    attrGet _ = getVideoRectangleX
-    attrSet _ = setVideoRectangleX
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRectangle_x :: AttrLabelProxy "x"
-videoRectangle_x = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@y@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRectangle #y
-@
--}
-getVideoRectangleY :: MonadIO m => VideoRectangle -> m Int32
-getVideoRectangleY s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 4) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@y@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRectangle [ #y 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRectangleY :: MonadIO m => VideoRectangle -> Int32 -> m ()
-setVideoRectangleY s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 4) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoRectangleYFieldInfo
-instance AttrInfo VideoRectangleYFieldInfo where
-    type AttrAllowedOps VideoRectangleYFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRectangleYFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoRectangleYFieldInfo = (~) VideoRectangle
-    type AttrGetType VideoRectangleYFieldInfo = Int32
-    type AttrLabel VideoRectangleYFieldInfo = "y"
-    type AttrOrigin VideoRectangleYFieldInfo = VideoRectangle
-    attrGet _ = getVideoRectangleY
-    attrSet _ = setVideoRectangleY
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRectangle_y :: AttrLabelProxy "y"
-videoRectangle_y = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@w@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRectangle #w
-@
--}
-getVideoRectangleW :: MonadIO m => VideoRectangle -> m Int32
-getVideoRectangleW s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@w@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRectangle [ #w 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRectangleW :: MonadIO m => VideoRectangle -> Int32 -> m ()
-setVideoRectangleW s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoRectangleWFieldInfo
-instance AttrInfo VideoRectangleWFieldInfo where
-    type AttrAllowedOps VideoRectangleWFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRectangleWFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoRectangleWFieldInfo = (~) VideoRectangle
-    type AttrGetType VideoRectangleWFieldInfo = Int32
-    type AttrLabel VideoRectangleWFieldInfo = "w"
-    type AttrOrigin VideoRectangleWFieldInfo = VideoRectangle
-    attrGet _ = getVideoRectangleW
-    attrSet _ = setVideoRectangleW
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRectangle_w :: AttrLabelProxy "w"
-videoRectangle_w = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@h@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRectangle #h
-@
--}
-getVideoRectangleH :: MonadIO m => VideoRectangle -> m Int32
-getVideoRectangleH s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 12) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@h@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRectangle [ #h 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRectangleH :: MonadIO m => VideoRectangle -> Int32 -> m ()
-setVideoRectangleH s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 12) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoRectangleHFieldInfo
-instance AttrInfo VideoRectangleHFieldInfo where
-    type AttrAllowedOps VideoRectangleHFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRectangleHFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoRectangleHFieldInfo = (~) VideoRectangle
-    type AttrGetType VideoRectangleHFieldInfo = Int32
-    type AttrLabel VideoRectangleHFieldInfo = "h"
-    type AttrOrigin VideoRectangleHFieldInfo = VideoRectangle
-    attrGet _ = getVideoRectangleH
-    attrSet _ = setVideoRectangleH
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRectangle_h :: AttrLabelProxy "h"
-videoRectangle_h = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoRectangle
-type instance O.AttributeList VideoRectangle = VideoRectangleAttributeList
-type VideoRectangleAttributeList = ('[ '("x", VideoRectangleXFieldInfo), '("y", VideoRectangleYFieldInfo), '("w", VideoRectangleWFieldInfo), '("h", VideoRectangleHFieldInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoRectangleMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoRectangleMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoRectangleMethod t VideoRectangle, O.MethodInfo info VideoRectangle p) => OL.IsLabel t (VideoRectangle -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoRectangle.hs-boot b/GI/GstVideo/Structs/VideoRectangle.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoRectangle.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoRectangle 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoRectangle = VideoRectangle (ManagedPtr VideoRectangle)
-instance WrappedPtr VideoRectangle where
diff --git a/GI/GstVideo/Structs/VideoRegionOfInterestMeta.hs b/GI/GstVideo/Structs/VideoRegionOfInterestMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoRegionOfInterestMeta.hs
+++ /dev/null
@@ -1,736 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata describing an image region of interest
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoRegionOfInterestMeta
-    ( 
-
--- * Exported types
-    VideoRegionOfInterestMeta(..)           ,
-    newZeroVideoRegionOfInterestMeta        ,
-    noVideoRegionOfInterestMeta             ,
-
-
- -- * Methods
--- ** addParam #method:addParam#
-
-#if ENABLE_OVERLOADING
-    VideoRegionOfInterestMetaAddParamMethodInfo,
-#endif
-    videoRegionOfInterestMetaAddParam       ,
-
-
--- ** getInfo #method:getInfo#
-
-    videoRegionOfInterestMetaGetInfo        ,
-
-
--- ** getParam #method:getParam#
-
-#if ENABLE_OVERLOADING
-    VideoRegionOfInterestMetaGetParamMethodInfo,
-#endif
-    videoRegionOfInterestMetaGetParam       ,
-
-
-
-
- -- * Properties
--- ** h #attr:h#
-{- | bounding box height
--}
-    getVideoRegionOfInterestMetaH           ,
-    setVideoRegionOfInterestMetaH           ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_h             ,
-#endif
-
-
--- ** id #attr:id#
-{- | identifier of this particular ROI
--}
-    getVideoRegionOfInterestMetaId          ,
-    setVideoRegionOfInterestMetaId          ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_id            ,
-#endif
-
-
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoRegionOfInterestMetaMeta        ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_meta          ,
-#endif
-
-
--- ** params #attr:params#
-{- | list of 'GI.Gst.Structs.Structure.Structure' containing element-specific params for downstream, see @/gst_video_region_of_interest_meta_add_params()/@. (Since: 1.14)
--}
-    clearVideoRegionOfInterestMetaParams    ,
-    getVideoRegionOfInterestMetaParams      ,
-    setVideoRegionOfInterestMetaParams      ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_params        ,
-#endif
-
-
--- ** parentId #attr:parentId#
-{- | identifier of its parent ROI, used f.i. for ROI hierarchisation.
--}
-    getVideoRegionOfInterestMetaParentId    ,
-    setVideoRegionOfInterestMetaParentId    ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_parentId      ,
-#endif
-
-
--- ** roiType #attr:roiType#
-{- | GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)
--}
-    getVideoRegionOfInterestMetaRoiType     ,
-    setVideoRegionOfInterestMetaRoiType     ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_roiType       ,
-#endif
-
-
--- ** w #attr:w#
-{- | bounding box width
--}
-    getVideoRegionOfInterestMetaW           ,
-    setVideoRegionOfInterestMetaW           ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_w             ,
-#endif
-
-
--- ** x #attr:x#
-{- | x component of upper-left corner
--}
-    getVideoRegionOfInterestMetaX           ,
-    setVideoRegionOfInterestMetaX           ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_x             ,
-#endif
-
-
--- ** y #attr:y#
-{- | y component of upper-left corner
--}
-    getVideoRegionOfInterestMetaY           ,
-    setVideoRegionOfInterestMetaY           ,
-#if ENABLE_OVERLOADING
-    videoRegionOfInterestMeta_y             ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-import qualified GI.Gst.Structs.Structure as Gst.Structure
-
--- | Memory-managed wrapper type.
-newtype VideoRegionOfInterestMeta = VideoRegionOfInterestMeta (ManagedPtr VideoRegionOfInterestMeta)
-instance WrappedPtr VideoRegionOfInterestMeta where
-    wrappedPtrCalloc = callocBytes 56
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 56 >=> wrapPtr VideoRegionOfInterestMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoRegionOfInterestMeta` struct initialized to zero.
-newZeroVideoRegionOfInterestMeta :: MonadIO m => m VideoRegionOfInterestMeta
-newZeroVideoRegionOfInterestMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoRegionOfInterestMeta
-
-instance tag ~ 'AttrSet => Constructible VideoRegionOfInterestMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoRegionOfInterestMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoRegionOfInterestMeta`.
-noVideoRegionOfInterestMeta :: Maybe VideoRegionOfInterestMeta
-noVideoRegionOfInterestMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #meta
-@
--}
-getVideoRegionOfInterestMetaMeta :: MonadIO m => VideoRegionOfInterestMeta -> m Gst.Meta.Meta
-getVideoRegionOfInterestMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaMetaFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaMetaFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaMetaFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoRegionOfInterestMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoRegionOfInterestMetaMetaFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_meta :: AttrLabelProxy "meta"
-videoRegionOfInterestMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@roi_type@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #roiType
-@
--}
-getVideoRegionOfInterestMetaRoiType :: MonadIO m => VideoRegionOfInterestMeta -> m Word32
-getVideoRegionOfInterestMetaRoiType s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@roi_type@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #roiType 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaRoiType :: MonadIO m => VideoRegionOfInterestMeta -> Word32 -> m ()
-setVideoRegionOfInterestMetaRoiType s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaRoiTypeFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaRoiTypeFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaRoiTypeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaRoiTypeFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaRoiTypeFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaRoiTypeFieldInfo = Word32
-    type AttrLabel VideoRegionOfInterestMetaRoiTypeFieldInfo = "roi_type"
-    type AttrOrigin VideoRegionOfInterestMetaRoiTypeFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaRoiType
-    attrSet _ = setVideoRegionOfInterestMetaRoiType
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_roiType :: AttrLabelProxy "roiType"
-videoRegionOfInterestMeta_roiType = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #id
-@
--}
-getVideoRegionOfInterestMetaId :: MonadIO m => VideoRegionOfInterestMeta -> m Int32
-getVideoRegionOfInterestMetaId s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 20) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #id 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaId :: MonadIO m => VideoRegionOfInterestMeta -> Int32 -> m ()
-setVideoRegionOfInterestMetaId s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 20) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaIdFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaIdFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaIdFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaIdFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaIdFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaIdFieldInfo = Int32
-    type AttrLabel VideoRegionOfInterestMetaIdFieldInfo = "id"
-    type AttrOrigin VideoRegionOfInterestMetaIdFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaId
-    attrSet _ = setVideoRegionOfInterestMetaId
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_id :: AttrLabelProxy "id"
-videoRegionOfInterestMeta_id = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@parent_id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #parentId
-@
--}
-getVideoRegionOfInterestMetaParentId :: MonadIO m => VideoRegionOfInterestMeta -> m Int32
-getVideoRegionOfInterestMetaParentId s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@parent_id@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #parentId 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaParentId :: MonadIO m => VideoRegionOfInterestMeta -> Int32 -> m ()
-setVideoRegionOfInterestMetaParentId s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 24) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaParentIdFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaParentIdFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaParentIdFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaParentIdFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaParentIdFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaParentIdFieldInfo = Int32
-    type AttrLabel VideoRegionOfInterestMetaParentIdFieldInfo = "parent_id"
-    type AttrOrigin VideoRegionOfInterestMetaParentIdFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaParentId
-    attrSet _ = setVideoRegionOfInterestMetaParentId
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_parentId :: AttrLabelProxy "parentId"
-videoRegionOfInterestMeta_parentId = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@x@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #x
-@
--}
-getVideoRegionOfInterestMetaX :: MonadIO m => VideoRegionOfInterestMeta -> m Word32
-getVideoRegionOfInterestMetaX s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 28) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@x@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #x 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaX :: MonadIO m => VideoRegionOfInterestMeta -> Word32 -> m ()
-setVideoRegionOfInterestMetaX s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 28) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaXFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaXFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaXFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaXFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaXFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaXFieldInfo = Word32
-    type AttrLabel VideoRegionOfInterestMetaXFieldInfo = "x"
-    type AttrOrigin VideoRegionOfInterestMetaXFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaX
-    attrSet _ = setVideoRegionOfInterestMetaX
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_x :: AttrLabelProxy "x"
-videoRegionOfInterestMeta_x = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@y@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #y
-@
--}
-getVideoRegionOfInterestMetaY :: MonadIO m => VideoRegionOfInterestMeta -> m Word32
-getVideoRegionOfInterestMetaY s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@y@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #y 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaY :: MonadIO m => VideoRegionOfInterestMeta -> Word32 -> m ()
-setVideoRegionOfInterestMetaY s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaYFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaYFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaYFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaYFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaYFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaYFieldInfo = Word32
-    type AttrLabel VideoRegionOfInterestMetaYFieldInfo = "y"
-    type AttrOrigin VideoRegionOfInterestMetaYFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaY
-    attrSet _ = setVideoRegionOfInterestMetaY
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_y :: AttrLabelProxy "y"
-videoRegionOfInterestMeta_y = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@w@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #w
-@
--}
-getVideoRegionOfInterestMetaW :: MonadIO m => VideoRegionOfInterestMeta -> m Word32
-getVideoRegionOfInterestMetaW s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 36) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@w@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #w 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaW :: MonadIO m => VideoRegionOfInterestMeta -> Word32 -> m ()
-setVideoRegionOfInterestMetaW s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 36) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaWFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaWFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaWFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaWFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaWFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaWFieldInfo = Word32
-    type AttrLabel VideoRegionOfInterestMetaWFieldInfo = "w"
-    type AttrOrigin VideoRegionOfInterestMetaWFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaW
-    attrSet _ = setVideoRegionOfInterestMetaW
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_w :: AttrLabelProxy "w"
-videoRegionOfInterestMeta_w = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@h@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #h
-@
--}
-getVideoRegionOfInterestMetaH :: MonadIO m => VideoRegionOfInterestMeta -> m Word32
-getVideoRegionOfInterestMetaH s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 40) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@h@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #h 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaH :: MonadIO m => VideoRegionOfInterestMeta -> Word32 -> m ()
-setVideoRegionOfInterestMetaH s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 40) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaHFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaHFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaHFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaHFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaHFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaHFieldInfo = Word32
-    type AttrLabel VideoRegionOfInterestMetaHFieldInfo = "h"
-    type AttrOrigin VideoRegionOfInterestMetaHFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaH
-    attrSet _ = setVideoRegionOfInterestMetaH
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoRegionOfInterestMeta_h :: AttrLabelProxy "h"
-videoRegionOfInterestMeta_h = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@params@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoRegionOfInterestMeta #params
-@
--}
-getVideoRegionOfInterestMetaParams :: MonadIO m => VideoRegionOfInterestMeta -> m ([Ptr ()])
-getVideoRegionOfInterestMetaParams s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 48) :: IO (Ptr (GList (Ptr ())))
-    val' <- unpackGList val
-    return val'
-
-{- |
-Set the value of the “@params@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoRegionOfInterestMeta [ #params 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoRegionOfInterestMetaParams :: MonadIO m => VideoRegionOfInterestMeta -> Ptr (GList (Ptr ())) -> m ()
-setVideoRegionOfInterestMetaParams s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 48) (val :: Ptr (GList (Ptr ())))
-
-{- |
-Set the value of the “@params@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #params
-@
--}
-clearVideoRegionOfInterestMetaParams :: MonadIO m => VideoRegionOfInterestMeta -> m ()
-clearVideoRegionOfInterestMetaParams s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 48) (FP.nullPtr :: Ptr (GList (Ptr ())))
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaParamsFieldInfo
-instance AttrInfo VideoRegionOfInterestMetaParamsFieldInfo where
-    type AttrAllowedOps VideoRegionOfInterestMetaParamsFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoRegionOfInterestMetaParamsFieldInfo = (~) (Ptr (GList (Ptr ())))
-    type AttrBaseTypeConstraint VideoRegionOfInterestMetaParamsFieldInfo = (~) VideoRegionOfInterestMeta
-    type AttrGetType VideoRegionOfInterestMetaParamsFieldInfo = [Ptr ()]
-    type AttrLabel VideoRegionOfInterestMetaParamsFieldInfo = "params"
-    type AttrOrigin VideoRegionOfInterestMetaParamsFieldInfo = VideoRegionOfInterestMeta
-    attrGet _ = getVideoRegionOfInterestMetaParams
-    attrSet _ = setVideoRegionOfInterestMetaParams
-    attrConstruct = undefined
-    attrClear _ = clearVideoRegionOfInterestMetaParams
-
-videoRegionOfInterestMeta_params :: AttrLabelProxy "params"
-videoRegionOfInterestMeta_params = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoRegionOfInterestMeta
-type instance O.AttributeList VideoRegionOfInterestMeta = VideoRegionOfInterestMetaAttributeList
-type VideoRegionOfInterestMetaAttributeList = ('[ '("meta", VideoRegionOfInterestMetaMetaFieldInfo), '("roiType", VideoRegionOfInterestMetaRoiTypeFieldInfo), '("id", VideoRegionOfInterestMetaIdFieldInfo), '("parentId", VideoRegionOfInterestMetaParentIdFieldInfo), '("x", VideoRegionOfInterestMetaXFieldInfo), '("y", VideoRegionOfInterestMetaYFieldInfo), '("w", VideoRegionOfInterestMetaWFieldInfo), '("h", VideoRegionOfInterestMetaHFieldInfo), '("params", VideoRegionOfInterestMetaParamsFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoRegionOfInterestMeta::add_param
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoRegionOfInterestMeta", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "s", argType = TInterface (Name {namespace = "Gst", name = "Structure"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstStructure", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_region_of_interest_meta_add_param" gst_video_region_of_interest_meta_add_param :: 
-    Ptr VideoRegionOfInterestMeta ->        -- meta : TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"})
-    Ptr Gst.Structure.Structure ->          -- s : TInterface (Name {namespace = "Gst", name = "Structure"})
-    IO ()
-
-{- |
-Attach element-specific parameters to /@meta@/ meant to be used by downstream
-elements which may handle this ROI.
-The name of /@s@/ is used to identify the element these parameters are meant for.
-
-This is typically used to tell encoders how they should encode this specific region.
-For example, a structure named \"roi\/x264enc\" could be used to give the
-QP offsets this encoder should use when encoding the region described in /@meta@/.
-Multiple parameters can be defined for the same meta so different encoders
-can be supported by cross platform applications).
-
-/Since: 1.14/
--}
-videoRegionOfInterestMetaAddParam ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoRegionOfInterestMeta
-    {- ^ /@meta@/: a 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' -}
-    -> Gst.Structure.Structure
-    {- ^ /@s@/: a 'GI.Gst.Structs.Structure.Structure' -}
-    -> m ()
-videoRegionOfInterestMetaAddParam meta s = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    s' <- B.ManagedPtr.disownBoxed s
-    gst_video_region_of_interest_meta_add_param meta' s'
-    touchManagedPtr meta
-    touchManagedPtr s
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaAddParamMethodInfo
-instance (signature ~ (Gst.Structure.Structure -> m ()), MonadIO m) => O.MethodInfo VideoRegionOfInterestMetaAddParamMethodInfo VideoRegionOfInterestMeta signature where
-    overloadedMethod _ = videoRegionOfInterestMetaAddParam
-
-#endif
-
--- method VideoRegionOfInterestMeta::get_param
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "meta", argType = TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoRegionOfInterestMeta", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a name.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "Structure"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_region_of_interest_meta_get_param" gst_video_region_of_interest_meta_get_param :: 
-    Ptr VideoRegionOfInterestMeta ->        -- meta : TInterface (Name {namespace = "GstVideo", name = "VideoRegionOfInterestMeta"})
-    CString ->                              -- name : TBasicType TUTF8
-    IO (Ptr Gst.Structure.Structure)
-
-{- |
-Retrieve the parameter for /@meta@/ having /@name@/ as structure name,
-or 'Nothing' if there is none.
-
-/Since: 1.14/
--}
-videoRegionOfInterestMetaGetParam ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoRegionOfInterestMeta
-    {- ^ /@meta@/: a 'GI.GstVideo.Structs.VideoRegionOfInterestMeta.VideoRegionOfInterestMeta' -}
-    -> T.Text
-    {- ^ /@name@/: a name. -}
-    -> m (Maybe Gst.Structure.Structure)
-    {- ^ __Returns:__ a 'GI.Gst.Structs.Structure.Structure' -}
-videoRegionOfInterestMetaGetParam meta name = liftIO $ do
-    meta' <- unsafeManagedPtrGetPtr meta
-    name' <- textToCString name
-    result <- gst_video_region_of_interest_meta_get_param meta' name'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (newBoxed Gst.Structure.Structure) result'
-        return result''
-    touchManagedPtr meta
-    freeMem name'
-    return maybeResult
-
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaGetParamMethodInfo
-instance (signature ~ (T.Text -> m (Maybe Gst.Structure.Structure)), MonadIO m) => O.MethodInfo VideoRegionOfInterestMetaGetParamMethodInfo VideoRegionOfInterestMeta signature where
-    overloadedMethod _ = videoRegionOfInterestMetaGetParam
-
-#endif
-
--- method VideoRegionOfInterestMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_region_of_interest_meta_get_info" gst_video_region_of_interest_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoRegionOfInterestMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoRegionOfInterestMetaGetInfo  = liftIO $ do
-    result <- gst_video_region_of_interest_meta_get_info
-    checkUnexpectedReturnNULL "videoRegionOfInterestMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoRegionOfInterestMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoRegionOfInterestMetaMethod "addParam" o = VideoRegionOfInterestMetaAddParamMethodInfo
-    ResolveVideoRegionOfInterestMetaMethod "getParam" o = VideoRegionOfInterestMetaGetParamMethodInfo
-    ResolveVideoRegionOfInterestMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoRegionOfInterestMetaMethod t VideoRegionOfInterestMeta, O.MethodInfo info VideoRegionOfInterestMeta p) => OL.IsLabel t (VideoRegionOfInterestMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoRegionOfInterestMeta.hs-boot b/GI/GstVideo/Structs/VideoRegionOfInterestMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoRegionOfInterestMeta.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoRegionOfInterestMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoRegionOfInterestMeta = VideoRegionOfInterestMeta (ManagedPtr VideoRegionOfInterestMeta)
-instance WrappedPtr VideoRegionOfInterestMeta where
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaAddParamMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoRegionOfInterestMetaGetParamMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoResampler.hs b/GI/GstVideo/Structs/VideoResampler.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoResampler.hs
+++ /dev/null
@@ -1,649 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-'GI.GstVideo.Structs.VideoResampler.VideoResampler' is a structure which holds the information
-required to perform various kinds of resampling filtering.
-
-/Since: 1.6/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoResampler
-    ( 
-
--- * Exported types
-    VideoResampler(..)                      ,
-    newZeroVideoResampler                   ,
-    noVideoResampler                        ,
-
-
- -- * Methods
--- ** clear #method:clear#
-
-#if ENABLE_OVERLOADING
-    VideoResamplerClearMethodInfo           ,
-#endif
-    videoResamplerClear                     ,
-
-
--- ** init #method:init#
-
-#if ENABLE_OVERLOADING
-    VideoResamplerInitMethodInfo            ,
-#endif
-    videoResamplerInit                      ,
-
-
-
-
- -- * Properties
--- ** inSize #attr:inSize#
-{- | the input size
--}
-    getVideoResamplerInSize                 ,
-    setVideoResamplerInSize                 ,
-#if ENABLE_OVERLOADING
-    videoResampler_inSize                   ,
-#endif
-
-
--- ** maxTaps #attr:maxTaps#
-{- | the maximum number of taps
--}
-    getVideoResamplerMaxTaps                ,
-    setVideoResamplerMaxTaps                ,
-#if ENABLE_OVERLOADING
-    videoResampler_maxTaps                  ,
-#endif
-
-
--- ** nPhases #attr:nPhases#
-{- | the number of phases
--}
-    getVideoResamplerNPhases                ,
-    setVideoResamplerNPhases                ,
-#if ENABLE_OVERLOADING
-    videoResampler_nPhases                  ,
-#endif
-
-
--- ** nTaps #attr:nTaps#
-{- | array with new number of taps for each phase
--}
-    getVideoResamplerNTaps                  ,
-    setVideoResamplerNTaps                  ,
-#if ENABLE_OVERLOADING
-    videoResampler_nTaps                    ,
-#endif
-
-
--- ** offset #attr:offset#
-{- | array with the source offset for each output element
--}
-    getVideoResamplerOffset                 ,
-    setVideoResamplerOffset                 ,
-#if ENABLE_OVERLOADING
-    videoResampler_offset                   ,
-#endif
-
-
--- ** outSize #attr:outSize#
-{- | the output size
--}
-    getVideoResamplerOutSize                ,
-    setVideoResamplerOutSize                ,
-#if ENABLE_OVERLOADING
-    videoResampler_outSize                  ,
-#endif
-
-
--- ** phase #attr:phase#
-{- | array with the phase to use for each output element
--}
-    getVideoResamplerPhase                  ,
-    setVideoResamplerPhase                  ,
-#if ENABLE_OVERLOADING
-    videoResampler_phase                    ,
-#endif
-
-
--- ** taps #attr:taps#
-{- | the taps for all phases
--}
-    getVideoResamplerTaps                   ,
-    setVideoResamplerTaps                   ,
-#if ENABLE_OVERLOADING
-    videoResampler_taps                     ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Structure as Gst.Structure
-import {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-
--- | Memory-managed wrapper type.
-newtype VideoResampler = VideoResampler (ManagedPtr VideoResampler)
-instance WrappedPtr VideoResampler where
-    wrappedPtrCalloc = callocBytes 80
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 80 >=> wrapPtr VideoResampler)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoResampler` struct initialized to zero.
-newZeroVideoResampler :: MonadIO m => m VideoResampler
-newZeroVideoResampler = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoResampler
-
-instance tag ~ 'AttrSet => Constructible VideoResampler tag where
-    new _ attrs = do
-        o <- newZeroVideoResampler
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoResampler`.
-noVideoResampler :: Maybe VideoResampler
-noVideoResampler = Nothing
-
-{- |
-Get the value of the “@in_size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #inSize
-@
--}
-getVideoResamplerInSize :: MonadIO m => VideoResampler -> m Int32
-getVideoResamplerInSize s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@in_size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #inSize 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerInSize :: MonadIO m => VideoResampler -> Int32 -> m ()
-setVideoResamplerInSize s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerInSizeFieldInfo
-instance AttrInfo VideoResamplerInSizeFieldInfo where
-    type AttrAllowedOps VideoResamplerInSizeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerInSizeFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoResamplerInSizeFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerInSizeFieldInfo = Int32
-    type AttrLabel VideoResamplerInSizeFieldInfo = "in_size"
-    type AttrOrigin VideoResamplerInSizeFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerInSize
-    attrSet _ = setVideoResamplerInSize
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_inSize :: AttrLabelProxy "inSize"
-videoResampler_inSize = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@out_size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #outSize
-@
--}
-getVideoResamplerOutSize :: MonadIO m => VideoResampler -> m Int32
-getVideoResamplerOutSize s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 4) :: IO Int32
-    return val
-
-{- |
-Set the value of the “@out_size@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #outSize 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerOutSize :: MonadIO m => VideoResampler -> Int32 -> m ()
-setVideoResamplerOutSize s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 4) (val :: Int32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerOutSizeFieldInfo
-instance AttrInfo VideoResamplerOutSizeFieldInfo where
-    type AttrAllowedOps VideoResamplerOutSizeFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerOutSizeFieldInfo = (~) Int32
-    type AttrBaseTypeConstraint VideoResamplerOutSizeFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerOutSizeFieldInfo = Int32
-    type AttrLabel VideoResamplerOutSizeFieldInfo = "out_size"
-    type AttrOrigin VideoResamplerOutSizeFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerOutSize
-    attrSet _ = setVideoResamplerOutSize
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_outSize :: AttrLabelProxy "outSize"
-videoResampler_outSize = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@max_taps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #maxTaps
-@
--}
-getVideoResamplerMaxTaps :: MonadIO m => VideoResampler -> m Word32
-getVideoResamplerMaxTaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@max_taps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #maxTaps 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerMaxTaps :: MonadIO m => VideoResampler -> Word32 -> m ()
-setVideoResamplerMaxTaps s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerMaxTapsFieldInfo
-instance AttrInfo VideoResamplerMaxTapsFieldInfo where
-    type AttrAllowedOps VideoResamplerMaxTapsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerMaxTapsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoResamplerMaxTapsFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerMaxTapsFieldInfo = Word32
-    type AttrLabel VideoResamplerMaxTapsFieldInfo = "max_taps"
-    type AttrOrigin VideoResamplerMaxTapsFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerMaxTaps
-    attrSet _ = setVideoResamplerMaxTaps
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_maxTaps :: AttrLabelProxy "maxTaps"
-videoResampler_maxTaps = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@n_phases@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #nPhases
-@
--}
-getVideoResamplerNPhases :: MonadIO m => VideoResampler -> m Word32
-getVideoResamplerNPhases s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 12) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@n_phases@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #nPhases 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerNPhases :: MonadIO m => VideoResampler -> Word32 -> m ()
-setVideoResamplerNPhases s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 12) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerNPhasesFieldInfo
-instance AttrInfo VideoResamplerNPhasesFieldInfo where
-    type AttrAllowedOps VideoResamplerNPhasesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerNPhasesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoResamplerNPhasesFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerNPhasesFieldInfo = Word32
-    type AttrLabel VideoResamplerNPhasesFieldInfo = "n_phases"
-    type AttrOrigin VideoResamplerNPhasesFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerNPhases
-    attrSet _ = setVideoResamplerNPhases
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_nPhases :: AttrLabelProxy "nPhases"
-videoResampler_nPhases = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@offset@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #offset
-@
--}
-getVideoResamplerOffset :: MonadIO m => VideoResampler -> m Word32
-getVideoResamplerOffset s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@offset@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #offset 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerOffset :: MonadIO m => VideoResampler -> Word32 -> m ()
-setVideoResamplerOffset s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerOffsetFieldInfo
-instance AttrInfo VideoResamplerOffsetFieldInfo where
-    type AttrAllowedOps VideoResamplerOffsetFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerOffsetFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoResamplerOffsetFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerOffsetFieldInfo = Word32
-    type AttrLabel VideoResamplerOffsetFieldInfo = "offset"
-    type AttrOrigin VideoResamplerOffsetFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerOffset
-    attrSet _ = setVideoResamplerOffset
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_offset :: AttrLabelProxy "offset"
-videoResampler_offset = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@phase@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #phase
-@
--}
-getVideoResamplerPhase :: MonadIO m => VideoResampler -> m Word32
-getVideoResamplerPhase s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@phase@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #phase 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerPhase :: MonadIO m => VideoResampler -> Word32 -> m ()
-setVideoResamplerPhase s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 24) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerPhaseFieldInfo
-instance AttrInfo VideoResamplerPhaseFieldInfo where
-    type AttrAllowedOps VideoResamplerPhaseFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerPhaseFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoResamplerPhaseFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerPhaseFieldInfo = Word32
-    type AttrLabel VideoResamplerPhaseFieldInfo = "phase"
-    type AttrOrigin VideoResamplerPhaseFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerPhase
-    attrSet _ = setVideoResamplerPhase
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_phase :: AttrLabelProxy "phase"
-videoResampler_phase = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@n_taps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #nTaps
-@
--}
-getVideoResamplerNTaps :: MonadIO m => VideoResampler -> m Word32
-getVideoResamplerNTaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@n_taps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #nTaps 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerNTaps :: MonadIO m => VideoResampler -> Word32 -> m ()
-setVideoResamplerNTaps s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerNTapsFieldInfo
-instance AttrInfo VideoResamplerNTapsFieldInfo where
-    type AttrAllowedOps VideoResamplerNTapsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerNTapsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoResamplerNTapsFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerNTapsFieldInfo = Word32
-    type AttrLabel VideoResamplerNTapsFieldInfo = "n_taps"
-    type AttrOrigin VideoResamplerNTapsFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerNTaps
-    attrSet _ = setVideoResamplerNTaps
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_nTaps :: AttrLabelProxy "nTaps"
-videoResampler_nTaps = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@taps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoResampler #taps
-@
--}
-getVideoResamplerTaps :: MonadIO m => VideoResampler -> m Double
-getVideoResamplerTaps s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 40) :: IO CDouble
-    let val' = realToFrac val
-    return val'
-
-{- |
-Set the value of the “@taps@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoResampler [ #taps 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoResamplerTaps :: MonadIO m => VideoResampler -> Double -> m ()
-setVideoResamplerTaps s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = realToFrac val
-    poke (ptr `plusPtr` 40) (val' :: CDouble)
-
-#if ENABLE_OVERLOADING
-data VideoResamplerTapsFieldInfo
-instance AttrInfo VideoResamplerTapsFieldInfo where
-    type AttrAllowedOps VideoResamplerTapsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoResamplerTapsFieldInfo = (~) Double
-    type AttrBaseTypeConstraint VideoResamplerTapsFieldInfo = (~) VideoResampler
-    type AttrGetType VideoResamplerTapsFieldInfo = Double
-    type AttrLabel VideoResamplerTapsFieldInfo = "taps"
-    type AttrOrigin VideoResamplerTapsFieldInfo = VideoResampler
-    attrGet _ = getVideoResamplerTaps
-    attrSet _ = setVideoResamplerTaps
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoResampler_taps :: AttrLabelProxy "taps"
-videoResampler_taps = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoResampler
-type instance O.AttributeList VideoResampler = VideoResamplerAttributeList
-type VideoResamplerAttributeList = ('[ '("inSize", VideoResamplerInSizeFieldInfo), '("outSize", VideoResamplerOutSizeFieldInfo), '("maxTaps", VideoResamplerMaxTapsFieldInfo), '("nPhases", VideoResamplerNPhasesFieldInfo), '("offset", VideoResamplerOffsetFieldInfo), '("phase", VideoResamplerPhaseFieldInfo), '("nTaps", VideoResamplerNTapsFieldInfo), '("taps", VideoResamplerTapsFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoResampler::clear
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "resampler", argType = TInterface (Name {namespace = "GstVideo", name = "VideoResampler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoResampler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_resampler_clear" gst_video_resampler_clear :: 
-    Ptr VideoResampler ->                   -- resampler : TInterface (Name {namespace = "GstVideo", name = "VideoResampler"})
-    IO ()
-
-{- |
-Clear a previously initialized 'GI.GstVideo.Structs.VideoResampler.VideoResampler' /@resampler@/.
-
-/Since: 1.6/
--}
-videoResamplerClear ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoResampler
-    {- ^ /@resampler@/: a 'GI.GstVideo.Structs.VideoResampler.VideoResampler' -}
-    -> m ()
-videoResamplerClear resampler = liftIO $ do
-    resampler' <- unsafeManagedPtrGetPtr resampler
-    gst_video_resampler_clear resampler'
-    touchManagedPtr resampler
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoResamplerClearMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoResamplerClearMethodInfo VideoResampler signature where
-    overloadedMethod _ = videoResamplerClear
-
-#endif
-
--- method VideoResampler::init
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "resampler", argType = TInterface (Name {namespace = "GstVideo", name = "VideoResampler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "method", argType = TInterface (Name {namespace = "GstVideo", name = "VideoResamplerMethod"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoResamplerFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_phases", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_taps", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "shift", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "in_size", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "out_size", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "options", argType = TInterface (Name {namespace = "Gst", name = "Structure"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_resampler_init" gst_video_resampler_init :: 
-    Ptr VideoResampler ->                   -- resampler : TInterface (Name {namespace = "GstVideo", name = "VideoResampler"})
-    CUInt ->                                -- method : TInterface (Name {namespace = "GstVideo", name = "VideoResamplerMethod"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoResamplerFlags"})
-    Word32 ->                               -- n_phases : TBasicType TUInt
-    Word32 ->                               -- n_taps : TBasicType TUInt
-    CDouble ->                              -- shift : TBasicType TDouble
-    Word32 ->                               -- in_size : TBasicType TUInt
-    Word32 ->                               -- out_size : TBasicType TUInt
-    Ptr Gst.Structure.Structure ->          -- options : TInterface (Name {namespace = "Gst", name = "Structure"})
-    IO CInt
-
-{- |
-/No description available in the introspection data./
--}
-videoResamplerInit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoResampler
-    -> GstVideo.Enums.VideoResamplerMethod
-    -> [GstVideo.Flags.VideoResamplerFlags]
-    -> Word32
-    -> Word32
-    -> Double
-    -> Word32
-    -> Word32
-    -> Gst.Structure.Structure
-    -> m Bool
-videoResamplerInit resampler method flags nPhases nTaps shift inSize outSize options = liftIO $ do
-    resampler' <- unsafeManagedPtrGetPtr resampler
-    let method' = (fromIntegral . fromEnum) method
-    let flags' = gflagsToWord flags
-    let shift' = realToFrac shift
-    options' <- unsafeManagedPtrGetPtr options
-    result <- gst_video_resampler_init resampler' method' flags' nPhases nTaps shift' inSize outSize options'
-    let result' = (/= 0) result
-    touchManagedPtr resampler
-    touchManagedPtr options
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoResamplerInitMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoResamplerMethod -> [GstVideo.Flags.VideoResamplerFlags] -> Word32 -> Word32 -> Double -> Word32 -> Word32 -> Gst.Structure.Structure -> m Bool), MonadIO m) => O.MethodInfo VideoResamplerInitMethodInfo VideoResampler signature where
-    overloadedMethod _ = videoResamplerInit
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoResamplerMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoResamplerMethod "clear" o = VideoResamplerClearMethodInfo
-    ResolveVideoResamplerMethod "init" o = VideoResamplerInitMethodInfo
-    ResolveVideoResamplerMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoResamplerMethod t VideoResampler, O.MethodInfo info VideoResampler p) => OL.IsLabel t (VideoResampler -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoResampler.hs-boot b/GI/GstVideo/Structs/VideoResampler.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoResampler.hs-boot
+++ /dev/null
@@ -1,32 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoResampler 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoResampler = VideoResampler (ManagedPtr VideoResampler)
-instance WrappedPtr VideoResampler where
-#if ENABLE_OVERLOADING
-data VideoResamplerClearMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoResamplerInitMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoScaler.hs b/GI/GstVideo/Structs/VideoScaler.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoScaler.hs
+++ /dev/null
@@ -1,426 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-'GI.GstVideo.Structs.VideoScaler.VideoScaler' is a utility object for rescaling and resampling
-video frames using various interpolation \/ sampling methods.
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoScaler
-    ( 
-
--- * Exported types
-    VideoScaler(..)                         ,
-    noVideoScaler                           ,
-
-
- -- * Methods
--- ** 2d #method:2d#
-
-#if ENABLE_OVERLOADING
-    VideoScaler2dMethodInfo                 ,
-#endif
-    videoScaler2d                           ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoScalerFreeMethodInfo               ,
-#endif
-    videoScalerFree                         ,
-
-
--- ** getCoeff #method:getCoeff#
-
-#if ENABLE_OVERLOADING
-    VideoScalerGetCoeffMethodInfo           ,
-#endif
-    videoScalerGetCoeff                     ,
-
-
--- ** getMaxTaps #method:getMaxTaps#
-
-#if ENABLE_OVERLOADING
-    VideoScalerGetMaxTapsMethodInfo         ,
-#endif
-    videoScalerGetMaxTaps                   ,
-
-
--- ** horizontal #method:horizontal#
-
-#if ENABLE_OVERLOADING
-    VideoScalerHorizontalMethodInfo         ,
-#endif
-    videoScalerHorizontal                   ,
-
-
--- ** vertical #method:vertical#
-
-#if ENABLE_OVERLOADING
-    VideoScalerVerticalMethodInfo           ,
-#endif
-    videoScalerVertical                     ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- | Memory-managed wrapper type.
-newtype VideoScaler = VideoScaler (ManagedPtr VideoScaler)
--- XXX Wrapping a foreign struct/union with no known destructor or size, leak?
-instance WrappedPtr VideoScaler where
-    wrappedPtrCalloc = return nullPtr
-    wrappedPtrCopy = return
-    wrappedPtrFree = Nothing
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoScaler`.
-noVideoScaler :: Maybe VideoScaler
-noVideoScaler = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoScaler
-type instance O.AttributeList VideoScaler = VideoScalerAttributeList
-type VideoScalerAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoScaler::2d
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "hscale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a horzontal #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "vscale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a vertical #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat for @srcs and @dest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "source pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src_stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "source pixels stride", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "destination pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_stride", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "destination pixels stride", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the horizontal destination offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the vertical destination offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of output pixels to scale", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of output lines to scale", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_scaler_2d" gst_video_scaler_2d :: 
-    Ptr VideoScaler ->                      -- hscale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    Ptr VideoScaler ->                      -- vscale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Ptr () ->                               -- src : TBasicType TPtr
-    Int32 ->                                -- src_stride : TBasicType TInt
-    Ptr () ->                               -- dest : TBasicType TPtr
-    Int32 ->                                -- dest_stride : TBasicType TInt
-    Word32 ->                               -- x : TBasicType TUInt
-    Word32 ->                               -- y : TBasicType TUInt
-    Word32 ->                               -- width : TBasicType TUInt
-    Word32 ->                               -- height : TBasicType TUInt
-    IO ()
-
-{- |
-Scale a rectangle of pixels in /@src@/ with /@srcStride@/ to /@dest@/ with
-/@destStride@/ using the horizontal scaler /@hscaler@/ and the vertical
-scaler /@vscale@/.
-
-One or both of /@hscale@/ and /@vscale@/ can be NULL to only perform scaling in
-one dimension or do a copy without scaling.
-
-/@x@/ and /@y@/ are the coordinates in the destination image to process.
--}
-videoScaler2d ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoScaler
-    {- ^ /@hscale@/: a horzontal 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> VideoScaler
-    {- ^ /@vscale@/: a vertical 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' for /@srcs@/ and /@dest@/ -}
-    -> Ptr ()
-    {- ^ /@src@/: source pixels -}
-    -> Int32
-    {- ^ /@srcStride@/: source pixels stride -}
-    -> Ptr ()
-    {- ^ /@dest@/: destination pixels -}
-    -> Int32
-    {- ^ /@destStride@/: destination pixels stride -}
-    -> Word32
-    {- ^ /@x@/: the horizontal destination offset -}
-    -> Word32
-    {- ^ /@y@/: the vertical destination offset -}
-    -> Word32
-    {- ^ /@width@/: the number of output pixels to scale -}
-    -> Word32
-    {- ^ /@height@/: the number of output lines to scale -}
-    -> m ()
-videoScaler2d hscale vscale format src srcStride dest destStride x y width height = liftIO $ do
-    hscale' <- unsafeManagedPtrGetPtr hscale
-    vscale' <- unsafeManagedPtrGetPtr vscale
-    let format' = (fromIntegral . fromEnum) format
-    gst_video_scaler_2d hscale' vscale' format' src srcStride dest destStride x y width height
-    touchManagedPtr hscale
-    touchManagedPtr vscale
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoScaler2dMethodInfo
-instance (signature ~ (VideoScaler -> GstVideo.Enums.VideoFormat -> Ptr () -> Int32 -> Ptr () -> Int32 -> Word32 -> Word32 -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoScaler2dMethodInfo VideoScaler signature where
-    overloadedMethod _ = videoScaler2d
-
-#endif
-
--- method VideoScaler::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "scale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_scaler_free" gst_video_scaler_free :: 
-    Ptr VideoScaler ->                      -- scale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    IO ()
-
-{- |
-Free a previously allocated 'GI.GstVideo.Structs.VideoScaler.VideoScaler' /@scale@/.
--}
-videoScalerFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoScaler
-    {- ^ /@scale@/: a 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> m ()
-videoScalerFree scale = liftIO $ do
-    scale' <- unsafeManagedPtrGetPtr scale
-    gst_video_scaler_free scale'
-    touchManagedPtr scale
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoScalerFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoScalerFreeMethodInfo VideoScaler signature where
-    overloadedMethod _ = videoScalerFree
-
-#endif
-
--- method VideoScaler::get_coeff
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "scale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "out_offset", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an output offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "in_offset", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "result input offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_taps", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "result n_taps", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TDouble)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_scaler_get_coeff" gst_video_scaler_get_coeff :: 
-    Ptr VideoScaler ->                      -- scale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    Word32 ->                               -- out_offset : TBasicType TUInt
-    Word32 ->                               -- in_offset : TBasicType TUInt
-    Word32 ->                               -- n_taps : TBasicType TUInt
-    IO CDouble
-
-{- |
-For a given pixel at /@outOffset@/, get the first required input pixel at
-/@inOffset@/ and the /@nTaps@/ filter coefficients.
-
-Note that for interlaced content, /@inOffset@/ needs to be incremented with
-2 to get the next input line.
--}
-videoScalerGetCoeff ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoScaler
-    {- ^ /@scale@/: a 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> Word32
-    {- ^ /@outOffset@/: an output offset -}
-    -> Word32
-    {- ^ /@inOffset@/: result input offset -}
-    -> Word32
-    {- ^ /@nTaps@/: result n_taps -}
-    -> m Double
-    {- ^ __Returns:__ an array of /@nTap@/ gdouble values with filter coefficients. -}
-videoScalerGetCoeff scale outOffset inOffset nTaps = liftIO $ do
-    scale' <- unsafeManagedPtrGetPtr scale
-    result <- gst_video_scaler_get_coeff scale' outOffset inOffset nTaps
-    let result' = realToFrac result
-    touchManagedPtr scale
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoScalerGetCoeffMethodInfo
-instance (signature ~ (Word32 -> Word32 -> Word32 -> m Double), MonadIO m) => O.MethodInfo VideoScalerGetCoeffMethodInfo VideoScaler signature where
-    overloadedMethod _ = videoScalerGetCoeff
-
-#endif
-
--- method VideoScaler::get_max_taps
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "scale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_scaler_get_max_taps" gst_video_scaler_get_max_taps :: 
-    Ptr VideoScaler ->                      -- scale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    IO Word32
-
-{- |
-Get the maximum number of taps for /@scale@/.
--}
-videoScalerGetMaxTaps ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoScaler
-    {- ^ /@scale@/: a 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> m Word32
-    {- ^ __Returns:__ the maximum number of taps -}
-videoScalerGetMaxTaps scale = liftIO $ do
-    scale' <- unsafeManagedPtrGetPtr scale
-    result <- gst_video_scaler_get_max_taps scale'
-    touchManagedPtr scale
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoScalerGetMaxTapsMethodInfo
-instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo VideoScalerGetMaxTapsMethodInfo VideoScaler signature where
-    overloadedMethod _ = videoScalerGetMaxTaps
-
-#endif
-
--- method VideoScaler::horizontal
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "scale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat for @src and @dest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "source pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "destination pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_offset", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the horizontal destination offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of pixels to scale", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_scaler_horizontal" gst_video_scaler_horizontal :: 
-    Ptr VideoScaler ->                      -- scale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Ptr () ->                               -- src : TBasicType TPtr
-    Ptr () ->                               -- dest : TBasicType TPtr
-    Word32 ->                               -- dest_offset : TBasicType TUInt
-    Word32 ->                               -- width : TBasicType TUInt
-    IO ()
-
-{- |
-Horizontally scale the pixels in /@src@/ to /@dest@/, starting from /@destOffset@/
-for /@width@/ samples.
--}
-videoScalerHorizontal ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoScaler
-    {- ^ /@scale@/: a 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' for /@src@/ and /@dest@/ -}
-    -> Ptr ()
-    {- ^ /@src@/: source pixels -}
-    -> Ptr ()
-    {- ^ /@dest@/: destination pixels -}
-    -> Word32
-    {- ^ /@destOffset@/: the horizontal destination offset -}
-    -> Word32
-    {- ^ /@width@/: the number of pixels to scale -}
-    -> m ()
-videoScalerHorizontal scale format src dest destOffset width = liftIO $ do
-    scale' <- unsafeManagedPtrGetPtr scale
-    let format' = (fromIntegral . fromEnum) format
-    gst_video_scaler_horizontal scale' format' src dest destOffset width
-    touchManagedPtr scale
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoScalerHorizontalMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoFormat -> Ptr () -> Ptr () -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoScalerHorizontalMethodInfo VideoScaler signature where
-    overloadedMethod _ = videoScalerHorizontal
-
-#endif
-
--- method VideoScaler::vertical
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "scale", argType = TInterface (Name {namespace = "GstVideo", name = "VideoScaler"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoScaler", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat for @srcs and @dest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "src_lines", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "source pixels lines", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "destination pixels", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dest_offset", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the vertical destination offset", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of pixels to scale", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_scaler_vertical" gst_video_scaler_vertical :: 
-    Ptr VideoScaler ->                      -- scale : TInterface (Name {namespace = "GstVideo", name = "VideoScaler"})
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Ptr () ->                               -- src_lines : TBasicType TPtr
-    Ptr () ->                               -- dest : TBasicType TPtr
-    Word32 ->                               -- dest_offset : TBasicType TUInt
-    Word32 ->                               -- width : TBasicType TUInt
-    IO ()
-
-{- |
-Vertically combine /@width@/ pixels in the lines in /@srcLines@/ to /@dest@/.
-/@dest@/ is the location of the target line at /@destOffset@/ and
-/@srcs@/ are the input lines for /@destOffset@/, as obtained with
-@/gst_video_scaler_get_info()/@.
--}
-videoScalerVertical ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoScaler
-    {- ^ /@scale@/: a 'GI.GstVideo.Structs.VideoScaler.VideoScaler' -}
-    -> GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' for /@srcs@/ and /@dest@/ -}
-    -> Ptr ()
-    {- ^ /@srcLines@/: source pixels lines -}
-    -> Ptr ()
-    {- ^ /@dest@/: destination pixels -}
-    -> Word32
-    {- ^ /@destOffset@/: the vertical destination offset -}
-    -> Word32
-    {- ^ /@width@/: the number of pixels to scale -}
-    -> m ()
-videoScalerVertical scale format srcLines dest destOffset width = liftIO $ do
-    scale' <- unsafeManagedPtrGetPtr scale
-    let format' = (fromIntegral . fromEnum) format
-    gst_video_scaler_vertical scale' format' srcLines dest destOffset width
-    touchManagedPtr scale
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoScalerVerticalMethodInfo
-instance (signature ~ (GstVideo.Enums.VideoFormat -> Ptr () -> Ptr () -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoScalerVerticalMethodInfo VideoScaler signature where
-    overloadedMethod _ = videoScalerVertical
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoScalerMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoScalerMethod "2d" o = VideoScaler2dMethodInfo
-    ResolveVideoScalerMethod "free" o = VideoScalerFreeMethodInfo
-    ResolveVideoScalerMethod "horizontal" o = VideoScalerHorizontalMethodInfo
-    ResolveVideoScalerMethod "vertical" o = VideoScalerVerticalMethodInfo
-    ResolveVideoScalerMethod "getCoeff" o = VideoScalerGetCoeffMethodInfo
-    ResolveVideoScalerMethod "getMaxTaps" o = VideoScalerGetMaxTapsMethodInfo
-    ResolveVideoScalerMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoScalerMethod t VideoScaler, O.MethodInfo info VideoScaler p) => OL.IsLabel t (VideoScaler -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoScaler.hs-boot b/GI/GstVideo/Structs/VideoScaler.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoScaler.hs-boot
+++ /dev/null
@@ -1,44 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoScaler 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoScaler = VideoScaler (ManagedPtr VideoScaler)
-instance WrappedPtr VideoScaler where
-#if ENABLE_OVERLOADING
-data VideoScaler2dMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoScalerFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoScalerGetCoeffMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoScalerGetMaxTapsMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoScalerHorizontalMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoScalerVerticalMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoTimeCode.hs b/GI/GstVideo/Structs/VideoTimeCode.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCode.hs
+++ /dev/null
@@ -1,1476 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-/@fieldCount@/ must be 0 for progressive video and 1 or 2 for interlaced.
-
-A representation of a SMPTE time code.
-
-/@hours@/ must be positive and less than 24. Will wrap around otherwise.
-/@minutes@/ and /@seconds@/ must be positive and less than 60.
-/@frames@/ must be less than or equal to /@config@/.fps_n \/ /@config@/.fps_d
-These values are *NOT* automatically normalized.
-
-/Since: 1.10/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoTimeCode
-    ( 
-
--- * Exported types
-    VideoTimeCode(..)                       ,
-    newZeroVideoTimeCode                    ,
-    noVideoTimeCode                         ,
-
-
- -- * Methods
--- ** addFrames #method:addFrames#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeAddFramesMethodInfo        ,
-#endif
-    videoTimeCodeAddFrames                  ,
-
-
--- ** addInterval #method:addInterval#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeAddIntervalMethodInfo      ,
-#endif
-    videoTimeCodeAddInterval                ,
-
-
--- ** clear #method:clear#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeClearMethodInfo            ,
-#endif
-    videoTimeCodeClear                      ,
-
-
--- ** compare #method:compare#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeCompareMethodInfo          ,
-#endif
-    videoTimeCodeCompare                    ,
-
-
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeCopyMethodInfo             ,
-#endif
-    videoTimeCodeCopy                       ,
-
-
--- ** framesSinceDailyJam #method:framesSinceDailyJam#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeFramesSinceDailyJamMethodInfo,
-#endif
-    videoTimeCodeFramesSinceDailyJam        ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeFreeMethodInfo             ,
-#endif
-    videoTimeCodeFree                       ,
-
-
--- ** incrementFrame #method:incrementFrame#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeIncrementFrameMethodInfo   ,
-#endif
-    videoTimeCodeIncrementFrame             ,
-
-
--- ** init #method:init#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeInitMethodInfo             ,
-#endif
-    videoTimeCodeInit                       ,
-
-
--- ** initFromDateTime #method:initFromDateTime#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeInitFromDateTimeMethodInfo ,
-#endif
-    videoTimeCodeInitFromDateTime           ,
-
-
--- ** initFromDateTimeFull #method:initFromDateTimeFull#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeInitFromDateTimeFullMethodInfo,
-#endif
-    videoTimeCodeInitFromDateTimeFull       ,
-
-
--- ** isValid #method:isValid#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeIsValidMethodInfo          ,
-#endif
-    videoTimeCodeIsValid                    ,
-
-
--- ** new #method:new#
-
-    videoTimeCodeNew                        ,
-
-
--- ** newEmpty #method:newEmpty#
-
-    videoTimeCodeNewEmpty                   ,
-
-
--- ** newFromDateTime #method:newFromDateTime#
-
-    videoTimeCodeNewFromDateTime            ,
-
-
--- ** newFromDateTimeFull #method:newFromDateTimeFull#
-
-    videoTimeCodeNewFromDateTimeFull        ,
-
-
--- ** newFromString #method:newFromString#
-
-    videoTimeCodeNewFromString              ,
-
-
--- ** nsecSinceDailyJam #method:nsecSinceDailyJam#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeNsecSinceDailyJamMethodInfo,
-#endif
-    videoTimeCodeNsecSinceDailyJam          ,
-
-
--- ** toDateTime #method:toDateTime#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeToDateTimeMethodInfo       ,
-#endif
-    videoTimeCodeToDateTime                 ,
-
-
--- ** toString #method:toString#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeToStringMethodInfo         ,
-#endif
-    videoTimeCodeToString                   ,
-
-
-
-
- -- * Properties
--- ** config #attr:config#
-{- | the corresponding 'GI.GstVideo.Structs.VideoTimeCodeConfig.VideoTimeCodeConfig'
--}
-    getVideoTimeCodeConfig                  ,
-#if ENABLE_OVERLOADING
-    videoTimeCode_config                    ,
-#endif
-
-
--- ** fieldCount #attr:fieldCount#
-{- | Interlaced video field count
--}
-    getVideoTimeCodeFieldCount              ,
-    setVideoTimeCodeFieldCount              ,
-#if ENABLE_OVERLOADING
-    videoTimeCode_fieldCount                ,
-#endif
-
-
--- ** frames #attr:frames#
-{- | the frames field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode'
--}
-    getVideoTimeCodeFrames                  ,
-    setVideoTimeCodeFrames                  ,
-#if ENABLE_OVERLOADING
-    videoTimeCode_frames                    ,
-#endif
-
-
--- ** hours #attr:hours#
-{- | the hours field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode'
--}
-    getVideoTimeCodeHours                   ,
-    setVideoTimeCodeHours                   ,
-#if ENABLE_OVERLOADING
-    videoTimeCode_hours                     ,
-#endif
-
-
--- ** minutes #attr:minutes#
-{- | the minutes field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode'
--}
-    getVideoTimeCodeMinutes                 ,
-    setVideoTimeCodeMinutes                 ,
-#if ENABLE_OVERLOADING
-    videoTimeCode_minutes                   ,
-#endif
-
-
--- ** seconds #attr:seconds#
-{- | the seconds field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode'
--}
-    getVideoTimeCodeSeconds                 ,
-    setVideoTimeCodeSeconds                 ,
-#if ENABLE_OVERLOADING
-    videoTimeCode_seconds                   ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GLib.Structs.DateTime as GLib.DateTime
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoTimeCodeConfig as GstVideo.VideoTimeCodeConfig
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoTimeCodeInterval as GstVideo.VideoTimeCodeInterval
-
--- | Memory-managed wrapper type.
-newtype VideoTimeCode = VideoTimeCode (ManagedPtr VideoTimeCode)
-foreign import ccall "gst_video_time_code_get_type" c_gst_video_time_code_get_type :: 
-    IO GType
-
-instance BoxedObject VideoTimeCode where
-    boxedType _ = c_gst_video_time_code_get_type
-
--- | Construct a `VideoTimeCode` struct initialized to zero.
-newZeroVideoTimeCode :: MonadIO m => m VideoTimeCode
-newZeroVideoTimeCode = liftIO $ callocBoxedBytes 48 >>= wrapBoxed VideoTimeCode
-
-instance tag ~ 'AttrSet => Constructible VideoTimeCode tag where
-    new _ attrs = do
-        o <- newZeroVideoTimeCode
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoTimeCode`.
-noVideoTimeCode :: Maybe VideoTimeCode
-noVideoTimeCode = Nothing
-
-{- |
-Get the value of the “@config@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCode #config
-@
--}
-getVideoTimeCodeConfig :: MonadIO m => VideoTimeCode -> m GstVideo.VideoTimeCodeConfig.VideoTimeCodeConfig
-getVideoTimeCodeConfig s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr GstVideo.VideoTimeCodeConfig.VideoTimeCodeConfig)
-    val' <- (newPtr GstVideo.VideoTimeCodeConfig.VideoTimeCodeConfig) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeConfigFieldInfo
-instance AttrInfo VideoTimeCodeConfigFieldInfo where
-    type AttrAllowedOps VideoTimeCodeConfigFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeConfigFieldInfo = (~) (Ptr GstVideo.VideoTimeCodeConfig.VideoTimeCodeConfig)
-    type AttrBaseTypeConstraint VideoTimeCodeConfigFieldInfo = (~) VideoTimeCode
-    type AttrGetType VideoTimeCodeConfigFieldInfo = GstVideo.VideoTimeCodeConfig.VideoTimeCodeConfig
-    type AttrLabel VideoTimeCodeConfigFieldInfo = "config"
-    type AttrOrigin VideoTimeCodeConfigFieldInfo = VideoTimeCode
-    attrGet _ = getVideoTimeCodeConfig
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCode_config :: AttrLabelProxy "config"
-videoTimeCode_config = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@hours@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCode #hours
-@
--}
-getVideoTimeCodeHours :: MonadIO m => VideoTimeCode -> m Word32
-getVideoTimeCodeHours s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 24) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@hours@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCode [ #hours 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeHours :: MonadIO m => VideoTimeCode -> Word32 -> m ()
-setVideoTimeCodeHours s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 24) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeHoursFieldInfo
-instance AttrInfo VideoTimeCodeHoursFieldInfo where
-    type AttrAllowedOps VideoTimeCodeHoursFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeHoursFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeHoursFieldInfo = (~) VideoTimeCode
-    type AttrGetType VideoTimeCodeHoursFieldInfo = Word32
-    type AttrLabel VideoTimeCodeHoursFieldInfo = "hours"
-    type AttrOrigin VideoTimeCodeHoursFieldInfo = VideoTimeCode
-    attrGet _ = getVideoTimeCodeHours
-    attrSet _ = setVideoTimeCodeHours
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCode_hours :: AttrLabelProxy "hours"
-videoTimeCode_hours = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@minutes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCode #minutes
-@
--}
-getVideoTimeCodeMinutes :: MonadIO m => VideoTimeCode -> m Word32
-getVideoTimeCodeMinutes s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 28) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@minutes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCode [ #minutes 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeMinutes :: MonadIO m => VideoTimeCode -> Word32 -> m ()
-setVideoTimeCodeMinutes s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 28) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeMinutesFieldInfo
-instance AttrInfo VideoTimeCodeMinutesFieldInfo where
-    type AttrAllowedOps VideoTimeCodeMinutesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeMinutesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeMinutesFieldInfo = (~) VideoTimeCode
-    type AttrGetType VideoTimeCodeMinutesFieldInfo = Word32
-    type AttrLabel VideoTimeCodeMinutesFieldInfo = "minutes"
-    type AttrOrigin VideoTimeCodeMinutesFieldInfo = VideoTimeCode
-    attrGet _ = getVideoTimeCodeMinutes
-    attrSet _ = setVideoTimeCodeMinutes
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCode_minutes :: AttrLabelProxy "minutes"
-videoTimeCode_minutes = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@seconds@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCode #seconds
-@
--}
-getVideoTimeCodeSeconds :: MonadIO m => VideoTimeCode -> m Word32
-getVideoTimeCodeSeconds s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 32) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@seconds@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCode [ #seconds 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeSeconds :: MonadIO m => VideoTimeCode -> Word32 -> m ()
-setVideoTimeCodeSeconds s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 32) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeSecondsFieldInfo
-instance AttrInfo VideoTimeCodeSecondsFieldInfo where
-    type AttrAllowedOps VideoTimeCodeSecondsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeSecondsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeSecondsFieldInfo = (~) VideoTimeCode
-    type AttrGetType VideoTimeCodeSecondsFieldInfo = Word32
-    type AttrLabel VideoTimeCodeSecondsFieldInfo = "seconds"
-    type AttrOrigin VideoTimeCodeSecondsFieldInfo = VideoTimeCode
-    attrGet _ = getVideoTimeCodeSeconds
-    attrSet _ = setVideoTimeCodeSeconds
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCode_seconds :: AttrLabelProxy "seconds"
-videoTimeCode_seconds = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@frames@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCode #frames
-@
--}
-getVideoTimeCodeFrames :: MonadIO m => VideoTimeCode -> m Word32
-getVideoTimeCodeFrames s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 36) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@frames@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCode [ #frames 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeFrames :: MonadIO m => VideoTimeCode -> Word32 -> m ()
-setVideoTimeCodeFrames s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 36) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeFramesFieldInfo
-instance AttrInfo VideoTimeCodeFramesFieldInfo where
-    type AttrAllowedOps VideoTimeCodeFramesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeFramesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeFramesFieldInfo = (~) VideoTimeCode
-    type AttrGetType VideoTimeCodeFramesFieldInfo = Word32
-    type AttrLabel VideoTimeCodeFramesFieldInfo = "frames"
-    type AttrOrigin VideoTimeCodeFramesFieldInfo = VideoTimeCode
-    attrGet _ = getVideoTimeCodeFrames
-    attrSet _ = setVideoTimeCodeFrames
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCode_frames :: AttrLabelProxy "frames"
-videoTimeCode_frames = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@field_count@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCode #fieldCount
-@
--}
-getVideoTimeCodeFieldCount :: MonadIO m => VideoTimeCode -> m Word32
-getVideoTimeCodeFieldCount s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 40) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@field_count@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCode [ #fieldCount 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeFieldCount :: MonadIO m => VideoTimeCode -> Word32 -> m ()
-setVideoTimeCodeFieldCount s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 40) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeFieldCountFieldInfo
-instance AttrInfo VideoTimeCodeFieldCountFieldInfo where
-    type AttrAllowedOps VideoTimeCodeFieldCountFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeFieldCountFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeFieldCountFieldInfo = (~) VideoTimeCode
-    type AttrGetType VideoTimeCodeFieldCountFieldInfo = Word32
-    type AttrLabel VideoTimeCodeFieldCountFieldInfo = "field_count"
-    type AttrOrigin VideoTimeCodeFieldCountFieldInfo = VideoTimeCode
-    attrGet _ = getVideoTimeCodeFieldCount
-    attrSet _ = setVideoTimeCodeFieldCount
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCode_fieldCount :: AttrLabelProxy "fieldCount"
-videoTimeCode_fieldCount = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoTimeCode
-type instance O.AttributeList VideoTimeCode = VideoTimeCodeAttributeList
-type VideoTimeCodeAttributeList = ('[ '("config", VideoTimeCodeConfigFieldInfo), '("hours", VideoTimeCodeHoursFieldInfo), '("minutes", VideoTimeCodeMinutesFieldInfo), '("seconds", VideoTimeCodeSecondsFieldInfo), '("frames", VideoTimeCodeFramesFieldInfo), '("fieldCount", VideoTimeCodeFieldCountFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoTimeCode::new
--- method type : Constructor
--- Args : [Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "latest_daily_jam", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The latest daily jam of the #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "hours", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the hours field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "minutes", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the minutes field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "seconds", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the seconds field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frames", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the frames field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Interlaced video field count", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_new" gst_video_time_code_new :: 
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- latest_daily_jam : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- hours : TBasicType TUInt
-    Word32 ->                               -- minutes : TBasicType TUInt
-    Word32 ->                               -- seconds : TBasicType TUInt
-    Word32 ->                               -- frames : TBasicType TUInt
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO (Ptr VideoTimeCode)
-
-{- |
-/@fieldCount@/ is 0 for progressive, 1 or 2 for interlaced.
-/@latestDaiyJam@/ reference is stolen from caller.
-
-/Since: 1.10/
--}
-videoTimeCodeNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word32
-    {- ^ /@fpsN@/: Numerator of the frame rate -}
-    -> Word32
-    {- ^ /@fpsD@/: Denominator of the frame rate -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@latestDailyJam@/: The latest daily jam of the 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@hours@/: the hours field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@minutes@/: the minutes field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@seconds@/: the seconds field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@frames@/: the frames field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@fieldCount@/: Interlaced video field count -}
-    -> m VideoTimeCode
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' with the given values.
-The values are not checked for being in a valid range. To see if your
-timecode actually has valid content, use 'GI.GstVideo.Structs.VideoTimeCode.videoTimeCodeIsValid'. -}
-videoTimeCodeNew fpsN fpsD latestDailyJam flags hours minutes seconds frames fieldCount = liftIO $ do
-    latestDailyJam' <- unsafeManagedPtrGetPtr latestDailyJam
-    let flags' = gflagsToWord flags
-    result <- gst_video_time_code_new fpsN fpsD latestDailyJam' flags' hours minutes seconds frames fieldCount
-    checkUnexpectedReturnNULL "videoTimeCodeNew" result
-    result' <- (wrapBoxed VideoTimeCode) result
-    touchManagedPtr latestDailyJam
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCode::new_empty
--- method type : Constructor
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_new_empty" gst_video_time_code_new_empty :: 
-    IO (Ptr VideoTimeCode)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.10/
--}
-videoTimeCodeNewEmpty ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m VideoTimeCode
-    {- ^ __Returns:__ a new empty, invalid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-videoTimeCodeNewEmpty  = liftIO $ do
-    result <- gst_video_time_code_new_empty
-    checkUnexpectedReturnNULL "videoTimeCodeNewEmpty" result
-    result' <- (wrapBoxed VideoTimeCode) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCode::new_from_date_time
--- method type : Constructor
--- Args : [Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dt", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GDateTime to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Interlaced video field count", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_new_from_date_time" gst_video_time_code_new_from_date_time :: 
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- dt : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO (Ptr VideoTimeCode)
-
-{- |
-The resulting config->latest_daily_jam is set to
-midnight, and timecode is set to the given time.
-
-This might return a completely invalid timecode, use
-'GI.GstVideo.Structs.VideoTimeCode.videoTimeCodeNewFromDateTimeFull' to ensure
-that you would get 'Nothing' instead in that case.
-
-/Since: 1.12/
--}
-videoTimeCodeNewFromDateTime ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word32
-    {- ^ /@fpsN@/: Numerator of the frame rate -}
-    -> Word32
-    {- ^ /@fpsD@/: Denominator of the frame rate -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@dt@/: 'GI.GLib.Structs.DateTime.DateTime' to convert -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@fieldCount@/: Interlaced video field count -}
-    -> m VideoTimeCode
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' representation of /@dt@/. -}
-videoTimeCodeNewFromDateTime fpsN fpsD dt flags fieldCount = liftIO $ do
-    dt' <- unsafeManagedPtrGetPtr dt
-    let flags' = gflagsToWord flags
-    result <- gst_video_time_code_new_from_date_time fpsN fpsD dt' flags' fieldCount
-    checkUnexpectedReturnNULL "videoTimeCodeNewFromDateTime" result
-    result' <- (wrapBoxed VideoTimeCode) result
-    touchManagedPtr dt
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCode::new_from_date_time_full
--- method type : Constructor
--- Args : [Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dt", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GDateTime to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Interlaced video field count", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_new_from_date_time_full" gst_video_time_code_new_from_date_time_full :: 
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- dt : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO (Ptr VideoTimeCode)
-
-{- |
-The resulting config->latest_daily_jam is set to
-midnight, and timecode is set to the given time.
-
-/Since: 1.16/
--}
-videoTimeCodeNewFromDateTimeFull ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word32
-    {- ^ /@fpsN@/: Numerator of the frame rate -}
-    -> Word32
-    {- ^ /@fpsD@/: Denominator of the frame rate -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@dt@/: 'GI.GLib.Structs.DateTime.DateTime' to convert -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@fieldCount@/: Interlaced video field count -}
-    -> m VideoTimeCode
-    {- ^ __Returns:__ the 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' representation of /@dt@/, or 'Nothing' if
-  no valid timecode could be created. -}
-videoTimeCodeNewFromDateTimeFull fpsN fpsD dt flags fieldCount = liftIO $ do
-    dt' <- unsafeManagedPtrGetPtr dt
-    let flags' = gflagsToWord flags
-    result <- gst_video_time_code_new_from_date_time_full fpsN fpsD dt' flags' fieldCount
-    checkUnexpectedReturnNULL "videoTimeCodeNewFromDateTimeFull" result
-    result' <- (wrapBoxed VideoTimeCode) result
-    touchManagedPtr dt
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCode::new_from_string
--- method type : Constructor
--- Args : [Arg {argCName = "tc_str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The string that represents the #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_new_from_string" gst_video_time_code_new_from_string :: 
-    CString ->                              -- tc_str : TBasicType TUTF8
-    IO (Ptr VideoTimeCode)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.12/
--}
-videoTimeCodeNewFromString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    T.Text
-    {- ^ /@tcStr@/: The string that represents the 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m (Maybe VideoTimeCode)
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' from the given string or 'Nothing'
-  if the string could not be passed. -}
-videoTimeCodeNewFromString tcStr = liftIO $ do
-    tcStr' <- textToCString tcStr
-    result <- gst_video_time_code_new_from_string tcStr'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (wrapBoxed VideoTimeCode) result'
-        return result''
-    freeMem tcStr'
-    return maybeResult
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCode::add_frames
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a valid #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frames", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "How many frames to add or subtract", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_add_frames" gst_video_time_code_add_frames :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    Int64 ->                                -- frames : TBasicType TInt64
-    IO ()
-
-{- |
-Adds or subtracts /@frames@/ amount of frames to /@tc@/. tc needs to
-contain valid data, as verified by 'GI.GstVideo.Structs.VideoTimeCode.videoTimeCodeIsValid'.
-
-/Since: 1.10/
--}
-videoTimeCodeAddFrames ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Int64
-    {- ^ /@frames@/: How many frames to add or subtract -}
-    -> m ()
-videoTimeCodeAddFrames tc frames = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_add_frames tc' frames
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeAddFramesMethodInfo
-instance (signature ~ (Int64 -> m ()), MonadIO m) => O.MethodInfo VideoTimeCodeAddFramesMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeAddFrames
-
-#endif
-
--- method VideoTimeCode::add_interval
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The #GstVideoTimeCode where the diff should be added. This\nmust contain valid timecode values.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tc_inter", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The #GstVideoTimeCodeInterval to add to @tc.\nThe interval must contain valid values, except that for drop-frame\ntimecode, it may also contain timecodes which would normally\nbe dropped. These are then corrected to the next reasonable timecode.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_add_interval" gst_video_time_code_add_interval :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    Ptr GstVideo.VideoTimeCodeInterval.VideoTimeCodeInterval -> -- tc_inter : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"})
-    IO (Ptr VideoTimeCode)
-
-{- |
-This makes a component-wise addition of /@tcInter@/ to /@tc@/. For example,
-adding (\"01:02:03:04\", \"00:01:00:00\") will return \"01:03:03:04\".
-When it comes to drop-frame timecodes,
-adding (\"00:00:00;00\", \"00:01:00:00\") will return \"00:01:00;02\"
-because of drop-frame oddities. However,
-adding (\"00:09:00;02\", \"00:01:00:00\") will return \"00:10:00;00\"
-because this time we can have an exact minute.
-
-/Since: 1.12/
--}
-videoTimeCodeAddInterval ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: The 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' where the diff should be added. This
-must contain valid timecode values. -}
-    -> GstVideo.VideoTimeCodeInterval.VideoTimeCodeInterval
-    {- ^ /@tcInter@/: The 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' to add to /@tc@/.
-The interval must contain valid values, except that for drop-frame
-timecode, it may also contain timecodes which would normally
-be dropped. These are then corrected to the next reasonable timecode. -}
-    -> m (Maybe VideoTimeCode)
-    {- ^ __Returns:__ A new 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' with /@tcInter@/ added or 'Nothing'
-  if the interval can\'t be added. -}
-videoTimeCodeAddInterval tc tcInter = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    tcInter' <- unsafeManagedPtrGetPtr tcInter
-    result <- gst_video_time_code_add_interval tc' tcInter'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (wrapBoxed VideoTimeCode) result'
-        return result''
-    touchManagedPtr tc
-    touchManagedPtr tcInter
-    return maybeResult
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeAddIntervalMethodInfo
-instance (signature ~ (GstVideo.VideoTimeCodeInterval.VideoTimeCodeInterval -> m (Maybe VideoTimeCode)), MonadIO m) => O.MethodInfo VideoTimeCodeAddIntervalMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeAddInterval
-
-#endif
-
--- method VideoTimeCode::clear
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_clear" gst_video_time_code_clear :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO ()
-
-{- |
-Initializes /@tc@/ with empty\/zero\/NULL values and frees any memory
-it might currently use.
-
-/Since: 1.10/
--}
-videoTimeCodeClear ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m ()
-videoTimeCodeClear tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_clear tc'
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeClearMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoTimeCodeClearMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeClear
-
-#endif
-
--- method VideoTimeCode::compare
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc1", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a valid #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tc2", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "another valid #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TInt)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_compare" gst_video_time_code_compare :: 
-    Ptr VideoTimeCode ->                    -- tc1 : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    Ptr VideoTimeCode ->                    -- tc2 : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO Int32
-
-{- |
-Compares /@tc1@/ and /@tc2@/. If both have latest daily jam information, it is
-taken into account. Otherwise, it is assumed that the daily jam of both
-/@tc1@/ and /@tc2@/ was at the same time. Both time codes must be valid.
-
-/Since: 1.10/
--}
-videoTimeCodeCompare ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc1@/: a valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> VideoTimeCode
-    {- ^ /@tc2@/: another valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m Int32
-    {- ^ __Returns:__ 1 if /@tc1@/ is after /@tc2@/, -1 if /@tc1@/ is before /@tc2@/, 0 otherwise. -}
-videoTimeCodeCompare tc1 tc2 = liftIO $ do
-    tc1' <- unsafeManagedPtrGetPtr tc1
-    tc2' <- unsafeManagedPtrGetPtr tc2
-    result <- gst_video_time_code_compare tc1' tc2'
-    touchManagedPtr tc1
-    touchManagedPtr tc2
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeCompareMethodInfo
-instance (signature ~ (VideoTimeCode -> m Int32), MonadIO m) => O.MethodInfo VideoTimeCodeCompareMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeCompare
-
-#endif
-
--- method VideoTimeCode::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_copy" gst_video_time_code_copy :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO (Ptr VideoTimeCode)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.10/
--}
-videoTimeCodeCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m VideoTimeCode
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' with the same values as /@tc@/. -}
-videoTimeCodeCopy tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_copy tc'
-    checkUnexpectedReturnNULL "videoTimeCodeCopy" result
-    result' <- (wrapBoxed VideoTimeCode) result
-    touchManagedPtr tc
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeCopyMethodInfo
-instance (signature ~ (m VideoTimeCode), MonadIO m) => O.MethodInfo VideoTimeCodeCopyMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeCopy
-
-#endif
-
--- method VideoTimeCode::frames_since_daily_jam
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a valid #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt64)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_frames_since_daily_jam" gst_video_time_code_frames_since_daily_jam :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO Word64
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.10/
--}
-videoTimeCodeFramesSinceDailyJam ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m Word64
-    {- ^ __Returns:__ how many frames have passed since the daily jam of /@tc@/. -}
-videoTimeCodeFramesSinceDailyJam tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_frames_since_daily_jam tc'
-    touchManagedPtr tc
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeFramesSinceDailyJamMethodInfo
-instance (signature ~ (m Word64), MonadIO m) => O.MethodInfo VideoTimeCodeFramesSinceDailyJamMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeFramesSinceDailyJam
-
-#endif
-
--- method VideoTimeCode::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_free" gst_video_time_code_free :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO ()
-
-{- |
-Frees /@tc@/.
-
-/Since: 1.10/
--}
-videoTimeCodeFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m ()
-videoTimeCodeFree tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_free tc'
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoTimeCodeFreeMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeFree
-
-#endif
-
--- method VideoTimeCode::increment_frame
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a valid #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_increment_frame" gst_video_time_code_increment_frame :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO ()
-
-{- |
-Adds one frame to /@tc@/.
-
-/Since: 1.10/
--}
-videoTimeCodeIncrementFrame ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m ()
-videoTimeCodeIncrementFrame tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_increment_frame tc'
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIncrementFrameMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoTimeCodeIncrementFrameMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeIncrementFrame
-
-#endif
-
--- method VideoTimeCode::init
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "latest_daily_jam", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The latest daily jam of the #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "hours", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the hours field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "minutes", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the minutes field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "seconds", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the seconds field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frames", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the frames field of #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Interlaced video field count", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_init" gst_video_time_code_init :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- latest_daily_jam : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- hours : TBasicType TUInt
-    Word32 ->                               -- minutes : TBasicType TUInt
-    Word32 ->                               -- seconds : TBasicType TUInt
-    Word32 ->                               -- frames : TBasicType TUInt
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO ()
-
-{- |
-/@fieldCount@/ is 0 for progressive, 1 or 2 for interlaced.
-/@latestDaiyJam@/ reference is stolen from caller.
-
-Initializes /@tc@/ with the given values.
-The values are not checked for being in a valid range. To see if your
-timecode actually has valid content, use 'GI.GstVideo.Structs.VideoTimeCode.videoTimeCodeIsValid'.
-
-/Since: 1.10/
--}
-videoTimeCodeInit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@fpsN@/: Numerator of the frame rate -}
-    -> Word32
-    {- ^ /@fpsD@/: Denominator of the frame rate -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@latestDailyJam@/: The latest daily jam of the 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@hours@/: the hours field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@minutes@/: the minutes field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@seconds@/: the seconds field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@frames@/: the frames field of 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@fieldCount@/: Interlaced video field count -}
-    -> m ()
-videoTimeCodeInit tc fpsN fpsD latestDailyJam flags hours minutes seconds frames fieldCount = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    latestDailyJam' <- unsafeManagedPtrGetPtr latestDailyJam
-    let flags' = gflagsToWord flags
-    gst_video_time_code_init tc' fpsN fpsD latestDailyJam' flags' hours minutes seconds frames fieldCount
-    touchManagedPtr tc
-    touchManagedPtr latestDailyJam
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeInitMethodInfo
-instance (signature ~ (Word32 -> Word32 -> GLib.DateTime.DateTime -> [GstVideo.Flags.VideoTimeCodeFlags] -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoTimeCodeInitMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeInit
-
-#endif
-
--- method VideoTimeCode::init_from_date_time
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an uninitialized #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dt", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GDateTime to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Interlaced video field count", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_init_from_date_time" gst_video_time_code_init_from_date_time :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- dt : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO ()
-
-{- |
-The resulting config->latest_daily_jam is set to midnight, and timecode is
-set to the given time.
-
-Will assert on invalid parameters, use 'GI.GstVideo.Structs.VideoTimeCode.videoTimeCodeInitFromDateTimeFull'
-for being able to handle invalid parameters.
-
-/Since: 1.12/
--}
-videoTimeCodeInitFromDateTime ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: an uninitialized 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@fpsN@/: Numerator of the frame rate -}
-    -> Word32
-    {- ^ /@fpsD@/: Denominator of the frame rate -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@dt@/: 'GI.GLib.Structs.DateTime.DateTime' to convert -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@fieldCount@/: Interlaced video field count -}
-    -> m ()
-videoTimeCodeInitFromDateTime tc fpsN fpsD dt flags fieldCount = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    dt' <- unsafeManagedPtrGetPtr dt
-    let flags' = gflagsToWord flags
-    gst_video_time_code_init_from_date_time tc' fpsN fpsD dt' flags' fieldCount
-    touchManagedPtr tc
-    touchManagedPtr dt
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeInitFromDateTimeMethodInfo
-instance (signature ~ (Word32 -> Word32 -> GLib.DateTime.DateTime -> [GstVideo.Flags.VideoTimeCodeFlags] -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoTimeCodeInitFromDateTimeMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeInitFromDateTime
-
-#endif
-
--- method VideoTimeCode::init_from_date_time_full
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_n", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Numerator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "fps_d", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Denominator of the frame rate", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dt", argType = TInterface (Name {namespace = "GLib", name = "DateTime"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GDateTime to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCodeFlags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "field_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Interlaced video field count", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_init_from_date_time_full" gst_video_time_code_init_from_date_time_full :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    Word32 ->                               -- fps_n : TBasicType TUInt
-    Word32 ->                               -- fps_d : TBasicType TUInt
-    Ptr GLib.DateTime.DateTime ->           -- dt : TInterface (Name {namespace = "GLib", name = "DateTime"})
-    CUInt ->                                -- flags : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeFlags"})
-    Word32 ->                               -- field_count : TBasicType TUInt
-    IO CInt
-
-{- |
-The resulting config->latest_daily_jam is set to
-midnight, and timecode is set to the given time.
-
-/Since: 1.16/
--}
-videoTimeCodeInitFromDateTimeFull ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> Word32
-    {- ^ /@fpsN@/: Numerator of the frame rate -}
-    -> Word32
-    {- ^ /@fpsD@/: Denominator of the frame rate -}
-    -> GLib.DateTime.DateTime
-    {- ^ /@dt@/: 'GI.GLib.Structs.DateTime.DateTime' to convert -}
-    -> [GstVideo.Flags.VideoTimeCodeFlags]
-    {- ^ /@flags@/: 'GI.GstVideo.Flags.VideoTimeCodeFlags' -}
-    -> Word32
-    {- ^ /@fieldCount@/: Interlaced video field count -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if /@tc@/ could be correctly initialized to a valid timecode -}
-videoTimeCodeInitFromDateTimeFull tc fpsN fpsD dt flags fieldCount = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    dt' <- unsafeManagedPtrGetPtr dt
-    let flags' = gflagsToWord flags
-    result <- gst_video_time_code_init_from_date_time_full tc' fpsN fpsD dt' flags' fieldCount
-    let result' = (/= 0) result
-    touchManagedPtr tc
-    touchManagedPtr dt
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeInitFromDateTimeFullMethodInfo
-instance (signature ~ (Word32 -> Word32 -> GLib.DateTime.DateTime -> [GstVideo.Flags.VideoTimeCodeFlags] -> Word32 -> m Bool), MonadIO m) => O.MethodInfo VideoTimeCodeInitFromDateTimeFullMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeInitFromDateTimeFull
-
-#endif
-
--- method VideoTimeCode::is_valid
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "#GstVideoTimeCode to check", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_is_valid" gst_video_time_code_is_valid :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO CInt
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.10/
--}
-videoTimeCodeIsValid ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' to check -}
-    -> m Bool
-    {- ^ __Returns:__ whether /@tc@/ is a valid timecode (supported frame rate,
-hours\/minutes\/seconds\/frames not overflowing) -}
-videoTimeCodeIsValid tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_is_valid tc'
-    let result' = (/= 0) result
-    touchManagedPtr tc
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIsValidMethodInfo
-instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo VideoTimeCodeIsValidMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeIsValid
-
-#endif
-
--- method VideoTimeCode::nsec_since_daily_jam
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a valid #GstVideoTimeCode", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUInt64)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_nsec_since_daily_jam" gst_video_time_code_nsec_since_daily_jam :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO Word64
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.10/
--}
-videoTimeCodeNsecSinceDailyJam ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: a valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' -}
-    -> m Word64
-    {- ^ __Returns:__ how many nsec have passed since the daily jam of /@tc@/. -}
-videoTimeCodeNsecSinceDailyJam tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_nsec_since_daily_jam tc'
-    touchManagedPtr tc
-    return result
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeNsecSinceDailyJamMethodInfo
-instance (signature ~ (m Word64), MonadIO m) => O.MethodInfo VideoTimeCodeNsecSinceDailyJamMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeNsecSinceDailyJam
-
-#endif
-
--- method VideoTimeCode::to_date_time
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A valid #GstVideoTimeCode to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GLib", name = "DateTime"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_to_date_time" gst_video_time_code_to_date_time :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO (Ptr GLib.DateTime.DateTime)
-
-{- |
-The /@tc@/.config->latest_daily_jam is required to be non-NULL.
-
-/Since: 1.10/
--}
-videoTimeCodeToDateTime ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: A valid 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' to convert -}
-    -> m (Maybe GLib.DateTime.DateTime)
-    {- ^ __Returns:__ the 'GI.GLib.Structs.DateTime.DateTime' representation of /@tc@/ or 'Nothing' if /@tc@/
-  has no daily jam. -}
-videoTimeCodeToDateTime tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_to_date_time tc'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (wrapBoxed GLib.DateTime.DateTime) result'
-        return result''
-    touchManagedPtr tc
-    return maybeResult
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeToDateTimeMethodInfo
-instance (signature ~ (m (Maybe GLib.DateTime.DateTime)), MonadIO m) => O.MethodInfo VideoTimeCodeToDateTimeMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeToDateTime
-
-#endif
-
--- method VideoTimeCode::to_string
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #GstVideoTimeCode to convert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TUTF8)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_to_string" gst_video_time_code_to_string :: 
-    Ptr VideoTimeCode ->                    -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCode"})
-    IO CString
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.10/
--}
-videoTimeCodeToString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCode
-    {- ^ /@tc@/: A 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' to convert -}
-    -> m T.Text
-    {- ^ __Returns:__ the SMPTE ST 2059-1:2015 string representation of /@tc@/. That will
-take the form hh:mm:ss:ff. The last separator (between seconds and frames)
-may vary:
-
-\';\' for drop-frame, non-interlaced content and for drop-frame interlaced
-field 2
-\',\' for drop-frame interlaced field 1
-\':\' for non-drop-frame, non-interlaced content and for non-drop-frame
-interlaced field 2
-\'.\' for non-drop-frame interlaced field 1 -}
-videoTimeCodeToString tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_to_string tc'
-    checkUnexpectedReturnNULL "videoTimeCodeToString" result
-    result' <- cstringToText result
-    freeMem result
-    touchManagedPtr tc
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeToStringMethodInfo
-instance (signature ~ (m T.Text), MonadIO m) => O.MethodInfo VideoTimeCodeToStringMethodInfo VideoTimeCode signature where
-    overloadedMethod _ = videoTimeCodeToString
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoTimeCodeMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoTimeCodeMethod "addFrames" o = VideoTimeCodeAddFramesMethodInfo
-    ResolveVideoTimeCodeMethod "addInterval" o = VideoTimeCodeAddIntervalMethodInfo
-    ResolveVideoTimeCodeMethod "clear" o = VideoTimeCodeClearMethodInfo
-    ResolveVideoTimeCodeMethod "compare" o = VideoTimeCodeCompareMethodInfo
-    ResolveVideoTimeCodeMethod "copy" o = VideoTimeCodeCopyMethodInfo
-    ResolveVideoTimeCodeMethod "framesSinceDailyJam" o = VideoTimeCodeFramesSinceDailyJamMethodInfo
-    ResolveVideoTimeCodeMethod "free" o = VideoTimeCodeFreeMethodInfo
-    ResolveVideoTimeCodeMethod "incrementFrame" o = VideoTimeCodeIncrementFrameMethodInfo
-    ResolveVideoTimeCodeMethod "init" o = VideoTimeCodeInitMethodInfo
-    ResolveVideoTimeCodeMethod "initFromDateTime" o = VideoTimeCodeInitFromDateTimeMethodInfo
-    ResolveVideoTimeCodeMethod "initFromDateTimeFull" o = VideoTimeCodeInitFromDateTimeFullMethodInfo
-    ResolveVideoTimeCodeMethod "isValid" o = VideoTimeCodeIsValidMethodInfo
-    ResolveVideoTimeCodeMethod "nsecSinceDailyJam" o = VideoTimeCodeNsecSinceDailyJamMethodInfo
-    ResolveVideoTimeCodeMethod "toDateTime" o = VideoTimeCodeToDateTimeMethodInfo
-    ResolveVideoTimeCodeMethod "toString" o = VideoTimeCodeToStringMethodInfo
-    ResolveVideoTimeCodeMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoTimeCodeMethod t VideoTimeCode, O.MethodInfo info VideoTimeCode p) => OL.IsLabel t (VideoTimeCode -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoTimeCode.hs-boot b/GI/GstVideo/Structs/VideoTimeCode.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCode.hs-boot
+++ /dev/null
@@ -1,71 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoTimeCode 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoTimeCode = VideoTimeCode (ManagedPtr VideoTimeCode)
-instance BoxedObject VideoTimeCode where
-#if ENABLE_OVERLOADING
-data VideoTimeCodeAddFramesMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeAddIntervalMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeClearMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeCompareMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeFramesSinceDailyJamMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIncrementFrameMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeInitMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeInitFromDateTimeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeInitFromDateTimeFullMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIsValidMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeNsecSinceDailyJamMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeToDateTimeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeToStringMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoTimeCodeConfig.hs b/GI/GstVideo/Structs/VideoTimeCodeConfig.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCodeConfig.hs
+++ /dev/null
@@ -1,336 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Supported frame rates: 30000\/1001, 60000\/1001 (both with and without drop
-frame), and integer frame rates e.g. 25\/1, 30\/1, 50\/1, 60\/1.
-
-The configuration of the time code.
-
-/Since: 1.10/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoTimeCodeConfig
-    ( 
-
--- * Exported types
-    VideoTimeCodeConfig(..)                 ,
-    newZeroVideoTimeCodeConfig              ,
-    noVideoTimeCodeConfig                   ,
-
-
- -- * Properties
--- ** flags #attr:flags#
-{- | the corresponding 'GI.GstVideo.Flags.VideoTimeCodeFlags'
--}
-    getVideoTimeCodeConfigFlags             ,
-    setVideoTimeCodeConfigFlags             ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeConfig_flags               ,
-#endif
-
-
--- ** fpsD #attr:fpsD#
-{- | Denominator of the frame rate
--}
-    getVideoTimeCodeConfigFpsD              ,
-    setVideoTimeCodeConfigFpsD              ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeConfig_fpsD                ,
-#endif
-
-
--- ** fpsN #attr:fpsN#
-{- | Numerator of the frame rate
--}
-    getVideoTimeCodeConfigFpsN              ,
-    setVideoTimeCodeConfigFpsN              ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeConfig_fpsN                ,
-#endif
-
-
--- ** latestDailyJam #attr:latestDailyJam#
-{- | The latest daily jam information, if present, or NULL
--}
-    clearVideoTimeCodeConfigLatestDailyJam  ,
-    getVideoTimeCodeConfigLatestDailyJam    ,
-    setVideoTimeCodeConfigLatestDailyJam    ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeConfig_latestDailyJam      ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.GLib.Structs.DateTime as GLib.DateTime
-import {-# SOURCE #-} qualified GI.GstVideo.Flags as GstVideo.Flags
-
--- | Memory-managed wrapper type.
-newtype VideoTimeCodeConfig = VideoTimeCodeConfig (ManagedPtr VideoTimeCodeConfig)
-instance WrappedPtr VideoTimeCodeConfig where
-    wrappedPtrCalloc = callocBytes 24
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 24 >=> wrapPtr VideoTimeCodeConfig)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoTimeCodeConfig` struct initialized to zero.
-newZeroVideoTimeCodeConfig :: MonadIO m => m VideoTimeCodeConfig
-newZeroVideoTimeCodeConfig = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoTimeCodeConfig
-
-instance tag ~ 'AttrSet => Constructible VideoTimeCodeConfig tag where
-    new _ attrs = do
-        o <- newZeroVideoTimeCodeConfig
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoTimeCodeConfig`.
-noVideoTimeCodeConfig :: Maybe VideoTimeCodeConfig
-noVideoTimeCodeConfig = Nothing
-
-{- |
-Get the value of the “@fps_n@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeConfig #fpsN
-@
--}
-getVideoTimeCodeConfigFpsN :: MonadIO m => VideoTimeCodeConfig -> m Word32
-getVideoTimeCodeConfigFpsN s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@fps_n@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeConfig [ #fpsN 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeConfigFpsN :: MonadIO m => VideoTimeCodeConfig -> Word32 -> m ()
-setVideoTimeCodeConfigFpsN s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeConfigFpsNFieldInfo
-instance AttrInfo VideoTimeCodeConfigFpsNFieldInfo where
-    type AttrAllowedOps VideoTimeCodeConfigFpsNFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeConfigFpsNFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeConfigFpsNFieldInfo = (~) VideoTimeCodeConfig
-    type AttrGetType VideoTimeCodeConfigFpsNFieldInfo = Word32
-    type AttrLabel VideoTimeCodeConfigFpsNFieldInfo = "fps_n"
-    type AttrOrigin VideoTimeCodeConfigFpsNFieldInfo = VideoTimeCodeConfig
-    attrGet _ = getVideoTimeCodeConfigFpsN
-    attrSet _ = setVideoTimeCodeConfigFpsN
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeConfig_fpsN :: AttrLabelProxy "fpsN"
-videoTimeCodeConfig_fpsN = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@fps_d@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeConfig #fpsD
-@
--}
-getVideoTimeCodeConfigFpsD :: MonadIO m => VideoTimeCodeConfig -> m Word32
-getVideoTimeCodeConfigFpsD s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 4) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@fps_d@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeConfig [ #fpsD 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeConfigFpsD :: MonadIO m => VideoTimeCodeConfig -> Word32 -> m ()
-setVideoTimeCodeConfigFpsD s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 4) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeConfigFpsDFieldInfo
-instance AttrInfo VideoTimeCodeConfigFpsDFieldInfo where
-    type AttrAllowedOps VideoTimeCodeConfigFpsDFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeConfigFpsDFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeConfigFpsDFieldInfo = (~) VideoTimeCodeConfig
-    type AttrGetType VideoTimeCodeConfigFpsDFieldInfo = Word32
-    type AttrLabel VideoTimeCodeConfigFpsDFieldInfo = "fps_d"
-    type AttrOrigin VideoTimeCodeConfigFpsDFieldInfo = VideoTimeCodeConfig
-    attrGet _ = getVideoTimeCodeConfigFpsD
-    attrSet _ = setVideoTimeCodeConfigFpsD
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeConfig_fpsD :: AttrLabelProxy "fpsD"
-videoTimeCodeConfig_fpsD = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeConfig #flags
-@
--}
-getVideoTimeCodeConfigFlags :: MonadIO m => VideoTimeCodeConfig -> m [GstVideo.Flags.VideoTimeCodeFlags]
-getVideoTimeCodeConfigFlags s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO CUInt
-    let val' = wordToGFlags val
-    return val'
-
-{- |
-Set the value of the “@flags@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeConfig [ #flags 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeConfigFlags :: MonadIO m => VideoTimeCodeConfig -> [GstVideo.Flags.VideoTimeCodeFlags] -> m ()
-setVideoTimeCodeConfigFlags s val = liftIO $ withManagedPtr s $ \ptr -> do
-    let val' = gflagsToWord val
-    poke (ptr `plusPtr` 8) (val' :: CUInt)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeConfigFlagsFieldInfo
-instance AttrInfo VideoTimeCodeConfigFlagsFieldInfo where
-    type AttrAllowedOps VideoTimeCodeConfigFlagsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeConfigFlagsFieldInfo = (~) [GstVideo.Flags.VideoTimeCodeFlags]
-    type AttrBaseTypeConstraint VideoTimeCodeConfigFlagsFieldInfo = (~) VideoTimeCodeConfig
-    type AttrGetType VideoTimeCodeConfigFlagsFieldInfo = [GstVideo.Flags.VideoTimeCodeFlags]
-    type AttrLabel VideoTimeCodeConfigFlagsFieldInfo = "flags"
-    type AttrOrigin VideoTimeCodeConfigFlagsFieldInfo = VideoTimeCodeConfig
-    attrGet _ = getVideoTimeCodeConfigFlags
-    attrSet _ = setVideoTimeCodeConfigFlags
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeConfig_flags :: AttrLabelProxy "flags"
-videoTimeCodeConfig_flags = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@latest_daily_jam@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeConfig #latestDailyJam
-@
--}
-getVideoTimeCodeConfigLatestDailyJam :: MonadIO m => VideoTimeCodeConfig -> m (Maybe GLib.DateTime.DateTime)
-getVideoTimeCodeConfigLatestDailyJam s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 16) :: IO (Ptr GLib.DateTime.DateTime)
-    result <- SP.convertIfNonNull val $ \val' -> do
-        val'' <- (newBoxed GLib.DateTime.DateTime) val'
-        return val''
-    return result
-
-{- |
-Set the value of the “@latest_daily_jam@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeConfig [ #latestDailyJam 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeConfigLatestDailyJam :: MonadIO m => VideoTimeCodeConfig -> Ptr GLib.DateTime.DateTime -> m ()
-setVideoTimeCodeConfigLatestDailyJam s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (val :: Ptr GLib.DateTime.DateTime)
-
-{- |
-Set the value of the “@latest_daily_jam@” field to `Nothing`.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.clear' #latestDailyJam
-@
--}
-clearVideoTimeCodeConfigLatestDailyJam :: MonadIO m => VideoTimeCodeConfig -> m ()
-clearVideoTimeCodeConfigLatestDailyJam s = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 16) (FP.nullPtr :: Ptr GLib.DateTime.DateTime)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeConfigLatestDailyJamFieldInfo
-instance AttrInfo VideoTimeCodeConfigLatestDailyJamFieldInfo where
-    type AttrAllowedOps VideoTimeCodeConfigLatestDailyJamFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
-    type AttrSetTypeConstraint VideoTimeCodeConfigLatestDailyJamFieldInfo = (~) (Ptr GLib.DateTime.DateTime)
-    type AttrBaseTypeConstraint VideoTimeCodeConfigLatestDailyJamFieldInfo = (~) VideoTimeCodeConfig
-    type AttrGetType VideoTimeCodeConfigLatestDailyJamFieldInfo = Maybe GLib.DateTime.DateTime
-    type AttrLabel VideoTimeCodeConfigLatestDailyJamFieldInfo = "latest_daily_jam"
-    type AttrOrigin VideoTimeCodeConfigLatestDailyJamFieldInfo = VideoTimeCodeConfig
-    attrGet _ = getVideoTimeCodeConfigLatestDailyJam
-    attrSet _ = setVideoTimeCodeConfigLatestDailyJam
-    attrConstruct = undefined
-    attrClear _ = clearVideoTimeCodeConfigLatestDailyJam
-
-videoTimeCodeConfig_latestDailyJam :: AttrLabelProxy "latestDailyJam"
-videoTimeCodeConfig_latestDailyJam = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoTimeCodeConfig
-type instance O.AttributeList VideoTimeCodeConfig = VideoTimeCodeConfigAttributeList
-type VideoTimeCodeConfigAttributeList = ('[ '("fpsN", VideoTimeCodeConfigFpsNFieldInfo), '("fpsD", VideoTimeCodeConfigFpsDFieldInfo), '("flags", VideoTimeCodeConfigFlagsFieldInfo), '("latestDailyJam", VideoTimeCodeConfigLatestDailyJamFieldInfo)] :: [(Symbol, *)])
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoTimeCodeConfigMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoTimeCodeConfigMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoTimeCodeConfigMethod t VideoTimeCodeConfig, O.MethodInfo info VideoTimeCodeConfig p) => OL.IsLabel t (VideoTimeCodeConfig -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoTimeCodeConfig.hs-boot b/GI/GstVideo/Structs/VideoTimeCodeConfig.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCodeConfig.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoTimeCodeConfig 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoTimeCodeConfig = VideoTimeCodeConfig (ManagedPtr VideoTimeCodeConfig)
-instance WrappedPtr VideoTimeCodeConfig where
diff --git a/GI/GstVideo/Structs/VideoTimeCodeInterval.hs b/GI/GstVideo/Structs/VideoTimeCodeInterval.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCodeInterval.hs
+++ /dev/null
@@ -1,596 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-A representation of a difference between two 'GI.GstVideo.Structs.VideoTimeCode.VideoTimeCode' instances.
-Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)
-
-/Since: 1.12/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoTimeCodeInterval
-    ( 
-
--- * Exported types
-    VideoTimeCodeInterval(..)               ,
-    newZeroVideoTimeCodeInterval            ,
-    noVideoTimeCodeInterval                 ,
-
-
- -- * Methods
--- ** clear #method:clear#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeIntervalClearMethodInfo    ,
-#endif
-    videoTimeCodeIntervalClear              ,
-
-
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeIntervalCopyMethodInfo     ,
-#endif
-    videoTimeCodeIntervalCopy               ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeIntervalFreeMethodInfo     ,
-#endif
-    videoTimeCodeIntervalFree               ,
-
-
--- ** init #method:init#
-
-#if ENABLE_OVERLOADING
-    VideoTimeCodeIntervalInitMethodInfo     ,
-#endif
-    videoTimeCodeIntervalInit               ,
-
-
--- ** new #method:new#
-
-    videoTimeCodeIntervalNew                ,
-
-
--- ** newFromString #method:newFromString#
-
-    videoTimeCodeIntervalNewFromString      ,
-
-
-
-
- -- * Properties
--- ** frames #attr:frames#
-{- | the frames field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval'
--}
-    getVideoTimeCodeIntervalFrames          ,
-    setVideoTimeCodeIntervalFrames          ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeInterval_frames            ,
-#endif
-
-
--- ** hours #attr:hours#
-{- | the hours field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval'
--}
-    getVideoTimeCodeIntervalHours           ,
-    setVideoTimeCodeIntervalHours           ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeInterval_hours             ,
-#endif
-
-
--- ** minutes #attr:minutes#
-{- | the minutes field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval'
--}
-    getVideoTimeCodeIntervalMinutes         ,
-    setVideoTimeCodeIntervalMinutes         ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeInterval_minutes           ,
-#endif
-
-
--- ** seconds #attr:seconds#
-{- | the seconds field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval'
--}
-    getVideoTimeCodeIntervalSeconds         ,
-    setVideoTimeCodeIntervalSeconds         ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeInterval_seconds           ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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
-
-
--- | Memory-managed wrapper type.
-newtype VideoTimeCodeInterval = VideoTimeCodeInterval (ManagedPtr VideoTimeCodeInterval)
-foreign import ccall "gst_video_time_code_interval_get_type" c_gst_video_time_code_interval_get_type :: 
-    IO GType
-
-instance BoxedObject VideoTimeCodeInterval where
-    boxedType _ = c_gst_video_time_code_interval_get_type
-
--- | Construct a `VideoTimeCodeInterval` struct initialized to zero.
-newZeroVideoTimeCodeInterval :: MonadIO m => m VideoTimeCodeInterval
-newZeroVideoTimeCodeInterval = liftIO $ callocBoxedBytes 16 >>= wrapBoxed VideoTimeCodeInterval
-
-instance tag ~ 'AttrSet => Constructible VideoTimeCodeInterval tag where
-    new _ attrs = do
-        o <- newZeroVideoTimeCodeInterval
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoTimeCodeInterval`.
-noVideoTimeCodeInterval :: Maybe VideoTimeCodeInterval
-noVideoTimeCodeInterval = Nothing
-
-{- |
-Get the value of the “@hours@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeInterval #hours
-@
--}
-getVideoTimeCodeIntervalHours :: MonadIO m => VideoTimeCodeInterval -> m Word32
-getVideoTimeCodeIntervalHours s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 0) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@hours@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeInterval [ #hours 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeIntervalHours :: MonadIO m => VideoTimeCodeInterval -> Word32 -> m ()
-setVideoTimeCodeIntervalHours s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 0) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalHoursFieldInfo
-instance AttrInfo VideoTimeCodeIntervalHoursFieldInfo where
-    type AttrAllowedOps VideoTimeCodeIntervalHoursFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeIntervalHoursFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeIntervalHoursFieldInfo = (~) VideoTimeCodeInterval
-    type AttrGetType VideoTimeCodeIntervalHoursFieldInfo = Word32
-    type AttrLabel VideoTimeCodeIntervalHoursFieldInfo = "hours"
-    type AttrOrigin VideoTimeCodeIntervalHoursFieldInfo = VideoTimeCodeInterval
-    attrGet _ = getVideoTimeCodeIntervalHours
-    attrSet _ = setVideoTimeCodeIntervalHours
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeInterval_hours :: AttrLabelProxy "hours"
-videoTimeCodeInterval_hours = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@minutes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeInterval #minutes
-@
--}
-getVideoTimeCodeIntervalMinutes :: MonadIO m => VideoTimeCodeInterval -> m Word32
-getVideoTimeCodeIntervalMinutes s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 4) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@minutes@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeInterval [ #minutes 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeIntervalMinutes :: MonadIO m => VideoTimeCodeInterval -> Word32 -> m ()
-setVideoTimeCodeIntervalMinutes s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 4) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalMinutesFieldInfo
-instance AttrInfo VideoTimeCodeIntervalMinutesFieldInfo where
-    type AttrAllowedOps VideoTimeCodeIntervalMinutesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeIntervalMinutesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeIntervalMinutesFieldInfo = (~) VideoTimeCodeInterval
-    type AttrGetType VideoTimeCodeIntervalMinutesFieldInfo = Word32
-    type AttrLabel VideoTimeCodeIntervalMinutesFieldInfo = "minutes"
-    type AttrOrigin VideoTimeCodeIntervalMinutesFieldInfo = VideoTimeCodeInterval
-    attrGet _ = getVideoTimeCodeIntervalMinutes
-    attrSet _ = setVideoTimeCodeIntervalMinutes
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeInterval_minutes :: AttrLabelProxy "minutes"
-videoTimeCodeInterval_minutes = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@seconds@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeInterval #seconds
-@
--}
-getVideoTimeCodeIntervalSeconds :: MonadIO m => VideoTimeCodeInterval -> m Word32
-getVideoTimeCodeIntervalSeconds s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 8) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@seconds@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeInterval [ #seconds 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeIntervalSeconds :: MonadIO m => VideoTimeCodeInterval -> Word32 -> m ()
-setVideoTimeCodeIntervalSeconds s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 8) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalSecondsFieldInfo
-instance AttrInfo VideoTimeCodeIntervalSecondsFieldInfo where
-    type AttrAllowedOps VideoTimeCodeIntervalSecondsFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeIntervalSecondsFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeIntervalSecondsFieldInfo = (~) VideoTimeCodeInterval
-    type AttrGetType VideoTimeCodeIntervalSecondsFieldInfo = Word32
-    type AttrLabel VideoTimeCodeIntervalSecondsFieldInfo = "seconds"
-    type AttrOrigin VideoTimeCodeIntervalSecondsFieldInfo = VideoTimeCodeInterval
-    attrGet _ = getVideoTimeCodeIntervalSeconds
-    attrSet _ = setVideoTimeCodeIntervalSeconds
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeInterval_seconds :: AttrLabelProxy "seconds"
-videoTimeCodeInterval_seconds = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@frames@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeInterval #frames
-@
--}
-getVideoTimeCodeIntervalFrames :: MonadIO m => VideoTimeCodeInterval -> m Word32
-getVideoTimeCodeIntervalFrames s = liftIO $ withManagedPtr s $ \ptr -> do
-    val <- peek (ptr `plusPtr` 12) :: IO Word32
-    return val
-
-{- |
-Set the value of the “@frames@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.set' videoTimeCodeInterval [ #frames 'Data.GI.Base.Attributes.:=' value ]
-@
--}
-setVideoTimeCodeIntervalFrames :: MonadIO m => VideoTimeCodeInterval -> Word32 -> m ()
-setVideoTimeCodeIntervalFrames s val = liftIO $ withManagedPtr s $ \ptr -> do
-    poke (ptr `plusPtr` 12) (val :: Word32)
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalFramesFieldInfo
-instance AttrInfo VideoTimeCodeIntervalFramesFieldInfo where
-    type AttrAllowedOps VideoTimeCodeIntervalFramesFieldInfo = '[ 'AttrSet, 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeIntervalFramesFieldInfo = (~) Word32
-    type AttrBaseTypeConstraint VideoTimeCodeIntervalFramesFieldInfo = (~) VideoTimeCodeInterval
-    type AttrGetType VideoTimeCodeIntervalFramesFieldInfo = Word32
-    type AttrLabel VideoTimeCodeIntervalFramesFieldInfo = "frames"
-    type AttrOrigin VideoTimeCodeIntervalFramesFieldInfo = VideoTimeCodeInterval
-    attrGet _ = getVideoTimeCodeIntervalFrames
-    attrSet _ = setVideoTimeCodeIntervalFrames
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeInterval_frames :: AttrLabelProxy "frames"
-videoTimeCodeInterval_frames = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoTimeCodeInterval
-type instance O.AttributeList VideoTimeCodeInterval = VideoTimeCodeIntervalAttributeList
-type VideoTimeCodeIntervalAttributeList = ('[ '("hours", VideoTimeCodeIntervalHoursFieldInfo), '("minutes", VideoTimeCodeIntervalMinutesFieldInfo), '("seconds", VideoTimeCodeIntervalSecondsFieldInfo), '("frames", VideoTimeCodeIntervalFramesFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoTimeCodeInterval::new
--- method type : Constructor
--- Args : [Arg {argCName = "hours", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the hours field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "minutes", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the minutes field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "seconds", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the seconds field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frames", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the frames field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_interval_new" gst_video_time_code_interval_new :: 
-    Word32 ->                               -- hours : TBasicType TUInt
-    Word32 ->                               -- minutes : TBasicType TUInt
-    Word32 ->                               -- seconds : TBasicType TUInt
-    Word32 ->                               -- frames : TBasicType TUInt
-    IO (Ptr VideoTimeCodeInterval)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.12/
--}
-videoTimeCodeIntervalNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    Word32
-    {- ^ /@hours@/: the hours field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@minutes@/: the minutes field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@seconds@/: the seconds field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@frames@/: the frames field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> m VideoTimeCodeInterval
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' with the given values. -}
-videoTimeCodeIntervalNew hours minutes seconds frames = liftIO $ do
-    result <- gst_video_time_code_interval_new hours minutes seconds frames
-    checkUnexpectedReturnNULL "videoTimeCodeIntervalNew" result
-    result' <- (wrapBoxed VideoTimeCodeInterval) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCodeInterval::new_from_string
--- method type : Constructor
--- Args : [Arg {argCName = "tc_inter_str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The string that represents the #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_interval_new_from_string" gst_video_time_code_interval_new_from_string :: 
-    CString ->                              -- tc_inter_str : TBasicType TUTF8
-    IO (Ptr VideoTimeCodeInterval)
-
-{- |
-/@tcInterStr@/ must only have \":\" as separators.
-
-/Since: 1.12/
--}
-videoTimeCodeIntervalNewFromString ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    T.Text
-    {- ^ /@tcInterStr@/: The string that represents the 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> m (Maybe VideoTimeCodeInterval)
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' from the given string
-  or 'Nothing' if the string could not be passed. -}
-videoTimeCodeIntervalNewFromString tcInterStr = liftIO $ do
-    tcInterStr' <- textToCString tcInterStr
-    result <- gst_video_time_code_interval_new_from_string tcInterStr'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (wrapBoxed VideoTimeCodeInterval) result'
-        return result''
-    freeMem tcInterStr'
-    return maybeResult
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoTimeCodeInterval::clear
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_interval_clear" gst_video_time_code_interval_clear :: 
-    Ptr VideoTimeCodeInterval ->            -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"})
-    IO ()
-
-{- |
-Initializes /@tc@/ with empty\/zero\/NULL values.
-
-/Since: 1.12/
--}
-videoTimeCodeIntervalClear ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCodeInterval
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> m ()
-videoTimeCodeIntervalClear tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_interval_clear tc'
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalClearMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoTimeCodeIntervalClearMethodInfo VideoTimeCodeInterval signature where
-    overloadedMethod _ = videoTimeCodeIntervalClear
-
-#endif
-
--- method VideoTimeCodeInterval::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_interval_copy" gst_video_time_code_interval_copy :: 
-    Ptr VideoTimeCodeInterval ->            -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"})
-    IO (Ptr VideoTimeCodeInterval)
-
-{- |
-/No description available in the introspection data./
-
-/Since: 1.12/
--}
-videoTimeCodeIntervalCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCodeInterval
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> m VideoTimeCodeInterval
-    {- ^ __Returns:__ a new 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' with the same values as /@tc@/. -}
-videoTimeCodeIntervalCopy tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    result <- gst_video_time_code_interval_copy tc'
-    checkUnexpectedReturnNULL "videoTimeCodeIntervalCopy" result
-    result' <- (wrapBoxed VideoTimeCodeInterval) result
-    touchManagedPtr tc
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalCopyMethodInfo
-instance (signature ~ (m VideoTimeCodeInterval), MonadIO m) => O.MethodInfo VideoTimeCodeIntervalCopyMethodInfo VideoTimeCodeInterval signature where
-    overloadedMethod _ = videoTimeCodeIntervalCopy
-
-#endif
-
--- method VideoTimeCodeInterval::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_interval_free" gst_video_time_code_interval_free :: 
-    Ptr VideoTimeCodeInterval ->            -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"})
-    IO ()
-
-{- |
-Frees /@tc@/.
-
-/Since: 1.12/
--}
-videoTimeCodeIntervalFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCodeInterval
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> m ()
-videoTimeCodeIntervalFree tc = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_interval_free tc'
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoTimeCodeIntervalFreeMethodInfo VideoTimeCodeInterval signature where
-    overloadedMethod _ = videoTimeCodeIntervalFree
-
-#endif
-
--- method VideoTimeCodeInterval::init
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "tc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "hours", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the hours field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "minutes", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the minutes field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "seconds", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the seconds field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "frames", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the frames field of #GstVideoTimeCodeInterval", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_interval_init" gst_video_time_code_interval_init :: 
-    Ptr VideoTimeCodeInterval ->            -- tc : TInterface (Name {namespace = "GstVideo", name = "VideoTimeCodeInterval"})
-    Word32 ->                               -- hours : TBasicType TUInt
-    Word32 ->                               -- minutes : TBasicType TUInt
-    Word32 ->                               -- seconds : TBasicType TUInt
-    Word32 ->                               -- frames : TBasicType TUInt
-    IO ()
-
-{- |
-Initializes /@tc@/ with the given values.
-
-/Since: 1.12/
--}
-videoTimeCodeIntervalInit ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoTimeCodeInterval
-    {- ^ /@tc@/: a 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@hours@/: the hours field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@minutes@/: the minutes field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@seconds@/: the seconds field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> Word32
-    {- ^ /@frames@/: the frames field of 'GI.GstVideo.Structs.VideoTimeCodeInterval.VideoTimeCodeInterval' -}
-    -> m ()
-videoTimeCodeIntervalInit tc hours minutes seconds frames = liftIO $ do
-    tc' <- unsafeManagedPtrGetPtr tc
-    gst_video_time_code_interval_init tc' hours minutes seconds frames
-    touchManagedPtr tc
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalInitMethodInfo
-instance (signature ~ (Word32 -> Word32 -> Word32 -> Word32 -> m ()), MonadIO m) => O.MethodInfo VideoTimeCodeIntervalInitMethodInfo VideoTimeCodeInterval signature where
-    overloadedMethod _ = videoTimeCodeIntervalInit
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoTimeCodeIntervalMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoTimeCodeIntervalMethod "clear" o = VideoTimeCodeIntervalClearMethodInfo
-    ResolveVideoTimeCodeIntervalMethod "copy" o = VideoTimeCodeIntervalCopyMethodInfo
-    ResolveVideoTimeCodeIntervalMethod "free" o = VideoTimeCodeIntervalFreeMethodInfo
-    ResolveVideoTimeCodeIntervalMethod "init" o = VideoTimeCodeIntervalInitMethodInfo
-    ResolveVideoTimeCodeIntervalMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoTimeCodeIntervalMethod t VideoTimeCodeInterval, O.MethodInfo info VideoTimeCodeInterval p) => OL.IsLabel t (VideoTimeCodeInterval -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoTimeCodeInterval.hs-boot b/GI/GstVideo/Structs/VideoTimeCodeInterval.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCodeInterval.hs-boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoTimeCodeInterval 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoTimeCodeInterval = VideoTimeCodeInterval (ManagedPtr VideoTimeCodeInterval)
-instance BoxedObject VideoTimeCodeInterval where
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalClearMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoTimeCodeIntervalInitMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoTimeCodeMeta.hs b/GI/GstVideo/Structs/VideoTimeCodeMeta.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCodeMeta.hs
+++ /dev/null
@@ -1,219 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-Extra buffer metadata describing the GstVideoTimeCode of the frame.
-
-Each frame is assumed to have its own timecode, i.e. they are not
-automatically incremented\/interpolated.
-
-/Since: 1.10/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoTimeCodeMeta
-    ( 
-
--- * Exported types
-    VideoTimeCodeMeta(..)                   ,
-    newZeroVideoTimeCodeMeta                ,
-    noVideoTimeCodeMeta                     ,
-
-
- -- * Methods
--- ** getInfo #method:getInfo#
-
-    videoTimeCodeMetaGetInfo                ,
-
-
-
-
- -- * Properties
--- ** meta #attr:meta#
-{- | parent 'GI.Gst.Structs.Meta.Meta'
--}
-    getVideoTimeCodeMetaMeta                ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeMeta_meta                  ,
-#endif
-
-
--- ** tc #attr:tc#
-{- | the GstVideoTimeCode to attach
--}
-    getVideoTimeCodeMetaTc                  ,
-#if ENABLE_OVERLOADING
-    videoTimeCodeMeta_tc                    ,
-#endif
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 GI.Gst.Structs.Meta as Gst.Meta
-import qualified GI.Gst.Structs.MetaInfo as Gst.MetaInfo
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoTimeCode as GstVideo.VideoTimeCode
-
--- | Memory-managed wrapper type.
-newtype VideoTimeCodeMeta = VideoTimeCodeMeta (ManagedPtr VideoTimeCodeMeta)
-instance WrappedPtr VideoTimeCodeMeta where
-    wrappedPtrCalloc = callocBytes 64
-    wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 64 >=> wrapPtr VideoTimeCodeMeta)
-    wrappedPtrFree = Just ptr_to_g_free
-
--- | Construct a `VideoTimeCodeMeta` struct initialized to zero.
-newZeroVideoTimeCodeMeta :: MonadIO m => m VideoTimeCodeMeta
-newZeroVideoTimeCodeMeta = liftIO $ wrappedPtrCalloc >>= wrapPtr VideoTimeCodeMeta
-
-instance tag ~ 'AttrSet => Constructible VideoTimeCodeMeta tag where
-    new _ attrs = do
-        o <- newZeroVideoTimeCodeMeta
-        GI.Attributes.set o attrs
-        return o
-
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoTimeCodeMeta`.
-noVideoTimeCodeMeta :: Maybe VideoTimeCodeMeta
-noVideoTimeCodeMeta = Nothing
-
-{- |
-Get the value of the “@meta@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeMeta #meta
-@
--}
-getVideoTimeCodeMetaMeta :: MonadIO m => VideoTimeCodeMeta -> m Gst.Meta.Meta
-getVideoTimeCodeMetaMeta s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 0 :: (Ptr Gst.Meta.Meta)
-    val' <- (newPtr Gst.Meta.Meta) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeMetaMetaFieldInfo
-instance AttrInfo VideoTimeCodeMetaMetaFieldInfo where
-    type AttrAllowedOps VideoTimeCodeMetaMetaFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeMetaMetaFieldInfo = (~) (Ptr Gst.Meta.Meta)
-    type AttrBaseTypeConstraint VideoTimeCodeMetaMetaFieldInfo = (~) VideoTimeCodeMeta
-    type AttrGetType VideoTimeCodeMetaMetaFieldInfo = Gst.Meta.Meta
-    type AttrLabel VideoTimeCodeMetaMetaFieldInfo = "meta"
-    type AttrOrigin VideoTimeCodeMetaMetaFieldInfo = VideoTimeCodeMeta
-    attrGet _ = getVideoTimeCodeMetaMeta
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeMeta_meta :: AttrLabelProxy "meta"
-videoTimeCodeMeta_meta = AttrLabelProxy
-
-#endif
-
-
-{- |
-Get the value of the “@tc@” field.
-When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-
-@
-'Data.GI.Base.Attributes.get' videoTimeCodeMeta #tc
-@
--}
-getVideoTimeCodeMetaTc :: MonadIO m => VideoTimeCodeMeta -> m GstVideo.VideoTimeCode.VideoTimeCode
-getVideoTimeCodeMetaTc s = liftIO $ withManagedPtr s $ \ptr -> do
-    let val = ptr `plusPtr` 16 :: (Ptr GstVideo.VideoTimeCode.VideoTimeCode)
-    val' <- (newBoxed GstVideo.VideoTimeCode.VideoTimeCode) val
-    return val'
-
-#if ENABLE_OVERLOADING
-data VideoTimeCodeMetaTcFieldInfo
-instance AttrInfo VideoTimeCodeMetaTcFieldInfo where
-    type AttrAllowedOps VideoTimeCodeMetaTcFieldInfo = '[ 'AttrGet]
-    type AttrSetTypeConstraint VideoTimeCodeMetaTcFieldInfo = (~) (Ptr GstVideo.VideoTimeCode.VideoTimeCode)
-    type AttrBaseTypeConstraint VideoTimeCodeMetaTcFieldInfo = (~) VideoTimeCodeMeta
-    type AttrGetType VideoTimeCodeMetaTcFieldInfo = GstVideo.VideoTimeCode.VideoTimeCode
-    type AttrLabel VideoTimeCodeMetaTcFieldInfo = "tc"
-    type AttrOrigin VideoTimeCodeMetaTcFieldInfo = VideoTimeCodeMeta
-    attrGet _ = getVideoTimeCodeMetaTc
-    attrSet _ = undefined
-    attrConstruct = undefined
-    attrClear _ = undefined
-
-videoTimeCodeMeta_tc :: AttrLabelProxy "tc"
-videoTimeCodeMeta_tc = AttrLabelProxy
-
-#endif
-
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoTimeCodeMeta
-type instance O.AttributeList VideoTimeCodeMeta = VideoTimeCodeMetaAttributeList
-type VideoTimeCodeMetaAttributeList = ('[ '("meta", VideoTimeCodeMetaMetaFieldInfo), '("tc", VideoTimeCodeMetaTcFieldInfo)] :: [(Symbol, *)])
-#endif
-
--- method VideoTimeCodeMeta::get_info
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "Gst", name = "MetaInfo"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_time_code_meta_get_info" gst_video_time_code_meta_get_info :: 
-    IO (Ptr Gst.MetaInfo.MetaInfo)
-
-{- |
-/No description available in the introspection data./
--}
-videoTimeCodeMetaGetInfo ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    m Gst.MetaInfo.MetaInfo
-videoTimeCodeMetaGetInfo  = liftIO $ do
-    result <- gst_video_time_code_meta_get_info
-    checkUnexpectedReturnNULL "videoTimeCodeMetaGetInfo" result
-    result' <- (newPtr Gst.MetaInfo.MetaInfo) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoTimeCodeMetaMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoTimeCodeMetaMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoTimeCodeMetaMethod t VideoTimeCodeMeta, O.MethodInfo info VideoTimeCodeMeta p) => OL.IsLabel t (VideoTimeCodeMeta -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoTimeCodeMeta.hs-boot b/GI/GstVideo/Structs/VideoTimeCodeMeta.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoTimeCodeMeta.hs-boot
+++ /dev/null
@@ -1,26 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoTimeCodeMeta 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoTimeCodeMeta = VideoTimeCodeMeta (ManagedPtr VideoTimeCodeMeta)
-instance WrappedPtr VideoTimeCodeMeta where
diff --git a/GI/GstVideo/Structs/VideoVBIEncoder.hs b/GI/GstVideo/Structs/VideoVBIEncoder.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoVBIEncoder.hs
+++ /dev/null
@@ -1,325 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-An encoder for writing ancillary data to the
-Vertical Blanking Interval lines of component signals.
-
-/Since: 1.16/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoVBIEncoder
-    ( 
-
--- * Exported types
-    VideoVBIEncoder(..)                     ,
-    noVideoVBIEncoder                       ,
-
-
- -- * Methods
--- ** addAncillary #method:addAncillary#
-
-#if ENABLE_OVERLOADING
-    VideoVBIEncoderAddAncillaryMethodInfo   ,
-#endif
-    videoVBIEncoderAddAncillary             ,
-
-
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoVBIEncoderCopyMethodInfo           ,
-#endif
-    videoVBIEncoderCopy                     ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoVBIEncoderFreeMethodInfo           ,
-#endif
-    videoVBIEncoderFree                     ,
-
-
--- ** new #method:new#
-
-    videoVBIEncoderNew                      ,
-
-
--- ** writeLine #method:writeLine#
-
-#if ENABLE_OVERLOADING
-    VideoVBIEncoderWriteLineMethodInfo      ,
-#endif
-    videoVBIEncoderWriteLine                ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-
--- | Memory-managed wrapper type.
-newtype VideoVBIEncoder = VideoVBIEncoder (ManagedPtr VideoVBIEncoder)
-foreign import ccall "gst_video_vbi_encoder_get_type" c_gst_video_vbi_encoder_get_type :: 
-    IO GType
-
-instance BoxedObject VideoVBIEncoder where
-    boxedType _ = c_gst_video_vbi_encoder_get_type
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoVBIEncoder`.
-noVideoVBIEncoder :: Maybe VideoVBIEncoder
-noVideoVBIEncoder = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoVBIEncoder
-type instance O.AttributeList VideoVBIEncoder = VideoVBIEncoderAttributeList
-type VideoVBIEncoderAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoVBIEncoder::new
--- method type : Constructor
--- Args : [Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "pixel_width", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The width in pixel to use", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_encoder_new" gst_video_vbi_encoder_new :: 
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Word32 ->                               -- pixel_width : TBasicType TUInt32
-    IO (Ptr VideoVBIEncoder)
-
-{- |
-Create a new 'GI.GstVideo.Structs.VideoVBIEncoder.VideoVBIEncoder' for the specified /@format@/ and /@pixelWidth@/.
-
-/Since: 1.16/
--}
-videoVBIEncoderNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' -}
-    -> Word32
-    {- ^ /@pixelWidth@/: The width in pixel to use -}
-    -> m VideoVBIEncoder
-    {- ^ __Returns:__ The new 'GI.GstVideo.Structs.VideoVBIEncoder.VideoVBIEncoder' or 'Nothing' if the /@format@/ and\/or /@pixelWidth@/
-is not supported. -}
-videoVBIEncoderNew format pixelWidth = liftIO $ do
-    let format' = (fromIntegral . fromEnum) format
-    result <- gst_video_vbi_encoder_new format' pixelWidth
-    checkUnexpectedReturnNULL "videoVBIEncoderNew" result
-    result' <- (wrapBoxed VideoVBIEncoder) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoVBIEncoder::add_ancillary
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoVBIEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "composite", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "%TRUE if composite ADF should be created, component otherwise", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "DID", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The Data Identifier", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "SDID_block_number", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The Secondary Data Identifier (if type 2) or the Data\n                    Block Number (if type 1)", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TCArray False (-1) 5 (TBasicType TUInt8), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The user data content of the Ancillary packet.\n   Does not contain the ADF, DID, SDID nor CS.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The amount of data (in bytes) in @data (max 255 bytes)", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : [Arg {argCName = "data_count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The amount of data (in bytes) in @data (max 255 bytes)", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- returnType : Just (TBasicType TBoolean)
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_encoder_add_ancillary" gst_video_vbi_encoder_add_ancillary :: 
-    Ptr VideoVBIEncoder ->                  -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"})
-    CInt ->                                 -- composite : TBasicType TBoolean
-    Word8 ->                                -- DID : TBasicType TUInt8
-    Word8 ->                                -- SDID_block_number : TBasicType TUInt8
-    Ptr Word8 ->                            -- data : TCArray False (-1) 5 (TBasicType TUInt8)
-    Word32 ->                               -- data_count : TBasicType TUInt
-    IO CInt
-
-{- |
-Stores Video Ancillary data, according to SMPTE-291M specification.
-
-Note that the contents of the data are always read as 8bit data (i.e. do not contain
-the parity check bits).
-
-/Since: 1.16/
--}
-videoVBIEncoderAddAncillary ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIEncoder
-    {- ^ /@encoder@/: a 'GI.GstVideo.Structs.VideoVBIEncoder.VideoVBIEncoder' -}
-    -> Bool
-    {- ^ /@composite@/: 'True' if composite ADF should be created, component otherwise -}
-    -> Word8
-    {- ^ /@dID@/: The Data Identifier -}
-    -> Word8
-    {- ^ /@sDIDBlockNumber@/: The Secondary Data Identifier (if type 2) or the Data
-                    Block Number (if type 1) -}
-    -> ByteString
-    {- ^ /@data@/: The user data content of the Ancillary packet.
-   Does not contain the ADF, DID, SDID nor CS. -}
-    -> m Bool
-    {- ^ __Returns:__ 'True' if enough space was left in the current line, 'False'
-         otherwise. -}
-videoVBIEncoderAddAncillary encoder composite dID sDIDBlockNumber data_ = liftIO $ do
-    let dataCount = fromIntegral $ B.length data_
-    encoder' <- unsafeManagedPtrGetPtr encoder
-    let composite' = (fromIntegral . fromEnum) composite
-    data_' <- packByteString data_
-    result <- gst_video_vbi_encoder_add_ancillary encoder' composite' dID sDIDBlockNumber data_' dataCount
-    let result' = (/= 0) result
-    touchManagedPtr encoder
-    freeMem data_'
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderAddAncillaryMethodInfo
-instance (signature ~ (Bool -> Word8 -> Word8 -> ByteString -> m Bool), MonadIO m) => O.MethodInfo VideoVBIEncoderAddAncillaryMethodInfo VideoVBIEncoder signature where
-    overloadedMethod _ = videoVBIEncoderAddAncillary
-
-#endif
-
--- method VideoVBIEncoder::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_encoder_copy" gst_video_vbi_encoder_copy :: 
-    Ptr VideoVBIEncoder ->                  -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"})
-    IO (Ptr VideoVBIEncoder)
-
-{- |
-/No description available in the introspection data./
--}
-videoVBIEncoderCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIEncoder
-    -> m VideoVBIEncoder
-videoVBIEncoderCopy encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrGetPtr encoder
-    result <- gst_video_vbi_encoder_copy encoder'
-    checkUnexpectedReturnNULL "videoVBIEncoderCopy" result
-    result' <- (wrapBoxed VideoVBIEncoder) result
-    touchManagedPtr encoder
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderCopyMethodInfo
-instance (signature ~ (m VideoVBIEncoder), MonadIO m) => O.MethodInfo VideoVBIEncoderCopyMethodInfo VideoVBIEncoder signature where
-    overloadedMethod _ = videoVBIEncoderCopy
-
-#endif
-
--- method VideoVBIEncoder::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoVBIEncoder", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_encoder_free" gst_video_vbi_encoder_free :: 
-    Ptr VideoVBIEncoder ->                  -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"})
-    IO ()
-
-{- |
-Frees the /@encoder@/.
-
-/Since: 1.16/
--}
-videoVBIEncoderFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIEncoder
-    {- ^ /@encoder@/: a 'GI.GstVideo.Structs.VideoVBIEncoder.VideoVBIEncoder' -}
-    -> m ()
-videoVBIEncoderFree encoder = liftIO $ do
-    encoder' <- unsafeManagedPtrGetPtr encoder
-    gst_video_vbi_encoder_free encoder'
-    touchManagedPtr encoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoVBIEncoderFreeMethodInfo VideoVBIEncoder signature where
-    overloadedMethod _ = videoVBIEncoderFree
-
-#endif
-
--- method VideoVBIEncoder::write_line
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "encoder", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_encoder_write_line" gst_video_vbi_encoder_write_line :: 
-    Ptr VideoVBIEncoder ->                  -- encoder : TInterface (Name {namespace = "GstVideo", name = "VideoVBIEncoder"})
-    Word8 ->                                -- data : TBasicType TUInt8
-    IO ()
-
-{- |
-/No description available in the introspection data./
--}
-videoVBIEncoderWriteLine ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIEncoder
-    -> Word8
-    -> m ()
-videoVBIEncoderWriteLine encoder data_ = liftIO $ do
-    encoder' <- unsafeManagedPtrGetPtr encoder
-    gst_video_vbi_encoder_write_line encoder' data_
-    touchManagedPtr encoder
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderWriteLineMethodInfo
-instance (signature ~ (Word8 -> m ()), MonadIO m) => O.MethodInfo VideoVBIEncoderWriteLineMethodInfo VideoVBIEncoder signature where
-    overloadedMethod _ = videoVBIEncoderWriteLine
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoVBIEncoderMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoVBIEncoderMethod "addAncillary" o = VideoVBIEncoderAddAncillaryMethodInfo
-    ResolveVideoVBIEncoderMethod "copy" o = VideoVBIEncoderCopyMethodInfo
-    ResolveVideoVBIEncoderMethod "free" o = VideoVBIEncoderFreeMethodInfo
-    ResolveVideoVBIEncoderMethod "writeLine" o = VideoVBIEncoderWriteLineMethodInfo
-    ResolveVideoVBIEncoderMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoVBIEncoderMethod t VideoVBIEncoder, O.MethodInfo info VideoVBIEncoder p) => OL.IsLabel t (VideoVBIEncoder -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoVBIEncoder.hs-boot b/GI/GstVideo/Structs/VideoVBIEncoder.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoVBIEncoder.hs-boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoVBIEncoder 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoVBIEncoder = VideoVBIEncoder (ManagedPtr VideoVBIEncoder)
-instance BoxedObject VideoVBIEncoder where
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderAddAncillaryMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoVBIEncoderWriteLineMethodInfo
-#endif
diff --git a/GI/GstVideo/Structs/VideoVBIParser.hs b/GI/GstVideo/Structs/VideoVBIParser.hs
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoVBIParser.hs
+++ /dev/null
@@ -1,313 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
-
-A parser for detecting and extracting /@gstVideoAncillary@/ data from
-Vertical Blanking Interval lines of component signals.
-
-/Since: 1.16/
--}
-
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-
-module GI.GstVideo.Structs.VideoVBIParser
-    ( 
-
--- * Exported types
-    VideoVBIParser(..)                      ,
-    noVideoVBIParser                        ,
-
-
- -- * Methods
--- ** addLine #method:addLine#
-
-#if ENABLE_OVERLOADING
-    VideoVBIParserAddLineMethodInfo         ,
-#endif
-    videoVBIParserAddLine                   ,
-
-
--- ** copy #method:copy#
-
-#if ENABLE_OVERLOADING
-    VideoVBIParserCopyMethodInfo            ,
-#endif
-    videoVBIParserCopy                      ,
-
-
--- ** free #method:free#
-
-#if ENABLE_OVERLOADING
-    VideoVBIParserFreeMethodInfo            ,
-#endif
-    videoVBIParserFree                      ,
-
-
--- ** getAncillary #method:getAncillary#
-
-#if ENABLE_OVERLOADING
-    VideoVBIParserGetAncillaryMethodInfo    ,
-#endif
-    videoVBIParserGetAncillary              ,
-
-
--- ** new #method:new#
-
-    videoVBIParserNew                       ,
-
-
-
-
-    ) 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.ManagedPtr as B.ManagedPtr
-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.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 {-# SOURCE #-} qualified GI.GstVideo.Enums as GstVideo.Enums
-import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoAncillary as GstVideo.VideoAncillary
-
--- | Memory-managed wrapper type.
-newtype VideoVBIParser = VideoVBIParser (ManagedPtr VideoVBIParser)
-foreign import ccall "gst_video_vbi_parser_get_type" c_gst_video_vbi_parser_get_type :: 
-    IO GType
-
-instance BoxedObject VideoVBIParser where
-    boxedType _ = c_gst_video_vbi_parser_get_type
-
--- | A convenience alias for `Nothing` :: `Maybe` `VideoVBIParser`.
-noVideoVBIParser :: Maybe VideoVBIParser
-noVideoVBIParser = Nothing
-
-
-#if ENABLE_OVERLOADING
-instance O.HasAttributeList VideoVBIParser
-type instance O.AttributeList VideoVBIParser = VideoVBIParserAttributeList
-type VideoVBIParserAttributeList = ('[ ] :: [(Symbol, *)])
-#endif
-
--- method VideoVBIParser::new
--- method type : Constructor
--- Args : [Arg {argCName = "format", argType = TInterface (Name {namespace = "GstVideo", name = "VideoFormat"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoFormat", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "pixel_width", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The width in pixel to use", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_parser_new" gst_video_vbi_parser_new :: 
-    CUInt ->                                -- format : TInterface (Name {namespace = "GstVideo", name = "VideoFormat"})
-    Word32 ->                               -- pixel_width : TBasicType TUInt32
-    IO (Ptr VideoVBIParser)
-
-{- |
-Create a new 'GI.GstVideo.Structs.VideoVBIParser.VideoVBIParser' for the specified /@format@/ and /@pixelWidth@/.
-
-/Since: 1.16/
--}
-videoVBIParserNew ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    GstVideo.Enums.VideoFormat
-    {- ^ /@format@/: a 'GI.GstVideo.Enums.VideoFormat' -}
-    -> Word32
-    {- ^ /@pixelWidth@/: The width in pixel to use -}
-    -> m VideoVBIParser
-    {- ^ __Returns:__ The new 'GI.GstVideo.Structs.VideoVBIParser.VideoVBIParser' or 'Nothing' if the /@format@/ and\/or /@pixelWidth@/
-is not supported. -}
-videoVBIParserNew format pixelWidth = liftIO $ do
-    let format' = (fromIntegral . fromEnum) format
-    result <- gst_video_vbi_parser_new format' pixelWidth
-    checkUnexpectedReturnNULL "videoVBIParserNew" result
-    result' <- (wrapBoxed VideoVBIParser) result
-    return result'
-
-#if ENABLE_OVERLOADING
-#endif
-
--- method VideoVBIParser::add_line
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "parser", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoVBIParser", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TCArray False (-1) (-1) (TBasicType TUInt8), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "The line of data to parse", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_parser_add_line" gst_video_vbi_parser_add_line :: 
-    Ptr VideoVBIParser ->                   -- parser : TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"})
-    Ptr Word8 ->                            -- data : TCArray False (-1) (-1) (TBasicType TUInt8)
-    IO ()
-
-{- |
-Provide a new line of data to the /@parser@/. Call 'GI.GstVideo.Structs.VideoVBIParser.videoVBIParserGetAncillary'
-to get the Ancillary data that might be present on that line.
-
-/Since: 1.16/
--}
-videoVBIParserAddLine ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIParser
-    {- ^ /@parser@/: a 'GI.GstVideo.Structs.VideoVBIParser.VideoVBIParser' -}
-    -> Ptr Word8
-    {- ^ /@data@/: The line of data to parse -}
-    -> m ()
-videoVBIParserAddLine parser data_ = liftIO $ do
-    parser' <- unsafeManagedPtrGetPtr parser
-    gst_video_vbi_parser_add_line parser' data_
-    touchManagedPtr parser
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoVBIParserAddLineMethodInfo
-instance (signature ~ (Ptr Word8 -> m ()), MonadIO m) => O.MethodInfo VideoVBIParserAddLineMethodInfo VideoVBIParser signature where
-    overloadedMethod _ = videoVBIParserAddLine
-
-#endif
-
--- method VideoVBIParser::copy
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "parser", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_parser_copy" gst_video_vbi_parser_copy :: 
-    Ptr VideoVBIParser ->                   -- parser : TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"})
-    IO (Ptr VideoVBIParser)
-
-{- |
-/No description available in the introspection data./
--}
-videoVBIParserCopy ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIParser
-    -> m VideoVBIParser
-videoVBIParserCopy parser = liftIO $ do
-    parser' <- unsafeManagedPtrGetPtr parser
-    result <- gst_video_vbi_parser_copy parser'
-    checkUnexpectedReturnNULL "videoVBIParserCopy" result
-    result' <- (wrapBoxed VideoVBIParser) result
-    touchManagedPtr parser
-    return result'
-
-#if ENABLE_OVERLOADING
-data VideoVBIParserCopyMethodInfo
-instance (signature ~ (m VideoVBIParser), MonadIO m) => O.MethodInfo VideoVBIParserCopyMethodInfo VideoVBIParser signature where
-    overloadedMethod _ = videoVBIParserCopy
-
-#endif
-
--- method VideoVBIParser::free
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "parser", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoVBIParser", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_parser_free" gst_video_vbi_parser_free :: 
-    Ptr VideoVBIParser ->                   -- parser : TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"})
-    IO ()
-
-{- |
-Frees the /@parser@/.
-
-/Since: 1.16/
--}
-videoVBIParserFree ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIParser
-    {- ^ /@parser@/: a 'GI.GstVideo.Structs.VideoVBIParser.VideoVBIParser' -}
-    -> m ()
-videoVBIParserFree parser = liftIO $ do
-    parser' <- unsafeManagedPtrGetPtr parser
-    gst_video_vbi_parser_free parser'
-    touchManagedPtr parser
-    return ()
-
-#if ENABLE_OVERLOADING
-data VideoVBIParserFreeMethodInfo
-instance (signature ~ (m ()), MonadIO m) => O.MethodInfo VideoVBIParserFreeMethodInfo VideoVBIParser signature where
-    overloadedMethod _ = videoVBIParserFree
-
-#endif
-
--- method VideoVBIParser::get_ancillary
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "parser", argType = TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoVBIParser", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "anc", argType = TInterface (Name {namespace = "GstVideo", name = "VideoAncillary"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GstVideoAncillary to start the eventual ancillary data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface (Name {namespace = "GstVideo", name = "VideoVBIParserResult"}))
--- throws : False
--- Skip return : False
-
-foreign import ccall "gst_video_vbi_parser_get_ancillary" gst_video_vbi_parser_get_ancillary :: 
-    Ptr VideoVBIParser ->                   -- parser : TInterface (Name {namespace = "GstVideo", name = "VideoVBIParser"})
-    Ptr GstVideo.VideoAncillary.VideoAncillary -> -- anc : TInterface (Name {namespace = "GstVideo", name = "VideoAncillary"})
-    IO CUInt
-
-{- |
-Parse the line provided previously by 'GI.GstVideo.Structs.VideoVBIParser.videoVBIParserAddLine'.
-
-/Since: 1.16/
--}
-videoVBIParserGetAncillary ::
-    (B.CallStack.HasCallStack, MonadIO m) =>
-    VideoVBIParser
-    {- ^ /@parser@/: a 'GI.GstVideo.Structs.VideoVBIParser.VideoVBIParser' -}
-    -> m ((GstVideo.Enums.VideoVBIParserResult, GstVideo.VideoAncillary.VideoAncillary))
-    {- ^ __Returns:__ 'GI.GstVideo.Enums.VideoVBIParserResultOk' if ancillary data was found and
-/@anc@/ was filled. 'GI.GstVideo.Enums.VideoVBIParserResultDone' if there wasn\'t any
-data. -}
-videoVBIParserGetAncillary parser = liftIO $ do
-    parser' <- unsafeManagedPtrGetPtr parser
-    anc <- callocBytes 48 :: IO (Ptr GstVideo.VideoAncillary.VideoAncillary)
-    result <- gst_video_vbi_parser_get_ancillary parser' anc
-    let result' = (toEnum . fromIntegral) result
-    anc' <- (wrapPtr GstVideo.VideoAncillary.VideoAncillary) anc
-    touchManagedPtr parser
-    return (result', anc')
-
-#if ENABLE_OVERLOADING
-data VideoVBIParserGetAncillaryMethodInfo
-instance (signature ~ (m ((GstVideo.Enums.VideoVBIParserResult, GstVideo.VideoAncillary.VideoAncillary))), MonadIO m) => O.MethodInfo VideoVBIParserGetAncillaryMethodInfo VideoVBIParser signature where
-    overloadedMethod _ = videoVBIParserGetAncillary
-
-#endif
-
-#if ENABLE_OVERLOADING
-type family ResolveVideoVBIParserMethod (t :: Symbol) (o :: *) :: * where
-    ResolveVideoVBIParserMethod "addLine" o = VideoVBIParserAddLineMethodInfo
-    ResolveVideoVBIParserMethod "copy" o = VideoVBIParserCopyMethodInfo
-    ResolveVideoVBIParserMethod "free" o = VideoVBIParserFreeMethodInfo
-    ResolveVideoVBIParserMethod "getAncillary" o = VideoVBIParserGetAncillaryMethodInfo
-    ResolveVideoVBIParserMethod l o = O.MethodResolutionFailed l o
-
-instance (info ~ ResolveVideoVBIParserMethod t VideoVBIParser, O.MethodInfo info VideoVBIParser p) => OL.IsLabel t (VideoVBIParser -> p) where
-#if MIN_VERSION_base(4,10,0)
-    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#else
-    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
-#endif
-
-#endif
-
-
diff --git a/GI/GstVideo/Structs/VideoVBIParser.hs-boot b/GI/GstVideo/Structs/VideoVBIParser.hs-boot
deleted file mode 100644
--- a/GI/GstVideo/Structs/VideoVBIParser.hs-boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
-       && !defined(__HADDOCK_VERSION__))
-module GI.GstVideo.Structs.VideoVBIParser 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.ManagedPtr as B.ManagedPtr
-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.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
-
-newtype VideoVBIParser = VideoVBIParser (ManagedPtr VideoVBIParser)
-instance BoxedObject VideoVBIParser where
-#if ENABLE_OVERLOADING
-data VideoVBIParserAddLineMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoVBIParserCopyMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoVBIParserFreeMethodInfo
-#endif
-#if ENABLE_OVERLOADING
-data VideoVBIParserGetAncillaryMethodInfo
-#endif
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 # Documentation
 Autogenerated documentation for this package can be found at
 
-[https://hackage.haskell.org/package/gi-gstvideo-1.0.18/docs/GI-GstVideo.html](https://hackage.haskell.org/package/gi-gstvideo-1.0.18/docs/GI-GstVideo.html)
+[https://hackage.haskell.org/package/gi-gstvideo-1.0.19/docs/GI-GstVideo.html](https://hackage.haskell.org/package/gi-gstvideo-1.0.19/docs/GI-GstVideo.html)
 
 For general documentation on using [haskell-gi](https://github.com/haskell-gi/haskell-gi) based bindings, see [the project page](https://github.com/haskell-gi/haskell-gi) or [the Wiki](https://github.com/haskell-gi/haskell-gi/wiki).
diff --git a/gi-gstvideo.cabal b/gi-gstvideo.cabal
--- a/gi-gstvideo.cabal
+++ b/gi-gstvideo.cabal
@@ -1,5 +1,5 @@
 name:                 gi-gstvideo
-version:              1.0.18
+version:              1.0.19
 synopsis:             GStreamerVideo bindings
 description:          Bindings for GStreamerVideo, autogenerated by haskell-gi.
 homepage:             https://github.com/haskell-gi/haskell-gi
@@ -44,6 +44,62 @@
               build-depends: haskell-gi-overloading == 0.0
 
       exposed-modules: GI.GstVideo,
+                       GI.GstVideo.Callbacks,
+                       GI.GstVideo.Constants,
+                       GI.GstVideo.Enums,
+                       GI.GstVideo.Flags,
+                       GI.GstVideo.Functions,
+                       GI.GstVideo.Interfaces,
+                       GI.GstVideo.Interfaces.ColorBalance,
+                       GI.GstVideo.Interfaces.Navigation,
+                       GI.GstVideo.Interfaces.VideoDirection,
+                       GI.GstVideo.Interfaces.VideoOrientation,
+                       GI.GstVideo.Interfaces.VideoOverlay,
+                       GI.GstVideo.Objects,
+                       GI.GstVideo.Objects.ColorBalanceChannel,
+                       GI.GstVideo.Objects.VideoAggregator,
+                       GI.GstVideo.Objects.VideoAggregatorConvertPad,
+                       GI.GstVideo.Objects.VideoAggregatorPad,
+                       GI.GstVideo.Objects.VideoBufferPool,
+                       GI.GstVideo.Objects.VideoDecoder,
+                       GI.GstVideo.Objects.VideoEncoder,
+                       GI.GstVideo.Objects.VideoFilter,
+                       GI.GstVideo.Objects.VideoMultiviewFlagsSet,
+                       GI.GstVideo.Objects.VideoSink,
+                       GI.GstVideo.Structs,
+                       GI.GstVideo.Structs.VideoAffineTransformationMeta,
+                       GI.GstVideo.Structs.VideoAlignment,
+                       GI.GstVideo.Structs.VideoAncillary,
+                       GI.GstVideo.Structs.VideoCaptionMeta,
+                       GI.GstVideo.Structs.VideoChromaResample,
+                       GI.GstVideo.Structs.VideoCodecFrame,
+                       GI.GstVideo.Structs.VideoCodecState,
+                       GI.GstVideo.Structs.VideoColorPrimariesInfo,
+                       GI.GstVideo.Structs.VideoColorimetry,
+                       GI.GstVideo.Structs.VideoConverter,
+                       GI.GstVideo.Structs.VideoCropMeta,
+                       GI.GstVideo.Structs.VideoDither,
+                       GI.GstVideo.Structs.VideoFormatInfo,
+                       GI.GstVideo.Structs.VideoFrame,
+                       GI.GstVideo.Structs.VideoGLTextureUploadMeta,
+                       GI.GstVideo.Structs.VideoInfo,
+                       GI.GstVideo.Structs.VideoMeta,
+                       GI.GstVideo.Structs.VideoMetaTransform,
+                       GI.GstVideo.Structs.VideoOverlayComposition,
+                       GI.GstVideo.Structs.VideoOverlayCompositionMeta,
+                       GI.GstVideo.Structs.VideoOverlayRectangle,
+                       GI.GstVideo.Structs.VideoRectangle,
+                       GI.GstVideo.Structs.VideoRegionOfInterestMeta,
+                       GI.GstVideo.Structs.VideoResampler,
+                       GI.GstVideo.Structs.VideoScaler,
+                       GI.GstVideo.Structs.VideoTimeCode,
+                       GI.GstVideo.Structs.VideoTimeCodeConfig,
+                       GI.GstVideo.Structs.VideoTimeCodeInterval,
+                       GI.GstVideo.Structs.VideoTimeCodeMeta,
+                       GI.GstVideo.Structs.VideoVBIEncoder,
+                       GI.GstVideo.Structs.VideoVBIParser
+
+      autogen-modules: GI.GstVideo,
                        GI.GstVideo.Callbacks,
                        GI.GstVideo.Constants,
                        GI.GstVideo.Enums,
