isobmff-0.14.0.0: A parser and generator for the ISO-14496-12/14 base media file format

Safe HaskellNone
LanguageHaskell2010

Data.ByteString.Mp4.Boxes.AudioSpecificConfig

Contents

Description

mp4a Audio sample entry according to ISO 14496-14

Synopsis

Decoder Configuration for ISO 14496-3 (Audio)

type AudioConfigAacLc freq channels = AudioConfigAacMinimal AacLc DefaultGASpecificConfig freq channels Source #

A audio config using AudioConfigAacMinimal for AAC-LC.

type AudioConfigHeAac freq channels = AudioConfigSbrExplicitHierachical AacLc DefaultGASpecificConfig freq channels freq Source #

A audio config using AudioConfigSbrExplicitHierachical for HE-AAC (v1) in dual rate mode.

type AudioConfigCommon aoId samplingFrequencyIndex channels rest = ((AudioObjectTypeRec aoId :+: BitRecordOfEnum samplingFrequencyIndex) :+: BitRecordOfEnum channels) :+: rest Source #

Common header for audio specific config

Audio Object Type

data AudioObjectTypeId Source #

Constructors

AacMain

ISO 14496-4 subpart 4

AacLc

ISO 14496-4 subpart 4

AacSsr

ISO 14496-4 subpart 4

AacLtp

ISO 14496-4 subpart 4

Sbr

ISO 14496-4 subpart 4

AacScalable

ISO 14496-4 subpart 4

TwinVq

ISO 14496-4 subpart 4

Celp

ISO 14496-4 subpart 3

Hvxc

ISO 14496-4 subpart 2

AoReserved1 
AoReserved2 
Ttsi

ISO 14496-4 subpart 6

MainSunthetic

ISO 14496-4 subpart 5

WavetableSynthesis

ISO 14496-4 subpart 5

GeneralMidi

ISO 14496-4 subpart 5

AlgorithmicSynthesisAndAudioFx

ISO 14496-4 subpart 5

ErAacLc

ISO 14496-4 subpart 4

AoReserved3 
ErAacLtp

ISO 14496-4 subpart 4

ErAacScalable

ISO 14496-4 subpart 4

ErTwinVq

ISO 14496-4 subpart 4

ErBsac

ISO 14496-4 subpart 4

ErAacLd

ISO 14496-4 subpart 4

ErCelp

ISO 14496-4 subpart 3

ErHvxc

ISO 14496-4 subpart 2

ErHiln

ISO 14496-4 subpart 7

ErParametric

ISO 14496-4 subpart 2 or 7

Ssc

ISO 14496-4 subpart 8

AoReserved4 
AoReserved5 
AoCustom 
AoLayer1

ISO 14496-4 subpart 9

AoLayer2

ISO 14496-4 subpart 9

AoLayer3

ISO 14496-4 subpart 9

AoDst

ISO 14496-4 subpart 10

AotInvalid 
Instances
type FromEnum AudioObjectTypeId AacMain Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AacLc Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AacSsr Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AacLtp Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId Sbr Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AacScalable Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId TwinVq Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId Celp Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId Hvxc Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoReserved1 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoReserved2 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId Ttsi Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId MainSunthetic Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId WavetableSynthesis Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId GeneralMidi Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AlgorithmicSynthesisAndAudioFx Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErAacLc Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoReserved3 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErAacLtp Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErAacScalable Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErTwinVq Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErBsac Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErAacLd Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErCelp Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErHvxc Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErHiln Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId ErParametric Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId Ssc Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoReserved4 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoReserved5 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoCustom Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoLayer1 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoLayer2 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoLayer3 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AoDst Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum AudioObjectTypeId AotInvalid Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type family AudioObjectTypeField1 (n :: Nat) :: Extends (BitRecordField (MkFieldBits :: BitField (B 5) Nat 5)) where ... Source #

Equations

AudioObjectTypeField1 n = If (n <=? 30) (Field 5 := n) (Field 5 := 31) 

type family AudioObjectTypeField2 (n :: Nat) :: BitRecord where ... Source #

Equations

AudioObjectTypeField2 n = If (n <=? 30) EmptyBitRecord (BitRecordMember (Field 6 := (n - 31))) 

Sampling Frequency

data SamplingFreqTable Source #

Instances
type FromEnum SamplingFreqTable SF96000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF88200 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF64000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF48000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF44100 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF32000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF24000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF22050 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF16000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF12000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF11025 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF8000 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SF7350 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SFReserved1 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SFReserved2 Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type FromEnum SamplingFreqTable SFCustom Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

Channel Config (Mono, Stereo, 7-1 Surround, ...)

data ChannelConfigTable Source #

More Specific audio decoder config

data AudioSubConfig :: Type Source #

Instances
type From (GASpecificConfig fl cd ext :: AudioSubConfig -> Type) Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type From (GASpecificConfig fl cd ext :: AudioSubConfig -> Type) = (TypeError (Text "AudioSubConfig is abstract!") :: AudioSubConfig)

data GASpecificConfig (frameLenFlag :: Extends (FieldValue "frameLenFlag" Bool)) (coreCoderDelay :: Maybe (Extends (FieldValue "coreCoderDelay" Nat))) (extension :: Extends GASExtension) :: Extends AudioSubConfig Source #

Instances
type From (GASpecificConfig fl cd ext :: AudioSubConfig -> Type) Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

type From (GASpecificConfig fl cd ext :: AudioSubConfig -> Type) = (TypeError (Text "AudioSubConfig is abstract!") :: AudioSubConfig)
type BitRecordOfAudioSubConfig (GASpecificConfig fl cd ext) Source # 
Instance details

Defined in Data.ByteString.Mp4.Boxes.AudioSpecificConfig

data GASExtension Source #

TODO implment that GAS extensions