Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
Safe Haskell | None |
Language | Haskell2010 |
Frame (context) data passed to each frame parsing virtual methods. In addition to providing the data to be checked for a valid frame or an already identified frame, it conveys additional metadata or control information from and to the subclass w.r.t. the particular frame in question (rather than global parameters). Some of these may apply to each parsing stage, others only to some a particular one. These parameters are effectively zeroed at start of each frame's processing, i.e. parsing virtual method invocation sequence.
Synopsis
- newtype BaseParseFrame = BaseParseFrame (ManagedPtr BaseParseFrame)
- newZeroBaseParseFrame :: MonadIO m => m BaseParseFrame
- noBaseParseFrame :: Maybe BaseParseFrame
- baseParseFrameCopy :: (HasCallStack, MonadIO m) => BaseParseFrame -> m BaseParseFrame
- baseParseFrameFree :: (HasCallStack, MonadIO m) => BaseParseFrame -> m ()
- baseParseFrameInit :: (HasCallStack, MonadIO m) => BaseParseFrame -> m ()
- baseParseFrameNew :: (HasCallStack, MonadIO m) => Buffer -> [BaseParseFrameFlags] -> Int32 -> m BaseParseFrame
- clearBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> m ()
- getBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> m (Maybe Buffer)
- setBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> Ptr Buffer -> m ()
- getBaseParseFrameFlags :: MonadIO m => BaseParseFrame -> m Word32
- setBaseParseFrameFlags :: MonadIO m => BaseParseFrame -> Word32 -> m ()
- getBaseParseFrameOffset :: MonadIO m => BaseParseFrame -> m Word64
- setBaseParseFrameOffset :: MonadIO m => BaseParseFrame -> Word64 -> m ()
- clearBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> m ()
- getBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> m (Maybe Buffer)
- setBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> Ptr Buffer -> m ()
- getBaseParseFrameOverhead :: MonadIO m => BaseParseFrame -> m Int32
- setBaseParseFrameOverhead :: MonadIO m => BaseParseFrame -> Int32 -> m ()
Exported types
newtype BaseParseFrame Source #
Memory-managed wrapper type.
Instances
BoxedObject BaseParseFrame Source # | |
Defined in GI.GstBase.Structs.BaseParseFrame boxedType :: BaseParseFrame -> IO GType # | |
tag ~ AttrSet => Constructible BaseParseFrame tag Source # | |
Defined in GI.GstBase.Structs.BaseParseFrame new :: MonadIO m => (ManagedPtr BaseParseFrame -> BaseParseFrame) -> [AttrOp BaseParseFrame tag] -> m BaseParseFrame # |
newZeroBaseParseFrame :: MonadIO m => m BaseParseFrame Source #
Construct a BaseParseFrame
struct initialized to zero.
noBaseParseFrame :: Maybe BaseParseFrame Source #
A convenience alias for Nothing
:: Maybe
BaseParseFrame
.
Methods
copy
:: (HasCallStack, MonadIO m) | |
=> BaseParseFrame |
|
-> m BaseParseFrame | Returns: A copy of |
Copies a BaseParseFrame
.
free
:: (HasCallStack, MonadIO m) | |
=> BaseParseFrame |
|
-> m () |
Frees the provided frame
.
init
:: (HasCallStack, MonadIO m) | |
=> BaseParseFrame |
|
-> m () |
Sets a BaseParseFrame
to initial state. Currently this means
all public fields are zero-ed and a private flag is set to make
sure baseParseFrameFree
only frees the contents but not
the actual frame. Use this function to initialise a BaseParseFrame
allocated on the stack.
new
:: (HasCallStack, MonadIO m) | |
=> Buffer |
|
-> [BaseParseFrameFlags] |
|
-> Int32 |
|
-> m BaseParseFrame | Returns: a newly-allocated |
Allocates a new BaseParseFrame
. This function is mainly for bindings,
elements written in C should usually allocate the frame on the stack and
then use baseParseFrameInit
to initialise it.
Properties
buffer
input data to be parsed for frames.
clearBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> m () Source #
Set the value of the “buffer
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#buffer
getBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> m (Maybe Buffer) Source #
Get the value of the “buffer
” field.
When overloading is enabled, this is equivalent to
get
baseParseFrame #buffer
setBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> Ptr Buffer -> m () Source #
Set the value of the “buffer
” field.
When overloading is enabled, this is equivalent to
set
baseParseFrame [ #buffer:=
value ]
flags
a combination of input and output BaseParseFrameFlags
that
convey additional context to subclass or allow subclass to tune
subsequent BaseParse
actions.
getBaseParseFrameFlags :: MonadIO m => BaseParseFrame -> m Word32 Source #
Get the value of the “flags
” field.
When overloading is enabled, this is equivalent to
get
baseParseFrame #flags
setBaseParseFrameFlags :: MonadIO m => BaseParseFrame -> Word32 -> m () Source #
Set the value of the “flags
” field.
When overloading is enabled, this is equivalent to
set
baseParseFrame [ #flags:=
value ]
offset
media specific offset of input frame Note that a converter may have a different one on the frame's buffer.
getBaseParseFrameOffset :: MonadIO m => BaseParseFrame -> m Word64 Source #
Get the value of the “offset
” field.
When overloading is enabled, this is equivalent to
get
baseParseFrame #offset
setBaseParseFrameOffset :: MonadIO m => BaseParseFrame -> Word64 -> m () Source #
Set the value of the “offset
” field.
When overloading is enabled, this is equivalent to
set
baseParseFrame [ #offset:=
value ]
outBuffer
output data.
clearBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> m () Source #
Set the value of the “out_buffer
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#outBuffer
getBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> m (Maybe Buffer) Source #
Get the value of the “out_buffer
” field.
When overloading is enabled, this is equivalent to
get
baseParseFrame #outBuffer
setBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> Ptr Buffer -> m () Source #
Set the value of the “out_buffer
” field.
When overloading is enabled, this is equivalent to
set
baseParseFrame [ #outBuffer:=
value ]
overhead
subclass can set this to indicates the metadata overhead for the given frame, which is then used to enable more accurate bitrate computations. If this is -1, it is assumed that this frame should be skipped in bitrate calculation.
getBaseParseFrameOverhead :: MonadIO m => BaseParseFrame -> m Int32 Source #
Get the value of the “overhead
” field.
When overloading is enabled, this is equivalent to
get
baseParseFrame #overhead
setBaseParseFrameOverhead :: MonadIO m => BaseParseFrame -> Int32 -> m () Source #
Set the value of the “overhead
” field.
When overloading is enabled, this is equivalent to
set
baseParseFrame [ #overhead:=
value ]