| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
Data.ByteString.IsoBaseFileFormat.Boxes.Handler
Description
A Handler box describes how a track is presentation and by which sensory
 process it is perceived, e.g. audio, video, text, see HandlerType
Synopsis
- data Handler (t :: HandlerType)
 - handler :: KnownSymbol (HandlerTypeCode t) => Handler t -> Box (FullBox (Handler t) 0)
 - audioTrackHandler :: Handler AudioTrack
 - namedAudioTrackHandler :: Text -> Handler AudioTrack
 - videoTrackHandler :: Handler VideoTrack
 - namedVideoTrackHandler :: Text -> Handler VideoTrack
 - hintTrackHandler :: Handler HintTrack
 - namedHintTrackHandler :: Text -> Handler HintTrack
 - timedMetadataTrackHandler :: Handler TimedMetaDataTrack
 - namedTimedMetadataTrackHandler :: Text -> Handler TimedMetaDataTrack
 - auxilliaryVideoTrackHandler :: Handler AuxilliaryVideoTrack
 - namedAuxilliaryVideoTrackHandler :: Text -> Handler AuxilliaryVideoTrack
 - data HandlerType
 - type family GetHandlerType t :: HandlerType
 - type family HandlerTypeCode (handlertype :: HandlerType) :: Symbol where ...
 
Documentation
data Handler (t :: HandlerType) Source #
Handler box fields. A handler box may also contain a null terminated
 description text in UTF-8. The Text parameter is a human readable name of
 the track type for debugging.
Instances
| Default (Handler t) Source # | |
| KnownSymbol (HandlerTypeCode t) => IsBoxContent (Handler t) Source # | |
| KnownSymbol (HandlerTypeCode t) => IsBox (Handler t) Source # | |
| type BoxContent (Handler t) Source # | |
| type BoxTypeSymbol (Handler t :: Type) Source # | |
handler :: KnownSymbol (HandlerTypeCode t) => Handler t -> Box (FullBox (Handler t) 0) Source #
Create a Handler box.
audioTrackHandler :: Handler AudioTrack Source #
Create Handler fields for AudioTracks with "Audio Track" as name.
namedAudioTrackHandler :: Text -> Handler AudioTrack Source #
Create Handler fields for AudioTracks, with the given name.
videoTrackHandler :: Handler VideoTrack Source #
Create Handler fields for VideoTracks with "Video Track" as name.
namedVideoTrackHandler :: Text -> Handler VideoTrack Source #
Create Handler fields for VideoTracks, with the given name.
timedMetadataTrackHandler :: Handler TimedMetaDataTrack Source #
Create Handler fields for TimedMetadataTracks with "TimedMetadata
 Track" as name.
namedTimedMetadataTrackHandler :: Text -> Handler TimedMetaDataTrack Source #
Create Handler fields for TimedMetadataTracks, with the given name.
auxilliaryVideoTrackHandler :: Handler AuxilliaryVideoTrack Source #
Create Handler fields for AuxilliaryVideoTracks with
 "AuxilliaryVideoTrack Track" as name.
namedAuxilliaryVideoTrackHandler :: Text -> Handler AuxilliaryVideoTrack Source #
Create Handler fields for AuxilliaryVideoTracks, with the given name.
data HandlerType Source #
A Handler can be exactly one of these.
type family GetHandlerType t :: HandlerType Source #
Return HandlerType for BoxLayout checking.
Instances
| type GetHandlerType (VideoSampleEntry c) Source # | |
| type GetHandlerType (MetaDataCoding c) Source # | |
| type GetHandlerType (HintSampleEntry protocol) Source # | |
| type GetHandlerType (AudioSampleEntry b) Source # | |
type family HandlerTypeCode (handlertype :: HandlerType) :: Symbol where ... Source #
Equations
| HandlerTypeCode VideoTrack = "vide" | |
| HandlerTypeCode AudioTrack = "soun" | |
| HandlerTypeCode HintTrack = "hint" | |
| HandlerTypeCode TimedMetaDataTrack = "meta" | |
| HandlerTypeCode AuxilliaryVideoTrack = "auxv" |