isobmff-builder-0.9.0.0: A (bytestring-) builder for the ISO-14496-12 base media file format

Safe HaskellNone
LanguageHaskell2010

Data.ByteString.IsoBaseFileFormat.Boxes.TrackHeader

Contents

Description

Track header box

Synopsis

tkhd Box

trackHeader :: (ValidBox brand (TrackHeader version), version ~ GetVersion brand) => TrackHeader version -> Box brand (TrackHeader version) Source #

Create a TrackHeader box.

data TrackHeader version where Source #

Track meta data, indexed by a version.

Constructors

TrackHeader :: (Versioned TrackHeaderTimesV0 TrackHeaderTimesV1 version :+ (Constant (I32Arr "reserved" 2) '[0, 0] :+ (Template (I16 "layer") 0 :+ (Template (I16 "alternate_group") 0 :+ (Template (I16 "volume") 256 :+ (Constant (I16 "reserved") 0 :+ (Template (I32Arr "matrix" 9) '[65536, 0, 0, 0, 65536, 0, 0, 0, 1073741824] :+ (I32 "width" :+ I32 "height")))))))) -> TrackHeader version 

Instances

IsBoxContent (TrackHeader version) Source # 
KnownNat version => IsBoxType * (TrackHeader version) Source # 

Associated Types

type BoxContent (TrackHeader version) (t :: TrackHeader version) :: * Source #

Methods

toBoxType :: proxy t -> BoxContent (TrackHeader version) t -> BoxType Source #

type BoxContent * (TrackHeader version) Source # 
type BoxContent * (TrackHeader version) = FullBox Nat version (TrackHeader version)

type TrackHeaderTimesV0 = TrackHeaderTimes (Scalar Word32) Source #

Time and timing information about a track (32bit version).

type TrackHeaderTimesV1 = TrackHeaderTimes (Scalar Word64) Source #

Time and timing information about a track (64bit version).

type TrackHeaderTimes uint = uint "creation_time" :+ (uint "modification_time" :+ (U32 "track_ID" :+ (Constant (U32 "reserved") 0 :+ uint "duration"))) Source #

Time and timing information about a track.