Safe Haskell | None |
---|---|
Language | Haskell2010 |
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 AudioTrack
s with "Audio Track"
as name
.
namedAudioTrackHandler :: Text -> Handler AudioTrack Source #
Create Handler
fields for AudioTrack
s, with the given name.
videoTrackHandler :: Handler VideoTrack Source #
Create Handler
fields for VideoTrack
s with "Video Track"
as name
.
namedVideoTrackHandler :: Text -> Handler VideoTrack Source #
Create Handler
fields for VideoTrack
s, with the given name.
timedMetadataTrackHandler :: Handler TimedMetaDataTrack Source #
Create Handler
fields for TimedMetadataTrack
s with "TimedMetadata
Track"
as name
.
namedTimedMetadataTrackHandler :: Text -> Handler TimedMetaDataTrack Source #
Create Handler
fields for TimedMetadataTrack
s, with the given name.
auxilliaryVideoTrackHandler :: Handler AuxilliaryVideoTrack Source #
Create Handler
fields for AuxilliaryVideoTrack
s with
"AuxilliaryVideoTrack Track"
as name
.
namedAuxilliaryVideoTrackHandler :: Text -> Handler AuxilliaryVideoTrack Source #
Create Handler
fields for AuxilliaryVideoTrack
s, 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 #
HandlerTypeCode VideoTrack = "vide" | |
HandlerTypeCode AudioTrack = "soun" | |
HandlerTypeCode HintTrack = "hint" | |
HandlerTypeCode TimedMetaDataTrack = "meta" | |
HandlerTypeCode AuxilliaryVideoTrack = "auxv" |