{-# 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

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

module GI.GstTag.Constants
    ( 
    pattern TAG_MUSICBRAINZ_TRMID           ,
    pattern TAG_MUSICBRAINZ_TRACKID         ,
    pattern TAG_MUSICBRAINZ_RELEASETRACKID  ,
    pattern TAG_MUSICBRAINZ_RELEASEGROUPID  ,
    pattern TAG_MUSICBRAINZ_ARTISTID        ,
    pattern TAG_MUSICBRAINZ_ALBUMID         ,
    pattern TAG_MUSICBRAINZ_ALBUMARTISTID   ,
    pattern TAG_MUSICAL_KEY                 ,
    pattern TAG_IMAGE_VERTICAL_PPI          ,
    pattern TAG_IMAGE_HORIZONTAL_PPI        ,
    pattern TAG_ID3V2_HEADER_SIZE           ,
    pattern TAG_CMML_STREAM                 ,
    pattern TAG_CMML_HEAD                   ,
    pattern TAG_CMML_CLIP                   ,
    pattern TAG_CDDA_MUSICBRAINZ_DISCID_FULL,
    pattern TAG_CDDA_MUSICBRAINZ_DISCID     ,
    pattern TAG_CDDA_CDDB_DISCID_FULL       ,
    pattern TAG_CDDA_CDDB_DISCID            ,
    pattern TAG_CAPTURING_WHITE_BALANCE     ,
    pattern TAG_CAPTURING_SOURCE            ,
    pattern TAG_CAPTURING_SHUTTER_SPEED     ,
    pattern TAG_CAPTURING_SHARPNESS         ,
    pattern TAG_CAPTURING_SCENE_CAPTURE_TYPE,
    pattern TAG_CAPTURING_SATURATION        ,
    pattern TAG_CAPTURING_METERING_MODE     ,
    pattern TAG_CAPTURING_ISO_SPEED         ,
    pattern TAG_CAPTURING_GAIN_ADJUSTMENT   ,
    pattern TAG_CAPTURING_FOCAL_RATIO       ,
    pattern TAG_CAPTURING_FOCAL_LENGTH_35_MM,
    pattern TAG_CAPTURING_FOCAL_LENGTH      ,
    pattern TAG_CAPTURING_FLASH_MODE        ,
    pattern TAG_CAPTURING_FLASH_FIRED       ,
    pattern TAG_CAPTURING_EXPOSURE_PROGRAM  ,
    pattern TAG_CAPTURING_EXPOSURE_MODE     ,
    pattern TAG_CAPTURING_EXPOSURE_COMPENSATION,
    pattern TAG_CAPTURING_DIGITAL_ZOOM_RATIO,
    pattern TAG_CAPTURING_CONTRAST          ,
    pattern TAG_ACOUSTID_ID                 ,
    pattern TAG_ACOUSTID_FINGERPRINT        ,

    ) where

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

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


-- | MusicBrainz track TRM ID
pattern $bTAG_MUSICBRAINZ_TRMID :: Text
$mTAG_MUSICBRAINZ_TRMID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_TRMID = "musicbrainz-trmid" :: T.Text

-- | MusicBrainz track ID
pattern $bTAG_MUSICBRAINZ_TRACKID :: Text
$mTAG_MUSICBRAINZ_TRACKID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_TRACKID = "musicbrainz-trackid" :: T.Text

-- | MusicBrainz Release Track ID
-- 
-- /Since: 1.18/
pattern $bTAG_MUSICBRAINZ_RELEASETRACKID :: Text
$mTAG_MUSICBRAINZ_RELEASETRACKID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_RELEASETRACKID = "musicbrainz-releasetrackid" :: T.Text

-- | MusicBrainz Release Group ID
-- 
-- /Since: 1.18/
pattern $bTAG_MUSICBRAINZ_RELEASEGROUPID :: Text
$mTAG_MUSICBRAINZ_RELEASEGROUPID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_RELEASEGROUPID = "musicbrainz-releasegroupid" :: T.Text

-- | MusicBrainz artist ID
pattern $bTAG_MUSICBRAINZ_ARTISTID :: Text
$mTAG_MUSICBRAINZ_ARTISTID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_ARTISTID = "musicbrainz-artistid" :: T.Text

-- | MusicBrainz album ID
pattern $bTAG_MUSICBRAINZ_ALBUMID :: Text
$mTAG_MUSICBRAINZ_ALBUMID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_ALBUMID = "musicbrainz-albumid" :: T.Text

-- | MusicBrainz album artist ID
pattern $bTAG_MUSICBRAINZ_ALBUMARTISTID :: Text
$mTAG_MUSICBRAINZ_ALBUMARTISTID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICBRAINZ_ALBUMARTISTID = "musicbrainz-albumartistid" :: T.Text

-- | Musical key in which the sound starts. It is represented as a string
-- with a maximum length of three characters. The ground keys are
-- represented with \"A\",\"B\",\"C\",\"D\",\"E\", \"F\" and \"G\" and halfkeys
-- represented with \"b\" and \"#\". Minor is represented as \"m\" (e.g. \"Dbm\").
-- Off key is represented with an \"o\" only.
-- This notation might be extended in the future to support non-minor\/major
-- keys.
-- 
-- /Since: 1.2/
pattern $bTAG_MUSICAL_KEY :: Text
$mTAG_MUSICAL_KEY :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_MUSICAL_KEY = "musical-key" :: T.Text

-- | Media (image\/video) intended vertical pixel density in ppi. (double)
pattern $bTAG_IMAGE_VERTICAL_PPI :: Text
$mTAG_IMAGE_VERTICAL_PPI :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_IMAGE_VERTICAL_PPI = "image-vertical-ppi" :: T.Text

-- | Media (image\/video) intended horizontal pixel density in ppi. (double)
pattern $bTAG_IMAGE_HORIZONTAL_PPI :: Text
$mTAG_IMAGE_HORIZONTAL_PPI :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_IMAGE_HORIZONTAL_PPI = "image-horizontal-ppi" :: T.Text

-- | ID3V2 header size considered minimum input for some functions such as
-- 'GI.GstTag.Functions.tagListFromId3v2Tag' and 'GI.GstTag.Functions.tagGetId3v2TagSize' for example.
pattern $bTAG_ID3V2_HEADER_SIZE :: Int32
$mTAG_ID3V2_HEADER_SIZE :: forall {r}. Int32 -> (Void# -> r) -> (Void# -> r) -> r
TAG_ID3V2_HEADER_SIZE = 10 :: Int32

-- | Annodex CMML stream element tag
pattern $bTAG_CMML_STREAM :: Text
$mTAG_CMML_STREAM :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CMML_STREAM = "cmml-stream" :: T.Text

-- | Annodex CMML head element tag
pattern $bTAG_CMML_HEAD :: Text
$mTAG_CMML_HEAD :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CMML_HEAD = "cmml-head" :: T.Text

-- | Annodex CMML clip element tag
pattern $bTAG_CMML_CLIP :: Text
$mTAG_CMML_CLIP :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CMML_CLIP = "cmml-clip" :: T.Text

-- | Musicbrainz disc id details
pattern $bTAG_CDDA_MUSICBRAINZ_DISCID_FULL :: Text
$mTAG_CDDA_MUSICBRAINZ_DISCID_FULL :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CDDA_MUSICBRAINZ_DISCID_FULL = "musicbrainz-discid-full" :: T.Text

-- | Musicbrainz disc id (e.g. \'ahg7JUcfR3vCYBphSDIogOOWrr0-\')
pattern $bTAG_CDDA_MUSICBRAINZ_DISCID :: Text
$mTAG_CDDA_MUSICBRAINZ_DISCID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CDDA_MUSICBRAINZ_DISCID = "musicbrainz-discid" :: T.Text

-- | CDDB disc id including all details
pattern $bTAG_CDDA_CDDB_DISCID_FULL :: Text
$mTAG_CDDA_CDDB_DISCID_FULL :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CDDA_CDDB_DISCID_FULL = "discid-full" :: T.Text

-- | CDDB disc id in its short form (e.g. \'aa063d0f\')
pattern $bTAG_CDDA_CDDB_DISCID :: Text
$mTAG_CDDA_CDDB_DISCID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CDDA_CDDB_DISCID = "discid" :: T.Text

-- | White balance mode used when capturing an image. (string)
-- 
-- The allowed values are:
--   \"auto\"
--   \"manual\"
--   \"daylight\"
--   \"cloudy\"
--   \"tungsten\"
--   \"fluorescent\"
--   \"fluorescent h\" (newer daylight-calibrated fluorescents)
--   \"flash\"
pattern $bTAG_CAPTURING_WHITE_BALANCE :: Text
$mTAG_CAPTURING_WHITE_BALANCE :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_WHITE_BALANCE = "capturing-white-balance" :: T.Text

-- | Indicates the source of capture. The device\/medium used to do the
-- capture. (string)
-- 
-- Allowed values are:
--   \"dsc\" (= digital still camera)
--   \"transparent-scanner\"
--   \"reflex-scanner\"
--   \"other\"
pattern $bTAG_CAPTURING_SOURCE :: Text
$mTAG_CAPTURING_SOURCE :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_SOURCE = "capturing-source" :: T.Text

-- | Shutter speed used when capturing an image, in seconds. (fraction)
pattern $bTAG_CAPTURING_SHUTTER_SPEED :: Text
$mTAG_CAPTURING_SHUTTER_SPEED :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_SHUTTER_SPEED = "capturing-shutter-speed" :: T.Text

-- | Direction of sharpness processing applied when capturing an image. (string)
-- 
-- The allowed values are:
--  \"normal\"
--  \"soft\"
--  \"hard\"
pattern $bTAG_CAPTURING_SHARPNESS :: Text
$mTAG_CAPTURING_SHARPNESS :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_SHARPNESS = "capturing-sharpness" :: T.Text

-- | Scene mode used when capturing an image. (string)
-- 
-- The allowed values are:
--   \"standard\"
--   \"landscape\"
--   \"portrait\"
--   \"night-scene\"
pattern $bTAG_CAPTURING_SCENE_CAPTURE_TYPE :: Text
$mTAG_CAPTURING_SCENE_CAPTURE_TYPE :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_SCENE_CAPTURE_TYPE = "capturing-scene-capture-type" :: T.Text

-- | Direction of saturation processing applied when capturing an image. (string)
-- 
-- The allowed values are:
--  \"normal\"
--  \"low-saturation\"
--  \"high-saturation\"
pattern $bTAG_CAPTURING_SATURATION :: Text
$mTAG_CAPTURING_SATURATION :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_SATURATION = "capturing-saturation" :: T.Text

-- | Defines the way a camera determines the exposure. (string)
-- 
-- The allowed values are:
--   \"unknown\"
--   \"average\"
--   \"center-weighted-average\"
--   \"spot\"
--   \"multi-spot\"
--   \"pattern\"
--   \"partial\"
--   \"other\"
pattern $bTAG_CAPTURING_METERING_MODE :: Text
$mTAG_CAPTURING_METERING_MODE :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_METERING_MODE = "capturing-metering-mode" :: T.Text

-- | ISO speed used when capturing an image. (integer)
pattern $bTAG_CAPTURING_ISO_SPEED :: Text
$mTAG_CAPTURING_ISO_SPEED :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_ISO_SPEED = "capturing-iso-speed" :: T.Text

-- | Gain adjustment applied to an image. (string)
-- 
-- The allowed values are:
--   \"none\"
--   \"low-gain-up\"
--   \"high-gain-up\"
--   \"low-gain-down\"
--   \"high-gain-down\"
pattern $bTAG_CAPTURING_GAIN_ADJUSTMENT :: Text
$mTAG_CAPTURING_GAIN_ADJUSTMENT :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_GAIN_ADJUSTMENT = "capturing-gain-adjustment" :: T.Text

-- | Focal ratio (f-number) used when capturing an image. (double)
-- 
-- The value stored is the denominator of the focal ratio (f-number).
-- For example, if this tag value is 2, the focal ratio is f\/2.
pattern $bTAG_CAPTURING_FOCAL_RATIO :: Text
$mTAG_CAPTURING_FOCAL_RATIO :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_FOCAL_RATIO = "capturing-focal-ratio" :: T.Text

-- | 35 mm equivalent focal length used when capturing an image, in mm. (double)
-- 
-- /Since: 1.10/
pattern $bTAG_CAPTURING_FOCAL_LENGTH_35_MM :: Text
$mTAG_CAPTURING_FOCAL_LENGTH_35_MM :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_FOCAL_LENGTH_35_MM = "capturing-focal-length-35mm" :: T.Text

-- | Focal length used when capturing an image, in mm. (double)
pattern $bTAG_CAPTURING_FOCAL_LENGTH :: Text
$mTAG_CAPTURING_FOCAL_LENGTH :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_FOCAL_LENGTH = "capturing-focal-length" :: T.Text

-- | The flash mode selected during the capture of an image. (string)
-- 
-- The allowed values are:
--  \"auto\"
--  \"always\"
--  \"never\"
pattern $bTAG_CAPTURING_FLASH_MODE :: Text
$mTAG_CAPTURING_FLASH_MODE :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_FLASH_MODE = "capturing-flash-mode" :: T.Text

-- | If flash was fired during the capture of an image. (boolean)
-- 
-- Note that if this tag isn\'t present, it should not be assumed that
-- the flash did not fire. It should be treated as unknown.
pattern $bTAG_CAPTURING_FLASH_FIRED :: Text
$mTAG_CAPTURING_FLASH_FIRED :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_FLASH_FIRED = "capturing-flash-fired" :: T.Text

-- | Type of exposure control used when capturing an image. (string)
-- 
-- The allowed values are:
--   \"undefined\"
--   \"manual\"
--   \"normal\" - automatically controlled
--   \"aperture-priority\" - user selects aperture value
--   \"shutter-priority\" - user selects shutter speed
--   \"creative\" - biased towards depth of field
--   \"action\" - biased towards fast shutter speed
--   \"portrait\" - closeup, leaving background out of focus
--   \"landscape\" - landscape photos, background in focus
pattern $bTAG_CAPTURING_EXPOSURE_PROGRAM :: Text
$mTAG_CAPTURING_EXPOSURE_PROGRAM :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_EXPOSURE_PROGRAM = "capturing-exposure-program" :: T.Text

-- | Exposure mode used when capturing an image. (string)
-- 
-- The allowed values are:
--   \"auto-exposure\"
--   \"manual-exposure\"
--   \"auto-bracket\"
pattern $bTAG_CAPTURING_EXPOSURE_MODE :: Text
$mTAG_CAPTURING_EXPOSURE_MODE :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_EXPOSURE_MODE = "capturing-exposure-mode" :: T.Text

-- | Exposure compensation using when capturing an image in EV. (double)
pattern $bTAG_CAPTURING_EXPOSURE_COMPENSATION :: Text
$mTAG_CAPTURING_EXPOSURE_COMPENSATION :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_EXPOSURE_COMPENSATION = "capturing-exposure-compensation" :: T.Text

-- | Digital zoom ratio used when capturing an image. (double)
pattern $bTAG_CAPTURING_DIGITAL_ZOOM_RATIO :: Text
$mTAG_CAPTURING_DIGITAL_ZOOM_RATIO :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_DIGITAL_ZOOM_RATIO = "capturing-digital-zoom-ratio" :: T.Text

-- | Direction of contrast processing applied when capturing an image. (string)
-- 
-- The allowed values are:
--  \"normal\"
--  \"soft\"
--  \"hard\"
pattern $bTAG_CAPTURING_CONTRAST :: Text
$mTAG_CAPTURING_CONTRAST :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_CAPTURING_CONTRAST = "capturing-contrast" :: T.Text

-- | AcoustID Identifier
-- 
-- /Since: 1.18/
pattern $bTAG_ACOUSTID_ID :: Text
$mTAG_ACOUSTID_ID :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_ACOUSTID_ID = "acoustid-id" :: T.Text

-- | AcoustID Fingerprint (Chromaprint)
-- 
-- /Since: 1.18/
pattern $bTAG_ACOUSTID_FINGERPRINT :: Text
$mTAG_ACOUSTID_FINGERPRINT :: forall {r}. Text -> (Void# -> r) -> (Void# -> r) -> r
TAG_ACOUSTID_FINGERPRINT = "chromaprint-fingerprint" :: T.Text