gi-gstvideo-1.0.21: GStreamerVideo bindings

CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria (inaki@blueleaf.cc)
Safe HaskellNone
LanguageHaskell2010

GI.GstVideo.Structs.VideoCodecFrame

Contents

Description

A VideoCodecFrame represents a video frame both in raw and encoded form.

Synopsis

Exported types

newZeroVideoCodecFrame :: MonadIO m => m VideoCodecFrame Source #

Construct a VideoCodecFrame struct initialized to zero.

Methods

getUserData

videoCodecFrameGetUserData Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> VideoCodecFrame

frame: a VideoCodecFrame

-> m (Ptr ())

Returns: The previously set user_data

Gets private data set on the frame by the subclass via videoCodecFrameSetUserData previously.

ref

videoCodecFrameRef Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> VideoCodecFrame

frame: a VideoCodecFrame

-> m VideoCodecFrame

Returns: buf

Increases the refcount of the given frame by one.

setUserData

videoCodecFrameSetUserData Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> VideoCodecFrame

frame: a VideoCodecFrame

-> DestroyNotify

notify: a DestroyNotify

-> m () 

Sets userData on the frame and the DestroyNotify that will be called when the frame is freed. Allows to attach private data by the subclass to frames.

If a userData was previously set, then the previous set notify will be called before the userData is replaced.

unref

videoCodecFrameUnref Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> VideoCodecFrame

frame: a VideoCodecFrame

-> m () 

Decreases the refcount of the frame. If the refcount reaches 0, the frame will be freed.

Properties

deadline

Running time when the frame will be used.

getVideoCodecFrameDeadline :: MonadIO m => VideoCodecFrame -> m Word64 Source #

Get the value of the “deadline” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #deadline

setVideoCodecFrameDeadline :: MonadIO m => VideoCodecFrame -> Word64 -> m () Source #

Set the value of the “deadline” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #deadline := value ]

distanceFromSync

Distance in frames from the last synchronization point.

getVideoCodecFrameDistanceFromSync :: MonadIO m => VideoCodecFrame -> m Int32 Source #

Get the value of the “distance_from_sync” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #distanceFromSync

setVideoCodecFrameDistanceFromSync :: MonadIO m => VideoCodecFrame -> Int32 -> m () Source #

Set the value of the “distance_from_sync” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #distanceFromSync := value ]

dts

Decoding timestamp

getVideoCodecFrameDts :: MonadIO m => VideoCodecFrame -> m Word64 Source #

Get the value of the “dts” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #dts

setVideoCodecFrameDts :: MonadIO m => VideoCodecFrame -> Word64 -> m () Source #

Set the value of the “dts” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #dts := value ]

duration

Duration of the frame

getVideoCodecFrameDuration :: MonadIO m => VideoCodecFrame -> m Word64 Source #

Get the value of the “duration” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #duration

setVideoCodecFrameDuration :: MonadIO m => VideoCodecFrame -> Word64 -> m () Source #

Set the value of the “duration” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #duration := value ]

inputBuffer

the input Buffer that created this frame. The buffer is owned by the frame and references to the frame instead of the buffer should be kept.

clearVideoCodecFrameInputBuffer :: MonadIO m => VideoCodecFrame -> m () Source #

Set the value of the “input_buffer” field to Nothing. When overloading is enabled, this is equivalent to

clear #inputBuffer

getVideoCodecFrameInputBuffer :: MonadIO m => VideoCodecFrame -> m (Maybe Buffer) Source #

Get the value of the “input_buffer” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #inputBuffer

setVideoCodecFrameInputBuffer :: MonadIO m => VideoCodecFrame -> Ptr Buffer -> m () Source #

Set the value of the “input_buffer” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #inputBuffer := value ]

outputBuffer

the output Buffer. Implementations should set this either directly, or by using the gstVideoDecoderAllocateOutputFrame() or gstVideoDecoderAllocateOutputBuffer() methods. The buffer is owned by the frame and references to the frame instead of the buffer should be kept.

clearVideoCodecFrameOutputBuffer :: MonadIO m => VideoCodecFrame -> m () Source #

Set the value of the “output_buffer” field to Nothing. When overloading is enabled, this is equivalent to

clear #outputBuffer

getVideoCodecFrameOutputBuffer :: MonadIO m => VideoCodecFrame -> m (Maybe Buffer) Source #

Get the value of the “output_buffer” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #outputBuffer

setVideoCodecFrameOutputBuffer :: MonadIO m => VideoCodecFrame -> Ptr Buffer -> m () Source #

Set the value of the “output_buffer” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #outputBuffer := value ]

pts

Presentation timestamp

getVideoCodecFramePts :: MonadIO m => VideoCodecFrame -> m Word64 Source #

Get the value of the “pts” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #pts

setVideoCodecFramePts :: MonadIO m => VideoCodecFrame -> Word64 -> m () Source #

Set the value of the “pts” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #pts := value ]

systemFrameNumber

Unique identifier for the frame. Use this if you need to get hold of the frame later (like when data is being decoded). Typical usage in decoders is to set this on the opaque value provided to the library and get back the frame using videoDecoderGetFrame

getVideoCodecFrameSystemFrameNumber :: MonadIO m => VideoCodecFrame -> m Word32 Source #

Get the value of the “system_frame_number” field. When overloading is enabled, this is equivalent to

get videoCodecFrame #systemFrameNumber

setVideoCodecFrameSystemFrameNumber :: MonadIO m => VideoCodecFrame -> Word32 -> m () Source #

Set the value of the “system_frame_number” field. When overloading is enabled, this is equivalent to

set videoCodecFrame [ #systemFrameNumber := value ]