gi-gstpbutils-1.0.23: GStreamer Plugins Base Utils bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.GstPbutils.Objects.EncodingVideoProfile

Description

Variant of EncodingProfile for video streams, allows specifying the pass.

Synopsis

Exported types

class (GObject o, IsDescendantOf EncodingVideoProfile o) => IsEncodingVideoProfile o Source #

Type class for types which can be safely cast to EncodingVideoProfile, for instance with toEncodingVideoProfile.

Instances

Instances details
(GObject o, IsDescendantOf EncodingVideoProfile o) => IsEncodingVideoProfile o Source # 
Instance details

Defined in GI.GstPbutils.Objects.EncodingVideoProfile

toEncodingVideoProfile :: (MonadIO m, IsEncodingVideoProfile o) => o -> m EncodingVideoProfile Source #

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

Methods

getPass

encodingVideoProfileGetPass Source #

Arguments

:: (HasCallStack, MonadIO m, IsEncodingVideoProfile a) 
=> a

prof: a EncodingVideoProfile

-> m Word32

Returns: The pass number. Starts at 1 for multi-pass. 0 if this is not a multi-pass profile

Get the pass number if this is part of a multi-pass profile.

getVariableframerate

encodingVideoProfileGetVariableframerate Source #

Arguments

:: (HasCallStack, MonadIO m, IsEncodingVideoProfile a) 
=> a

prof: a EncodingVideoProfile

-> m Bool

Returns: Whether non-constant video framerate is allowed for encoding.

*NOTE*: Fixed framerate won\'t be enforced when @/encodebin:avoid-reencoding/@
is set.

new

encodingVideoProfileNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Caps

format: the Caps

-> Maybe Text

preset: the preset(s) to use on the encoder, can be Nothing

-> Maybe Caps

restriction: the Caps used to restrict the input to the encoder, can be NULL. See encodingProfileGetRestriction for more details.

-> Word32

presence: the number of time this stream must be used. 0 means any number of times (including never)

-> m EncodingVideoProfile

Returns: the newly created EncodingVideoProfile.

Creates a new EncodingVideoProfile

All provided allocatable arguments will be internally copied, so can be safely freed/unreferenced after calling this method.

If you wish to control the pass number (in case of multi-pass scenarios), please refer to the encodingVideoProfileSetPass documentation.

If you wish to use/force a constant framerate please refer to the encodingVideoProfileSetVariableframerate documentation.

setPass

encodingVideoProfileSetPass Source #

Arguments

:: (HasCallStack, MonadIO m, IsEncodingVideoProfile a) 
=> a

prof: a EncodingVideoProfile

-> Word32

pass: the pass number for this profile

-> m () 

Sets the pass number of this video profile. The first pass profile should have this value set to 1. If this video profile isn't part of a multi-pass profile, you may set it to 0 (the default value).

setVariableframerate

encodingVideoProfileSetVariableframerate Source #

Arguments

:: (HasCallStack, MonadIO m, IsEncodingVideoProfile a) 
=> a

prof: a EncodingVideoProfile

-> Bool

variableframerate: a boolean

-> m () 

If set to True, then the incoming stream will be allowed to have non-constant framerate. If set to False (default value), then the incoming stream will be normalized by dropping/duplicating frames in order to produce a constance framerate.