{-# LINE 1 "src/Codec/FFmpeg/Enums.hsc" #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LINE 2 "src/Codec/FFmpeg/Enums.hsc" #-}
module Codec.FFmpeg.Enums where
import Data.Bits (Bits)
import Foreign.C.Types
import Foreign.Storable (Storable)


{-# LINE 8 "src/Codec/FFmpeg/Enums.hsc" #-}

{-# LINE 9 "src/Codec/FFmpeg/Enums.hsc" #-}

{-# LINE 10 "src/Codec/FFmpeg/Enums.hsc" #-}

{-# LINE 11 "src/Codec/FFmpeg/Enums.hsc" #-}

{-# LINE 12 "src/Codec/FFmpeg/Enums.hsc" #-}

{-# LINE 13 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype AVMediaType = AVMediaType CInt deriving (Eq, Storable)
avmediaTypeVideo  :: AVMediaType
avmediaTypeVideo  = AVMediaType 0
avmediaTypeAudio  :: AVMediaType
avmediaTypeAudio  = AVMediaType 1
avmediaTypeData  :: AVMediaType
avmediaTypeData  = AVMediaType 2
avmediaTypeSubtitle  :: AVMediaType
avmediaTypeSubtitle  = AVMediaType 3
avmediaTypeAttachment  :: AVMediaType
avmediaTypeAttachment  = AVMediaType 4
avmediaTypeNb :: AVMediaType
avmediaTypeNb = AVMediaType 5

{-# LINE 22 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype AVPixelFormat = AVPixelFormat CInt deriving (Eq, Storable)
avPixFmtNone  :: AVPixelFormat
avPixFmtNone  = AVPixelFormat (-1)
avPixFmtRgb24  :: AVPixelFormat
avPixFmtRgb24  = AVPixelFormat 2
avPixFmtRgba  :: AVPixelFormat
avPixFmtRgba  = AVPixelFormat 28
avPixFmtBgra  :: AVPixelFormat
avPixFmtBgra  = AVPixelFormat 30
avPixFmtY400a  :: AVPixelFormat
avPixFmtY400a  = AVPixelFormat 66
avPixFmtRgb32  :: AVPixelFormat
avPixFmtRgb32  = AVPixelFormat 30
avPixFmtRgb321  :: AVPixelFormat
avPixFmtRgb321  = AVPixelFormat 29
avPixFmtBgr32  :: AVPixelFormat
avPixFmtBgr32  = AVPixelFormat 28
avPixFmtBgr321  :: AVPixelFormat
avPixFmtBgr321  = AVPixelFormat 27
avPixFmtRgb8  :: AVPixelFormat
avPixFmtRgb8  = AVPixelFormat 22
avPixFmtBgr8  :: AVPixelFormat
avPixFmtBgr8  = AVPixelFormat 19
avPixFmtRgb4Byte  :: AVPixelFormat
avPixFmtRgb4Byte  = AVPixelFormat 24
avPixFmtBgr4Byte  :: AVPixelFormat
avPixFmtBgr4Byte  = AVPixelFormat 21
avPixFmtGray8  :: AVPixelFormat
avPixFmtGray8  = AVPixelFormat 8
avPixFmtGray16  :: AVPixelFormat
avPixFmtGray16  = AVPixelFormat 32
avPixFmtGray8a  :: AVPixelFormat
avPixFmtGray8a  = AVPixelFormat 66
avPixFmtPal8  :: AVPixelFormat
avPixFmtPal8  = AVPixelFormat 11
avPixFmtRgb565  :: AVPixelFormat
avPixFmtRgb565  = AVPixelFormat 44
avPixFmtRgb555  :: AVPixelFormat
avPixFmtRgb555  = AVPixelFormat 46
avPixFmtYuv420p  :: AVPixelFormat
avPixFmtYuv420p  = AVPixelFormat 0
avPixFmtYuv420p9  :: AVPixelFormat
avPixFmtYuv420p9  = AVPixelFormat 70
avPixFmtYuv420p10  :: AVPixelFormat
avPixFmtYuv420p10  = AVPixelFormat 72
avPixFmtYuv420p12  :: AVPixelFormat
avPixFmtYuv420p12  = AVPixelFormat 300
avPixFmtYuv422p12  :: AVPixelFormat
avPixFmtYuv422p12  = AVPixelFormat 304
avPixFmtYuv444p12  :: AVPixelFormat
avPixFmtYuv444p12  = AVPixelFormat 308
avPixFmtYuv420p14  :: AVPixelFormat
avPixFmtYuv420p14  = AVPixelFormat 302
avPixFmtYuv422p14  :: AVPixelFormat
avPixFmtYuv422p14  = AVPixelFormat 306
avPixFmtYuv444p14  :: AVPixelFormat
avPixFmtYuv444p14  = AVPixelFormat 310
avPixFmtYuv420p16  :: AVPixelFormat
avPixFmtYuv420p16  = AVPixelFormat 54
avPixFmtYuv422p16  :: AVPixelFormat
avPixFmtYuv422p16  = AVPixelFormat 56
avPixFmtYuv444p16  :: AVPixelFormat
avPixFmtYuv444p16  = AVPixelFormat 58
avPixFmtRgba64  :: AVPixelFormat
avPixFmtRgba64  = AVPixelFormat 116
avPixFmtBgra64 :: AVPixelFormat
avPixFmtBgra64 = AVPixelFormat 118

{-# LINE 58 "src/Codec/FFmpeg/Enums.hsc" #-}

instance Show AVPixelFormat where
  show x
    | x == avPixFmtRgb24 = "AV_PIX_FMT_RGB24"
    | x == avPixFmtYuv420p = "AV_PIX_FMT_Y420P"
    | x == avPixFmtYuv422p12 = "AV_PIX_FMTYUV422P12"
    | x == avPixFmtYuv420p14 = "AV_PIX_FMTYUV422P12"
    | otherwise = let AVPixelFormat y = x
                  in "Other pixel format: "++show y

newtype AVCodecID = AVCodecID CInt deriving (Eq, Show, Storable)
avCodecIdH264  :: AVCodecID
avCodecIdH264  = AVCodecID 28
avCodecIdHevc  :: AVCodecID
avCodecIdHevc  = AVCodecID 174
avCodecIdTheora  :: AVCodecID
avCodecIdTheora  = AVCodecID 31
avCodecIdVc1  :: AVCodecID
avCodecIdVc1  = AVCodecID 71
avCodecIdMpeg4  :: AVCodecID
avCodecIdMpeg4  = AVCodecID 13
avCodecIdMpeg2video  :: AVCodecID
avCodecIdMpeg2video  = AVCodecID 2
avCodecIdRawvideo  :: AVCodecID
avCodecIdRawvideo  = AVCodecID 14
avCodecIdGif  :: AVCodecID
avCodecIdGif  = AVCodecID 98
avCodecIdAac  :: AVCodecID
avCodecIdAac  = AVCodecID 86018
avCodecIdMp3  :: AVCodecID
avCodecIdMp3  = AVCodecID 86017
avCodecIdDts :: AVCodecID
avCodecIdDts = AVCodecID 86020

{-# LINE 81 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype SwsAlgorithm = SwsAlgorithm CUInt deriving (Eq, Show, Storable)
swsFastBilinear  :: SwsAlgorithm
swsFastBilinear  = SwsAlgorithm 1
swsBilinear  :: SwsAlgorithm
swsBilinear  = SwsAlgorithm 2
swsBicubic  :: SwsAlgorithm
swsBicubic  = SwsAlgorithm 4
swsX  :: SwsAlgorithm
swsX  = SwsAlgorithm 8
swsPoint  :: SwsAlgorithm
swsPoint  = SwsAlgorithm 16
swsArea  :: SwsAlgorithm
swsArea  = SwsAlgorithm 32
swsBicublin  :: SwsAlgorithm
swsBicublin  = SwsAlgorithm 64
swsGauss  :: SwsAlgorithm
swsGauss  = SwsAlgorithm 128
swsSinc  :: SwsAlgorithm
swsSinc  = SwsAlgorithm 256
swsLanczos  :: SwsAlgorithm
swsLanczos  = SwsAlgorithm 512
swsSpline :: SwsAlgorithm
swsSpline = SwsAlgorithm 1024

{-# LINE 95 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype FFProfile = FFProfile CInt deriving (Eq, Storable)
ffProfileAacMain  :: FFProfile
ffProfileAacMain  = FFProfile 0
ffProfileAacLow  :: FFProfile
ffProfileAacLow  = FFProfile 1
ffProfileAacSsr  :: FFProfile
ffProfileAacSsr  = FFProfile 2
ffProfileAacLtp  :: FFProfile
ffProfileAacLtp  = FFProfile 3
ffProfileAacHe  :: FFProfile
ffProfileAacHe  = FFProfile 4
ffProfileAacHeV2  :: FFProfile
ffProfileAacHeV2  = FFProfile 28
ffProfileAacLd  :: FFProfile
ffProfileAacLd  = FFProfile 22
ffProfileAacEld  :: FFProfile
ffProfileAacEld  = FFProfile 38
ffProfileMpeg2AacLow  :: FFProfile
ffProfileMpeg2AacLow  = FFProfile 128
ffProfileMpeg2AacHe  :: FFProfile
ffProfileMpeg2AacHe  = FFProfile 131
ffProfileDts  :: FFProfile
ffProfileDts  = FFProfile 20
ffProfileDtsEs  :: FFProfile
ffProfileDtsEs  = FFProfile 30
ffProfileDts9624  :: FFProfile
ffProfileDts9624  = FFProfile 40
ffProfileDtsHdHra  :: FFProfile
ffProfileDtsHdHra  = FFProfile 50
ffProfileDtsHdMa  :: FFProfile
ffProfileDtsHdMa  = FFProfile 60
ffProfileMpeg2422  :: FFProfile
ffProfileMpeg2422  = FFProfile 0
ffProfileMpeg2High  :: FFProfile
ffProfileMpeg2High  = FFProfile 1
ffProfileMpeg2Ss  :: FFProfile
ffProfileMpeg2Ss  = FFProfile 2
ffProfileMpeg2SnrScalable  :: FFProfile
ffProfileMpeg2SnrScalable  = FFProfile 3
ffProfileMpeg2Main  :: FFProfile
ffProfileMpeg2Main  = FFProfile 4
ffProfileMpeg2Simple  :: FFProfile
ffProfileMpeg2Simple  = FFProfile 5
ffProfileH264Constrained  :: FFProfile
ffProfileH264Constrained  = FFProfile 512
ffProfileH264Intra  :: FFProfile
ffProfileH264Intra  = FFProfile 2048
ffProfileH264Baseline  :: FFProfile
ffProfileH264Baseline  = FFProfile 66
ffProfileH264ConstrainedBaseline  :: FFProfile
ffProfileH264ConstrainedBaseline  = FFProfile 578
ffProfileH264Main  :: FFProfile
ffProfileH264Main  = FFProfile 77
ffProfileH264Extended  :: FFProfile
ffProfileH264Extended  = FFProfile 88
ffProfileH264High  :: FFProfile
ffProfileH264High  = FFProfile 100
ffProfileH264High10  :: FFProfile
ffProfileH264High10  = FFProfile 110
ffProfileH264High10Intra  :: FFProfile
ffProfileH264High10Intra  = FFProfile 2158
ffProfileH264High422  :: FFProfile
ffProfileH264High422  = FFProfile 122
ffProfileH264High422Intra  :: FFProfile
ffProfileH264High422Intra  = FFProfile 2170
ffProfileH264High444  :: FFProfile
ffProfileH264High444  = FFProfile 144
ffProfileH264High444Predictive  :: FFProfile
ffProfileH264High444Predictive  = FFProfile 244
ffProfileH264High444Intra  :: FFProfile
ffProfileH264High444Intra  = FFProfile 2292
ffProfileH264Cavlc444  :: FFProfile
ffProfileH264Cavlc444  = FFProfile 44
ffProfileVc1Simple  :: FFProfile
ffProfileVc1Simple  = FFProfile 0
ffProfileVc1Main  :: FFProfile
ffProfileVc1Main  = FFProfile 1
ffProfileVc1Complex  :: FFProfile
ffProfileVc1Complex  = FFProfile 2
ffProfileVc1Advanced  :: FFProfile
ffProfileVc1Advanced  = FFProfile 3
ffProfileMpeg4Simple  :: FFProfile
ffProfileMpeg4Simple  = FFProfile 0
ffProfileMpeg4SimpleScalable  :: FFProfile
ffProfileMpeg4SimpleScalable  = FFProfile 1
ffProfileMpeg4Core  :: FFProfile
ffProfileMpeg4Core  = FFProfile 2
ffProfileMpeg4Main  :: FFProfile
ffProfileMpeg4Main  = FFProfile 3
ffProfileMpeg4NBit  :: FFProfile
ffProfileMpeg4NBit  = FFProfile 4
ffProfileMpeg4ScalableTexture  :: FFProfile
ffProfileMpeg4ScalableTexture  = FFProfile 5
ffProfileMpeg4SimpleFaceAnimation  :: FFProfile
ffProfileMpeg4SimpleFaceAnimation  = FFProfile 6
ffProfileMpeg4BasicAnimatedTexture  :: FFProfile
ffProfileMpeg4BasicAnimatedTexture  = FFProfile 7
ffProfileMpeg4Hybrid  :: FFProfile
ffProfileMpeg4Hybrid  = FFProfile 8
ffProfileMpeg4AdvancedRealTime  :: FFProfile
ffProfileMpeg4AdvancedRealTime  = FFProfile 9
ffProfileMpeg4CoreScalable  :: FFProfile
ffProfileMpeg4CoreScalable  = FFProfile 10
ffProfileMpeg4AdvancedCoding  :: FFProfile
ffProfileMpeg4AdvancedCoding  = FFProfile 11
ffProfileMpeg4AdvancedCore  :: FFProfile
ffProfileMpeg4AdvancedCore  = FFProfile 12
ffProfileMpeg4AdvancedScalableTexture  :: FFProfile
ffProfileMpeg4AdvancedScalableTexture  = FFProfile 13
ffProfileMpeg4SimpleStudio  :: FFProfile
ffProfileMpeg4SimpleStudio  = FFProfile 14
ffProfileMpeg4AdvancedSimple :: FFProfile
ffProfileMpeg4AdvancedSimple = FFProfile 15

{-# LINE 154 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype AVIOFlag = AVIOFlag CInt deriving (Eq, Storable)
avioFlagRead  :: AVIOFlag
avioFlagRead  = AVIOFlag 1
avioFlagWrite  :: AVIOFlag
avioFlagWrite  = AVIOFlag 2
avioFlagReadWrite  :: AVIOFlag
avioFlagReadWrite  = AVIOFlag 3
avioFlagNonblock  :: AVIOFlag
avioFlagNonblock  = AVIOFlag 8
avioFlagDirect :: AVIOFlag
avioFlagDirect = AVIOFlag 32768

{-# LINE 162 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype AVRoundMode = AVRoundMode CInt deriving (Eq, Storable)
avRoundZero  :: AVRoundMode
avRoundZero  = AVRoundMode 0
avRoundInf  :: AVRoundMode
avRoundInf  = AVRoundMode 1
avRoundDown  :: AVRoundMode
avRoundDown  = AVRoundMode 2
avRoundUp  :: AVRoundMode
avRoundUp  = AVRoundMode 3
avRoundNearInf  :: AVRoundMode
avRoundNearInf  = AVRoundMode 5
avRoundPassMinmax :: AVRoundMode
avRoundPassMinmax = AVRoundMode 8192

{-# LINE 171 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype CodecFlag = CodecFlag CInt deriving (Eq, Bits, Storable)
codecFlagUnaligned  :: CodecFlag
codecFlagUnaligned  = CodecFlag 1
codecFlagQscale  :: CodecFlag
codecFlagQscale  = CodecFlag 2
codecFlag4mv  :: CodecFlag
codecFlag4mv  = CodecFlag 4
codecFlagOutputCorrupt  :: CodecFlag
codecFlagOutputCorrupt  = CodecFlag 8
codecFlagQpel  :: CodecFlag
codecFlagQpel  = CodecFlag 16
codecFlagGmc  :: CodecFlag
codecFlagGmc  = CodecFlag 32
codecFlagMv0  :: CodecFlag
codecFlagMv0  = CodecFlag 64
codecFlagInputPreserved  :: CodecFlag
codecFlagInputPreserved  = CodecFlag 256
codecFlagPass1  :: CodecFlag
codecFlagPass1  = CodecFlag 512
codecFlagPass2  :: CodecFlag
codecFlagPass2  = CodecFlag 1024
codecFlagGray  :: CodecFlag
codecFlagGray  = CodecFlag 8192
codecFlagEmuEdge  :: CodecFlag
codecFlagEmuEdge  = CodecFlag 16384
codecFlagPsnr  :: CodecFlag
codecFlagPsnr  = CodecFlag 32768
codecFlagTruncated  :: CodecFlag
codecFlagTruncated  = CodecFlag 65536
codecFlagNormalizeAqp  :: CodecFlag
codecFlagNormalizeAqp  = CodecFlag 131072
codecFlagInterlacedDct  :: CodecFlag
codecFlagInterlacedDct  = CodecFlag 262144
codecFlagLowDelay  :: CodecFlag
codecFlagLowDelay  = CodecFlag 524288
codecFlagGlobalHeader  :: CodecFlag
codecFlagGlobalHeader  = CodecFlag 4194304
codecFlagBitexact  :: CodecFlag
codecFlagBitexact  = CodecFlag 8388608
codecFlagAcPred  :: CodecFlag
codecFlagAcPred  = CodecFlag 16777216
codecFlagLoopFilter  :: CodecFlag
codecFlagLoopFilter  = CodecFlag 2048
codecFlagInterlacedMe  :: CodecFlag
codecFlagInterlacedMe  = CodecFlag 536870912
codecFlagClosedGop :: CodecFlag
codecFlagClosedGop = CodecFlag 2147483648

{-# LINE 197 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype FormatFlag = FormatFlag CInt deriving (Eq, Bits, Storable)
avfmtNofile  :: FormatFlag
avfmtNofile  = FormatFlag 1
avfmtNeednumber  :: FormatFlag
avfmtNeednumber  = FormatFlag 2
avfmtRawpicture  :: FormatFlag
avfmtRawpicture  = FormatFlag 32
avfmtGlobalheader  :: FormatFlag
avfmtGlobalheader  = FormatFlag 64
avfmtNotimestamps  :: FormatFlag
avfmtNotimestamps  = FormatFlag 128
avfmtVariableFps  :: FormatFlag
avfmtVariableFps  = FormatFlag 1024
avfmtNodimensions  :: FormatFlag
avfmtNodimensions  = FormatFlag 2048
avfmtNostreams  :: FormatFlag
avfmtNostreams  = FormatFlag 4096
avfmtAllowFlush  :: FormatFlag
avfmtAllowFlush  = FormatFlag 65536
avfmtTsNonstrict :: FormatFlag
avfmtTsNonstrict = FormatFlag 131072

{-# LINE 210 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype PacketFlag = PacketFlag CInt deriving (Eq, Bits, Storable)
avPktFlagKey  :: PacketFlag
avPktFlagKey  = PacketFlag 1
avPktFlagCorrupt :: PacketFlag
avPktFlagCorrupt = PacketFlag 2

{-# LINE 215 "src/Codec/FFmpeg/Enums.hsc" #-}

newtype LogLevel = LogLevel CInt deriving (Eq, Bits, Storable)
avLogQuiet  :: LogLevel
avLogQuiet  = LogLevel (-8)
avLogPanic  :: LogLevel
avLogPanic  = LogLevel 0
avLogFatal  :: LogLevel
avLogFatal  = LogLevel 8
avLogError  :: LogLevel
avLogError  = LogLevel 16
avLogWarning  :: LogLevel
avLogWarning  = LogLevel 24
avLogInfo  :: LogLevel
avLogInfo  = LogLevel 32
avLogVerbose  :: LogLevel
avLogVerbose  = LogLevel 40
avLogDebug  :: LogLevel
avLogDebug  = LogLevel 48
avLogTrace  :: LogLevel
avLogTrace  = LogLevel 56
avLogMaxOffset :: LogLevel
avLogMaxOffset = LogLevel 64

{-# LINE 228 "src/Codec/FFmpeg/Enums.hsc" #-}