Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
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
- newtype VideoSink = VideoSink (ManagedPtr VideoSink)
- class (GObject o, IsDescendantOf VideoSink o) => IsVideoSink o
- toVideoSink :: (MonadIO m, IsVideoSink o) => o -> m VideoSink
- videoSinkCenterRect :: (HasCallStack, MonadIO m) => VideoRectangle -> VideoRectangle -> VideoRectangle -> Bool -> m ()
- constructVideoSinkShowPrerollFrame :: (IsVideoSink o, MonadIO m) => Bool -> m (GValueConstruct o)
- getVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> m Bool
- setVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> Bool -> m ()
Exported types
Memory-managed wrapper type.
Instances
Eq VideoSink Source # | |
GObject VideoSink Source # | |
Defined in GI.GstVideo.Objects.VideoSink | |
ManagedPtrNewtype VideoSink Source # | |
Defined in GI.GstVideo.Objects.VideoSink toManagedPtr :: VideoSink -> ManagedPtr VideoSink | |
TypedObject VideoSink Source # | |
Defined in GI.GstVideo.Objects.VideoSink | |
HasParentTypes VideoSink Source # | |
Defined in GI.GstVideo.Objects.VideoSink | |
IsGValue (Maybe VideoSink) Source # | Convert |
Defined in GI.GstVideo.Objects.VideoSink gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe VideoSink -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe VideoSink) | |
type ParentTypes VideoSink Source # | |
Defined in GI.GstVideo.Objects.VideoSink |
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
(GObject o, IsDescendantOf VideoSink o) => IsVideoSink o Source # | |
Defined in GI.GstVideo.Objects.VideoSink |
toVideoSink :: (MonadIO m, IsVideoSink o) => o -> m VideoSink Source #
Methods
Click to display all available methods, including inherited ones
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
:: (HasCallStack, MonadIO m) | |
=> VideoRectangle |
|
-> VideoRectangle |
|
-> VideoRectangle |
|
-> Bool |
|
-> 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 ]