gi-gstvideo-1.0.24: GStreamerVideo bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.GstVideo.Objects.VideoSink

Description

Provides useful functions and a base class for video sinks.

GstVideoSink will configure the default base sink to drop frames that arrive later than 20ms as this is considered the default threshold for observing out-of-sync frames.

Synopsis

Exported types

newtype VideoSink Source #

Memory-managed wrapper type.

Constructors

VideoSink (ManagedPtr VideoSink) 

Instances

Instances details
Eq VideoSink Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

GObject VideoSink Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

ManagedPtrNewtype VideoSink Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

Methods

toManagedPtr :: VideoSink -> ManagedPtr VideoSink

TypedObject VideoSink Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

Methods

glibType :: IO GType

HasParentTypes VideoSink Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

IsGValue (Maybe VideoSink) Source #

Convert VideoSink to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.GstVideo.Objects.VideoSink

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe VideoSink -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe VideoSink)

type ParentTypes VideoSink Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

type ParentTypes VideoSink = '[BaseSink, Element, Object, Object]

class (GObject o, IsDescendantOf VideoSink o) => IsVideoSink o Source #

Type class for types which can be safely cast to VideoSink, for instance with toVideoSink.

Instances

Instances details
(GObject o, IsDescendantOf VideoSink o) => IsVideoSink o Source # 
Instance details

Defined in GI.GstVideo.Objects.VideoSink

toVideoSink :: (MonadIO m, IsVideoSink o) => o -> m VideoSink Source #

Cast to VideoSink, for types for which this is known to be safe. For general casts, use castTo.

Methods

Click to display all available methods, including inherited ones

Expand

Methods

abortState, addControlBinding, addPad, addPropertyDeepNotifyWatch, addPropertyNotifyWatch, bindProperty, bindPropertyFull, callAsync, changeState, continueState, createAllPads, defaultError, doPreroll, forceFloating, foreachPad, foreachSinkPad, foreachSrcPad, freezeNotify, getv, hasActiveControlBindings, hasAncestor, hasAsAncestor, hasAsParent, isAsyncEnabled, isFloating, isLastSampleEnabled, isLockedState, isQosEnabled, iteratePads, iterateSinkPads, iterateSrcPads, link, linkFiltered, linkPads, linkPadsFiltered, linkPadsFull, lostState, messageFull, messageFullWithDetails, noMorePads, notify, notifyByPspec, postMessage, provideClock, query, queryConvert, queryDuration, queryLatency, queryPosition, ref, refSink, releaseRequestPad, removeControlBinding, removePad, removePropertyNotifyWatch, requestPad, runDispose, seek, seekSimple, sendEvent, stealData, stealQdata, suggestNextSync, syncStateWithParent, syncValues, thawNotify, unlink, unlinkPads, unparent, unref, wait, waitClock, waitPreroll, watchClosure.

Getters

getBaseTime, getBlocksize, getBus, getClock, getCompatiblePad, getCompatiblePadTemplate, getContext, getContextUnlocked, getContexts, getControlBinding, getControlRate, getCurrentClockTime, getCurrentRunningTime, getData, getDropOutOfSegment, getFactory, getGValueArray, getLastSample, getLatency, getMaxBitrate, getMaxLateness, getMetadata, getName, getPadTemplate, getPadTemplateList, getParent, getPathString, getProcessingDeadline, getProperty, getQdata, getRenderDelay, getRequestPad, getStartTime, getState, getStaticPad, getStats, getSync, getThrottleTime, getTsOffset, getValue.

Setters

setAsyncEnabled, setBaseTime, setBlocksize, setBus, setClock, setContext, setControlBindingDisabled, setControlBindingsDisabled, setControlRate, setData, setDataFull, setDropOutOfSegment, setLastSampleEnabled, setLockedState, setMaxBitrate, setMaxLateness, setName, setParent, setProcessingDeadline, setProperty, setQosEnabled, setRenderDelay, setStartTime, setState, setSync, setThrottleTime, setTsOffset.

centerRect

videoSinkCenterRect Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> VideoRectangle

src: the VideoRectangle describing the source area

-> VideoRectangle

dst: the VideoRectangle describing the destination area

-> VideoRectangle

result: a pointer to a VideoRectangle which will receive the result area

-> Bool

scaling: a Bool indicating if scaling should be applied or not

-> m () 

Takes src rectangle and position it at the center of dst rectangle with or without scaling. It handles clipping if the src rectangle is bigger than the dst one and scaling is set to FALSE.

Properties

showPrerollFrame

Whether to show video frames during preroll. If set to False, video frames will only be rendered in PLAYING state.

constructVideoSinkShowPrerollFrame :: (IsVideoSink o, MonadIO m) => Bool -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “show-preroll-frame” property. This is rarely needed directly, but it is used by new.

getVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> m Bool Source #

Get the value of the “show-preroll-frame” property. When overloading is enabled, this is equivalent to

get videoSink #showPrerollFrame

setVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> Bool -> m () Source #

Set the value of the “show-preroll-frame” property. When overloading is enabled, this is equivalent to

set videoSink [ #showPrerollFrame := value ]