Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
VideoAggregator can accept AYUV, ARGB and BGRA video streams. For each of the requested sink pads it will compare the incoming geometry and framerate to define the output parameters. Indeed output video frames will have the geometry of the biggest incoming video stream and the framerate of the fastest incoming one.
VideoAggregator will do colorspace conversion.
Zorder for each input stream can be configured on the
VideoAggregatorPad
.
Since: 1.16
Synopsis
- newtype VideoAggregator = VideoAggregator (ManagedPtr VideoAggregator)
- class (GObject o, IsDescendantOf VideoAggregator o) => IsVideoAggregator o
- toVideoAggregator :: (MonadIO m, IsVideoAggregator o) => o -> m VideoAggregator
- videoAggregatorGetExecutionTaskPool :: (HasCallStack, MonadIO m, IsVideoAggregator a) => a -> m TaskPool
Exported types
newtype VideoAggregator Source #
Memory-managed wrapper type.
Instances
Eq VideoAggregator Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator (==) :: VideoAggregator -> VideoAggregator -> Bool # (/=) :: VideoAggregator -> VideoAggregator -> Bool # | |
GObject VideoAggregator Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator | |
ManagedPtrNewtype VideoAggregator Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator | |
TypedObject VideoAggregator Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator | |
HasParentTypes VideoAggregator Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator | |
IsGValue (Maybe VideoAggregator) Source # | Convert |
Defined in GI.GstVideo.Objects.VideoAggregator gvalueGType_ :: IO GType # gvalueSet_ :: Ptr GValue -> Maybe VideoAggregator -> IO () # gvalueGet_ :: Ptr GValue -> IO (Maybe VideoAggregator) # | |
type ParentTypes VideoAggregator Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator |
class (GObject o, IsDescendantOf VideoAggregator o) => IsVideoAggregator o Source #
Type class for types which can be safely cast to VideoAggregator
, for instance with toVideoAggregator
.
Instances
(GObject o, IsDescendantOf VideoAggregator o) => IsVideoAggregator o Source # | |
Defined in GI.GstVideo.Objects.VideoAggregator |
toVideoAggregator :: (MonadIO m, IsVideoAggregator o) => o -> m VideoAggregator Source #
Cast to VideoAggregator
, 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
Methods
abortState, addControlBinding, addPad, addPropertyDeepNotifyWatch, addPropertyNotifyWatch, bindProperty, bindPropertyFull, callAsync, changeState, continueState, createAllPads, defaultError, finishBuffer, finishBufferList, forceFloating, foreachPad, foreachSinkPad, foreachSrcPad, freezeNotify, getv, hasActiveControlBindings, hasAncestor, hasAsAncestor, hasAsParent, isFloating, isLockedState, iteratePads, iterateSinkPads, iterateSrcPads, link, linkFiltered, linkPads, linkPadsFiltered, linkPadsFull, lostState, messageFull, messageFullWithDetails, negotiate, noMorePads, notify, notifyByPspec, peekNextSample, postMessage, provideClock, query, queryConvert, queryDuration, queryPosition, ref, refSink, releaseRequestPad, removeControlBinding, removePad, removePropertyNotifyWatch, requestPad, requestPadSimple, runDispose, seek, seekSimple, selectedSamples, sendEvent, simpleGetNextTime, stealData, stealQdata, suggestNextSync, syncStateWithParent, syncValues, thawNotify, unlink, unlinkPads, unparent, unref, updateSegment, watchClosure.
Getters
getAllocator, getBaseTime, getBufferPool, getBus, getClock, getCompatiblePad, getCompatiblePadTemplate, getContext, getContextUnlocked, getContexts, getControlBinding, getControlRate, getCurrentClockTime, getCurrentRunningTime, getData, getExecutionTaskPool, getFactory, getGValueArray, getLatency, getMetadata, getName, getPadTemplate, getPadTemplateList, getParent, getPathString, getProperty, getQdata, getRequestPad, getStartTime, getState, getStaticPad, getValue.
Setters
setBaseTime, setBus, setClock, setContext, setControlBindingDisabled, setControlBindingsDisabled, setControlRate, setData, setDataFull, setLatency, setLockedState, setName, setParent, setProperty, setSrcCaps, setStartTime, setState.
getExecutionTaskPool
videoAggregatorGetExecutionTaskPool Source #
:: (HasCallStack, MonadIO m, IsVideoAggregator a) | |
=> a |
|
-> m TaskPool | Returns: the |
The returned TaskPool
is used internally for performing parallel
video format conversions/scaling/etc during the
VideoAggregatorPadClass
::prepare_frame_start
() process.
Subclasses can add their own operation to perform using the returned
TaskPool
during VideoAggregatorClass
::aggregate_frames
().
Since: 1.20