gstreamermm 1.10.0
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Gst Namespace Reference

Namespaces

namespace  Enums
 
namespace  SDP
 

Classes

class  AllocationParams
 Parameters to control the allocation of memory. More...
 
class  Allocator
 Allocate memory blocks. More...
 
class  AtomicQueue
 The Gst::AtomicQueue object implements a queue that can be used from multiple threads without performing any blocking operations. More...
 
class  AudioBaseSink
 The base class for audio sinks. More...
 
class  AudioBaseSrc
 The base class for audio sources. More...
 
class  AudioCdSrc
 A base class for CD digital audio (CDDA) sources, which handles things like seeking, querying, discid calculation, tags, and buffer timestamping. More...
 
class  AudioClock
 A Helper object for implementing audio clocks. More...
 
class  AudioFilter
 A base class for simple audio filters. More...
 
class  AudioFormatInfo
 Information for an audio format. More...
 
class  AudioInfo
 Information describing audio properties. More...
 
class  AudioRingBuffer
 A base class for audio audioringbuffer implementations. More...
 
class  AudioRingBufferSpec
 A class containing the format specification of a Gst::AudioRingBuffer. More...
 
class  AudioSink
 A simple base class for audio sinks. More...
 
class  AudioSrc
 A simple base class for audio sources. More...
 
class  BaseSink
 The base class for sink elements. More...
 
class  BaseSrc
 A base class for getrange based source elements. More...
 
class  BaseTransform
 A base class for simple transform filters. More...
 
class  Bin
 Base class and element that can contain other elements. More...
 
class  Buffer
 Data-passing buffer type. More...
 
class  BufferList
 A grouped scatter data buffer type for data-passing. More...
 
class  Bus
 A class that encompasses the GStreamer asynchronous message bus subsystem. More...
 
class  Caps
 Structure describing sets of media formats. More...
 
class  CapsFeatures
 A set of features in caps. More...
 
class  Check
 
class  ChildProxy
 Interface for multi child elements. More...
 
class  Clock
 Abstract class for global clocks GStreamer uses a global clock to synchronize the plugins in a pipeline. More...
 
class  ClockID
 A data type to hold the handle to an outstanding sync or async clock callback. More...
 
class  ColorBalance
 An interface for adjusting color balance settings. More...
 
class  ColorBalanceChannel
 A class that represents a color balance channel. More...
 
class  Context
 Lightweight objects to represent element contexts. More...
 
class  CoreError
 The GStreamer core GError type. More...
 
class  Discoverer
 Discoverer - Utility for discovering information on URIs. More...
 
class  DiscovererAudioInfo
 DiscovererAudioInfo - Gst::DiscovererStreamInfo specific to audio streams. More...
 
class  DiscovererContainerInfo
 DiscovererContainerInfo - Gst::DiscovererStreamInfo specific to container streams. More...
 
class  DiscovererInfo
 DiscovererInfo - Class containing the information of a URI analyzed by Gst::Discoverer. More...
 
class  DiscovererStreamInfo
 DiscovererStreamInfo - Base class for information concerning a media stream. More...
 
class  DiscovererVideoInfo
 DiscovererVideoInfo - Gst::DiscovererStreamInfo specific to video streams (this includes images). More...
 
class  Element
 Abstract base class for all pipeline elements. More...
 
class  ElementClass
 
class  ElementFactory
 Create Gst::Element 's from a factory. More...
 
class  EncodingProfile
 Gst::EncodingProfile can be provided to the 'encodebin' element, which will take care of selecting and setting up the required elements to produce an output stream conforming to the specifications of the profile. More...
 
class  Event
 A class that represents events that are passed up and down a pipeline. More...
 
class  EventBufferSize
 A buffer size event. More...
 
class  EventCaps
 A caps event. More...
 
class  EventEos
 An end of stream event. More...
 
class  EventFlushStart
 A flush start event. More...
 
class  EventFlushStop
 A flush stop event. More...
 
class  EventGap
 A gap in the stream event. More...
 
class  EventLatency
 A latency event. More...
 
class  EventProtection
 A protection event. More...
 
class  EventQos
 A QOS event. More...
 
class  EventReconfigure
 A reconfigure event. More...
 
class  EventSeek
 A seek event. More...
 
class  EventSegment
 A segment event. More...
 
class  EventSegmentDone
 A segment done event. More...
 
class  EventSinkMessage
 A sink-message event. More...
 
class  EventStep
 A step event. More...
 
class  EventStreamStart
 A stream-start event. More...
 
class  EventTag
 A tag event. More...
 
class  EventToc
 A new table of content event. More...
 
class  EventTocSelect
 A toc select event. More...
 
class  Exception
 
class  FormatDefinition
 A class to store the details of a Gst::Format retrieved by Gst::get_format_details(). More...
 
class  Fourcc
 A class that represents a 4 byte identifier (used in codecs). More...
 
class  Fraction
 A class that represents a fraction. More...
 
class  GhostPad
 A class that represents pseudo link pads. More...
 
class  Iterator
 A class used to retrieve multiple reference counted elements in a thread safe way. More...
 
class  IteratorBase
 The base class for classes that retrieve multiple elements in a thread safe way. More...
 
class  IteratorBasic
 A class used to retrieve multiple elements in a thread safe way. More...
 
class  LibraryError
 The GStreamer library GError type. More...
 
class  MapInfo
 
class  Memory
 GstMemory is a lightweight refcounted object that wraps a region of memory. More...
 
class  Message
 A class that represents lightweight objects to signal the application of pipeline events. More...
 
class  MessageApplication
 An application message. More...
 
class  MessageAsyncDone
 An asynchronous done message. More...
 
class  MessageAsyncStart
 An asynchronous start message. More...
 
class  MessageBuffering
 A buffering message. More...
 
class  MessageClockLost
 A clock lost message. More...
 
class  MessageClockProvide
 A clock provide message. More...
 
class  MessageCustom
 A custom message. More...
 
class  MessageDurationChanged
 A duration message. More...
 
class  MessageElement
 An element specific message. More...
 
class  MessageEos
 An end of stream message. More...
 
class  MessageError
 An error message. More...
 
class  MessageHaveContext
 A have-context message. More...
 
class  MessageInfo
 An informational message. More...
 
class  MessageLatency
 A latency message. More...
 
class  MessageNeedContext
 A need-context message. More...
 
class  MessageNewClock
 A new clock message. More...
 
class  MessageProgress
 A progress message. More...
 
class  MessageQos
 A qos message. More...
 
class  MessageRequestState
 A request state message. More...
 
class  MessageResetTime
 A reset-time message. More...
 
class  MessageSegmentDone
 A segment done message. More...
 
class  MessageSegmentStart
 A segment start message. More...
 
class  MessageStateChanged
 A state change message. More...
 
class  MessageStateDirty
 A state dirty message. More...
 
class  MessageStepDone
 A step done message. More...
 
class  MessageStepStart
 A step start message. More...
 
class  MessageStreamStart
 A stream-start message. More...
 
class  MessageStreamStatus
 A stream status message. More...
 
class  MessageStructureChange
 A structure change message. More...
 
class  MessageTag
 A tag message. More...
 
class  MessageToc
 A toc message. More...
 
class  MessageWarning
 A warning message. More...
 
class  MiniObject
 This is a base class for some gstreamermm objects. More...
 
class  Navigation
 An interface for elements that provide navigation functionality. More...
 
class  NetClientClock
 Special clock that synchronizes to a remote time provider. More...
 
class  Object
 A base class for the GStreamer object hierarchy. More...
 
class  Pad
 A class that represents objects contained by elements that allows links to other elements. More...
 
class  PadProbeInfo
 
class  PadTemplate
 A class that describes the media type of a pad. More...
 
class  Parse
 A class that gets a pipeline from a text pipeline description. More...
 
class  ParseError
 The different parsing errors that can occur. More...
 
class  Pipeline
 A top-level bin with clocking and bus management functionality. More...
 
class  Plugin
 A container for features loaded from a shared object module. More...
 
class  PluginError
 The plugin loading errors. More...
 
class  PluginFeature
 A base class for anything that can be added to a Gst::Plugin. More...
 
class  Preset
 A helper interface for element presets. More...
 
class  PushSrc
 A base class for push based source elements. More...
 
class  QuarkData
 This is a base class for data which represents qdata. More...
 
class  Query
 A class used to perform queries on pads and elements. More...
 
class  QueryAcceptCaps
 A new accept caps query object. More...
 
class  QueryAllocation
 A new scheduling query object. More...
 
class  QueryApplication
 A custom application query object. More...
 
class  QueryBuffering
 A new buffering query object. More...
 
class  QueryCaps
 A new caps query object. More...
 
class  QueryConvert
 A convert query object. More...
 
class  QueryDuration
 A stream duration query object. More...
 
class  QueryFormats
 A formats query object. More...
 
class  QueryLatency
 A latency query object. More...
 
class  QueryPosition
 A stream position query object. More...
 
class  QueryScheduling
 A new scheduling query object. More...
 
class  QuerySeeking
 A seeking query object. More...
 
class  QuerySegment
 A new segment query object. More...
 
class  QueryUri
 A new uri query object. More...
 
class  Range
 A class that represents a range (min - max). More...
 
class  Registry
 An abstract base class for management of Gst::Plugin objects. More...
 
class  ResourceError
 The GStreamer resource GError type. More...
 
class  Sample
 A Gst::Sample is a small object containing data, a type, timing and extra arbitrary information. More...
 
class  Segment
 A class that describes the configured region of interest in a media file. More...
 
class  StaticPadTemplate
 
class  StreamError
 The GStreamer stream GError type. More...
 
class  StreamVolume
 An interface for elements that provide a stream volume. More...
 
class  Structure
 Generic class containing fields of names and values. More...
 
class  SystemClock
 A default clock that uses the current system time. More...
 
class  TagList
 A class tha represents a list of tags and values used to describe media metadata. More...
 
class  TagSetter
 An interface that allows setting and retrieval of media metadata. More...
 
class  Task
 A class representing GStreamer streaming threads. More...
 
class  TaskPool
 A class representing a pool of GStreamer streaming threads. More...
 
class  Toc
 Gst::Toc lets you to inform other elements in pipeline or application that playing source has some kind of table of contents (TOC). More...
 
class  TocEntry
 
class  TocSetter
 An interface that allows setting and retrieval of the TOC. More...
 
class  TypeFind
 A class used for stream type detection. More...
 
class  TypeFindFactory
 A class used to get information about registered typefind functions. More...
 
class  URIHandler
 An interface to ease URI handling in plugins. More...
 
class  ValueList
 
class  VideoChromaResample
 
class  VideoFormatInfo
 Information for a video format. More...
 
class  VideoFrame
 
class  VideoInfo
 Information describing image properties. More...
 
class  VideoOrientation
 An interface for elements providing video orientation controls. More...
 
class  VideoOverlay
 An interface for setting/getting a Window on elements supporting it. More...
 
struct  VideoRectangle
 A helper structure for the Gst::VideoSink class representing a rectangular area. More...
 
class  VideoSink
 A base class for video sinks. More...
 

Typedefs

typedef GstClockTime ClockTime
 A data type to hold a time, measured in nanoseconds.
 
typedef GstClockTimeDiff ClockTimeDiff
 A data type to hold a timedifference, measured in nanoseconds.
 

Enumerations

enum  AudioBaseSinkSlaveMethod {
  AUDIO_BASE_SINK_SLAVE_RESAMPLE ,
  AUDIO_BASE_SINK_SLAVE_SKEW ,
  AUDIO_BASE_SINK_SLAVE_NONE ,
  AUDIO_BASE_SINK_SLAVE_CUSTOM
}
 
enum  AudioBaseSinkDiscontReason {
  AUDIO_BASE_SINK_DISCONT_REASON_NO_DISCONT ,
  AUDIO_BASE_SINK_DISCONT_REASON_NEW_CAPS ,
  AUDIO_BASE_SINK_DISCONT_REASON_FLUSH ,
  AUDIO_BASE_SINK_DISCONT_REASON_SYNC_LATENCY ,
  AUDIO_BASE_SINK_DISCONT_REASON_ALIGNMENT ,
  AUDIO_BASE_SINK_DISCONT_REASON_DEVICE_FAILURE
}
 
enum  AudioBaseSrcSlaveMethod {
  AUDIO_BASE_SRC_SLAVE_RESAMPLE ,
  AUDIO_BASE_SRC_SLAVE_RETIMESTAMP ,
  AUDIO_BASE_SRC_SLAVE_SKEW ,
  AUDIO_BASE_SRC_SLAVE_NONE
}
 
enum  AudioCdSrcMode {
  AUDIO_CD_SRC_MODE_NORMAL ,
  AUDIO_CD_SRC_MODE_CONTINUOUS
}
 
enum  AudioFormat {
  AUDIO_FORMAT_UNKNOWN = 0 ,
  AUDIO_FORMAT_ENCODED = 1 ,
  AUDIO_FORMAT_S8 = 2 ,
  AUDIO_FORMAT_U8 = 3 ,
  AUDIO_FORMAT_S16LE = 4 ,
  AUDIO_FORMAT_S16BE = 5 ,
  AUDIO_FORMAT_U16LE = 6 ,
  AUDIO_FORMAT_U16BE = 7 ,
  AUDIO_FORMAT_S24_32LE = 8 ,
  AUDIO_FORMAT_S24_32BE = 9 ,
  AUDIO_FORMAT_U24_32LE = 10 ,
  AUDIO_FORMAT_U24_32BE = 11 ,
  AUDIO_FORMAT_S32LE = 12 ,
  AUDIO_FORMAT_S32BE = 13 ,
  AUDIO_FORMAT_U32LE = 14 ,
  AUDIO_FORMAT_U32BE = 15 ,
  AUDIO_FORMAT_S24LE = 16 ,
  AUDIO_FORMAT_S24BE = 17 ,
  AUDIO_FORMAT_U24LE = 18 ,
  AUDIO_FORMAT_U24BE = 19 ,
  AUDIO_FORMAT_S20LE = 20 ,
  AUDIO_FORMAT_S20BE = 21 ,
  AUDIO_FORMAT_U20LE = 22 ,
  AUDIO_FORMAT_U20BE = 23 ,
  AUDIO_FORMAT_S18LE = 24 ,
  AUDIO_FORMAT_S18BE = 25 ,
  AUDIO_FORMAT_U18LE = 26 ,
  AUDIO_FORMAT_U18BE = 27 ,
  AUDIO_FORMAT_F32LE = 28 ,
  AUDIO_FORMAT_F32BE = 29 ,
  AUDIO_FORMAT_F64LE = 30 ,
  AUDIO_FORMAT_F64BE = 31 ,
  AUDIO_FORMAT_S16 = _GST_AUDIO_FORMAT_NE(S16) ,
  AUDIO_FORMAT_U16 = _GST_AUDIO_FORMAT_NE(U16) ,
  AUDIO_FORMAT_S24_32 = _GST_AUDIO_FORMAT_NE(S24_32) ,
  AUDIO_FORMAT_U24_32 = _GST_AUDIO_FORMAT_NE(U24_32) ,
  AUDIO_FORMAT_S32 = _GST_AUDIO_FORMAT_NE(S32) ,
  AUDIO_FORMAT_U32 = _GST_AUDIO_FORMAT_NE(U32) ,
  AUDIO_FORMAT_S24 = _GST_AUDIO_FORMAT_NE(S24) ,
  AUDIO_FORMAT_U24 = _GST_AUDIO_FORMAT_NE(U24) ,
  AUDIO_FORMAT_S20 = _GST_AUDIO_FORMAT_NE(S20) ,
  AUDIO_FORMAT_U20 = _GST_AUDIO_FORMAT_NE(U20) ,
  AUDIO_FORMAT_S18 = _GST_AUDIO_FORMAT_NE(S18) ,
  AUDIO_FORMAT_U18 = _GST_AUDIO_FORMAT_NE(U18) ,
  AUDIO_FORMAT_F32 = _GST_AUDIO_FORMAT_NE(F32) ,
  AUDIO_FORMAT_F64 = _GST_AUDIO_FORMAT_NE(F64)
}
 
enum  AudioFormatFlags {
  AUDIO_FORMAT_FLAG_INTEGER = (1 << 0) ,
  AUDIO_FORMAT_FLAG_FLOAT = (1 << 1) ,
  AUDIO_FORMAT_FLAG_SIGNED = (1 << 2) ,
  AUDIO_FORMAT_FLAG_COMPLEX = (1 << 4) ,
  AUDIO_FORMAT_FLAG_UNPACK = (1 << 5)
}
 
enum  AudioPackFlags {
  AUDIO_PACK_FLAG_NONE = 0x0 ,
  AUDIO_PACK_FLAG_TRUNCATE_RANGE = (1 << 0)
}
 
enum  AudioFlags {
  AUDIO_FLAG_NONE = 0x0 ,
  AUDIO_FLAG_UNPOSITIONED = (1 << 0)
}
 
enum  AudioLayout {
  AUDIO_LAYOUT_INTERLEAVED ,
  AUDIO_LAYOUT_NON_INTERLEAVED
}
 
enum  AudioChannelPosition {
  AUDIO_CHANNEL_POSITION_NONE = -3 ,
  AUDIO_CHANNEL_POSITION_MONO ,
  AUDIO_CHANNEL_POSITION_INVALID ,
  AUDIO_CHANNEL_POSITION_FRONT_LEFT ,
  AUDIO_CHANNEL_POSITION_FRONT_RIGHT ,
  AUDIO_CHANNEL_POSITION_FRONT_CENTER ,
  AUDIO_CHANNEL_POSITION_LFE1 ,
  AUDIO_CHANNEL_POSITION_REAR_LEFT ,
  AUDIO_CHANNEL_POSITION_REAR_RIGHT ,
  AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER ,
  AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER ,
  AUDIO_CHANNEL_POSITION_REAR_CENTER ,
  AUDIO_CHANNEL_POSITION_LFE2 ,
  AUDIO_CHANNEL_POSITION_SIDE_LEFT ,
  AUDIO_CHANNEL_POSITION_SIDE_RIGHT ,
  AUDIO_CHANNEL_POSITION_TOP_FRONT_LEFT ,
  AUDIO_CHANNEL_POSITION_TOP_FRONT_RIGHT ,
  AUDIO_CHANNEL_POSITION_TOP_FRONT_CENTER ,
  AUDIO_CHANNEL_POSITION_TOP_CENTER ,
  AUDIO_CHANNEL_POSITION_TOP_REAR_LEFT ,
  AUDIO_CHANNEL_POSITION_TOP_REAR_RIGHT ,
  AUDIO_CHANNEL_POSITION_TOP_SIDE_LEFT ,
  AUDIO_CHANNEL_POSITION_TOP_SIDE_RIGHT ,
  AUDIO_CHANNEL_POSITION_TOP_REAR_CENTER ,
  AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_CENTER ,
  AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_LEFT ,
  AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_RIGHT ,
  AUDIO_CHANNEL_POSITION_WIDE_LEFT ,
  AUDIO_CHANNEL_POSITION_WIDE_RIGHT ,
  AUDIO_CHANNEL_POSITION_SURROUND_LEFT ,
  AUDIO_CHANNEL_POSITION_SURROUND_RIGHT
}
 
enum  AudioRingBufferState {
  AUDIO_RING_BUFFER_STATE_STOPPED ,
  AUDIO_RING_BUFFER_STATE_PAUSED ,
  AUDIO_RING_BUFFER_STATE_STARTED ,
  AUDIO_RING_BUFFER_STATE_ERROR
}
 
enum  AudioRingBufferFormatType {
  AUDIO_RING_BUFFER_FORMAT_TYPE_RAW ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_MU_LAW ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_A_LAW ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_IMA_ADPCM ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_GSM ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_IEC958 ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_AC3 ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_EAC3 ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_DTS ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG2_AAC ,
  AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG4_AAC
}
 
enum  BaseSrcFlags {
  BASE_SRC_FLAG_STARTING = (((GST_OBJECT_FLAG_LAST << 10)) << 0) ,
  BASE_SRC_FLAG_STARTED = (((GST_OBJECT_FLAG_LAST << 10)) << 1) ,
  BASE_SRC_FLAG_LAST = (((GST_OBJECT_FLAG_LAST << 10)) << 6)
}
 
enum  BinFlags {
  BIN_FLAG_NO_RESYNC = (GST_ELEMENT_FLAG_LAST << 0) ,
  BIN_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 5)
}
 
enum  BufferFlags {
  BUFFER_FLAG_LIVE = (GST_MINI_OBJECT_FLAG_LAST << 0) ,
  BUFFER_FLAG_DECODE_ONLY = (GST_MINI_OBJECT_FLAG_LAST << 1) ,
  BUFFER_FLAG_DISCONT = (GST_MINI_OBJECT_FLAG_LAST << 2) ,
  BUFFER_FLAG_RESYNC = (GST_MINI_OBJECT_FLAG_LAST << 3) ,
  BUFFER_FLAG_CORRUPTED = (GST_MINI_OBJECT_FLAG_LAST << 4) ,
  BUFFER_FLAG_MARKER = (GST_MINI_OBJECT_FLAG_LAST << 5) ,
  BUFFER_FLAG_HEADER = (GST_MINI_OBJECT_FLAG_LAST << 6) ,
  BUFFER_FLAG_GAP = (GST_MINI_OBJECT_FLAG_LAST << 7) ,
  BUFFER_FLAG_DROPPABLE = (GST_MINI_OBJECT_FLAG_LAST << 8) ,
  BUFFER_FLAG_DELTA_UNIT = (GST_MINI_OBJECT_FLAG_LAST << 9) ,
  BUFFER_FLAG_TAG_MEMORY = (GST_MINI_OBJECT_FLAG_LAST << 10) ,
  BUFFER_FLAG_SYNC_AFTER = (GST_MINI_OBJECT_FLAG_LAST << 11) ,
  BUFFER_FLAG_LAST = (GST_MINI_OBJECT_FLAG_LAST << 16)
}
 
enum  BufferCopyFlags {
  BUFFER_COPY_NONE = 0x0 ,
  BUFFER_COPY_FLAGS = (1 << 0) ,
  BUFFER_COPY_TIMESTAMPS = (1 << 1) ,
  BUFFER_COPY_META = (1 << 2) ,
  BUFFER_COPY_MEMORY = (1 << 3) ,
  BUFFER_COPY_MERGE = (1 << 4) ,
  BUFFER_COPY_DEEP = (1 << 5)
}
 
enum  BusFlags {
  BUS_FLUSHING = (GST_OBJECT_FLAG_LAST << 0) ,
  BUS_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 1)
}
 
enum  BusSyncReply {
  BUS_DROP ,
  BUS_PASS ,
  BUS_ASYNC
}
 
enum  CapsIntersectMode {
  CAPS_INTERSECT_ZIG_ZAG ,
  CAPS_INTERSECT_FIRST
}
 
enum  CapsFlags { CAPS_FLAG_ANY = (GST_MINI_OBJECT_FLAG_LAST << 0) }
 
enum  ClockEntryType {
  CLOCK_ENTRY_SINGLE ,
  CLOCK_ENTRY_PERIODIC
}
 
enum  ClockReturn {
  CLOCK_OK ,
  CLOCK_EARLY ,
  CLOCK_UNSCHEDULED ,
  CLOCK_BUSY ,
  CLOCK_BADTIME ,
  CLOCK_ERROR ,
  CLOCK_UNSUPPORTED ,
  CLOCK_DONE
}
 
enum  ClockFlags {
  CLOCK_FLAG_CAN_DO_SINGLE_SYNC = (GST_OBJECT_FLAG_LAST << 0) ,
  CLOCK_FLAG_CAN_DO_SINGLE_ASYNC = (GST_OBJECT_FLAG_LAST << 1) ,
  CLOCK_FLAG_CAN_DO_PERIODIC_SYNC = (GST_OBJECT_FLAG_LAST << 2) ,
  CLOCK_FLAG_CAN_DO_PERIODIC_ASYNC = (GST_OBJECT_FLAG_LAST << 3) ,
  CLOCK_FLAG_CAN_SET_RESOLUTION = (GST_OBJECT_FLAG_LAST << 4) ,
  CLOCK_FLAG_CAN_SET_MASTER = (GST_OBJECT_FLAG_LAST << 5) ,
  CLOCK_FLAG_NEEDS_STARTUP_SYNC = (GST_OBJECT_FLAG_LAST << 6) ,
  CLOCK_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 8)
}
 
enum  ColorBalanceType {
  COLOR_BALANCE_HARDWARE ,
  COLOR_BALANCE_SOFTWARE
}
 
enum  DiscovererResult {
  DISCOVERER_OK ,
  DISCOVERER_URI_INVALID ,
  DISCOVERER_ERROR ,
  DISCOVERER_TIMEOUT ,
  DISCOVERER_BUSY ,
  DISCOVERER_MISSING_PLUGINS
}
 
enum  DiscovererSerializeFlags {
  DISCOVERER_SERIALIZE_BASIC = 0x0 ,
  DISCOVERER_SERIALIZE_CAPS = 1 << 0 ,
  DISCOVERER_SERIALIZE_TAGS = 1 << 1 ,
  DISCOVERER_SERIALIZE_MISC = 1 << 2 ,
  DISCOVERER_SERIALIZE_ALL = 0x7
}
 
enum  ElementFactoryListType {
  ELEMENT_FACTORY_TYPE_ANY ,
  ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS ,
  ELEMENT_FACTORY_TYPE_AUDIO_ENCODER ,
  ELEMENT_FACTORY_TYPE_DECODABLE ,
  ELEMENT_FACTORY_TYPE_DECODER ,
  ELEMENT_FACTORY_TYPE_DEMUXER ,
  ELEMENT_FACTORY_TYPE_DEPAYLOADER ,
  ELEMENT_FACTORY_TYPE_ENCODER ,
  ELEMENT_FACTORY_TYPE_FORMATTER ,
  ELEMENT_FACTORY_TYPE_MAX_ELEMENTS ,
  ELEMENT_FACTORY_TYPE_MEDIA_AUDIO ,
  ELEMENT_FACTORY_TYPE_MEDIA_IMAGE ,
  ELEMENT_FACTORY_TYPE_MEDIA_METADATA ,
  ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE ,
  ELEMENT_FACTORY_TYPE_MEDIA_VIDEO ,
  ELEMENT_FACTORY_TYPE_MEDIA_ANY ,
  ELEMENT_FACTORY_TYPE_MUXER ,
  ELEMENT_FACTORY_TYPE_PARSER ,
  ELEMENT_FACTORY_TYPE_PAYLOADER ,
  ELEMENT_FACTORY_TYPE_SINK ,
  ELEMENT_FACTORY_TYPE_SRC ,
  ELEMENT_FACTORY_TYPE_VIDEO_ENCODER
}
 
enum  ElementFlags {
  ELEMENT_FLAG_LOCKED_STATE = (GST_OBJECT_FLAG_LAST << 0) ,
  ELEMENT_FLAG_SINK = (GST_OBJECT_FLAG_LAST << 1) ,
  ELEMENT_FLAG_SOURCE = (GST_OBJECT_FLAG_LAST << 2) ,
  ELEMENT_FLAG_PROVIDE_CLOCK = (GST_OBJECT_FLAG_LAST << 3) ,
  ELEMENT_FLAG_REQUIRE_CLOCK = (GST_OBJECT_FLAG_LAST << 4) ,
  ELEMENT_FLAG_INDEXABLE = (GST_OBJECT_FLAG_LAST << 5) ,
  ELEMENT_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 10)
}
 
enum  StateChange {
  STATE_CHANGE_NULL_TO_READY = 0xA ,
  STATE_CHANGE_READY_TO_PAUSED = 0x13 ,
  STATE_CHANGE_PAUSED_TO_PLAYING = 0x1C ,
  STATE_CHANGE_PLAYING_TO_PAUSED = 0x23 ,
  STATE_CHANGE_PAUSED_TO_READY = 0x1A ,
  STATE_CHANGE_READY_TO_NULL = 0x11
}
 
enum  StateChangeReturn {
  STATE_CHANGE_FAILURE ,
  STATE_CHANGE_SUCCESS ,
  STATE_CHANGE_ASYNC ,
  STATE_CHANGE_NO_PREROLL
}
 
enum  State {
  STATE_VOID_PENDING ,
  STATE_NULL ,
  STATE_READY ,
  STATE_PAUSED ,
  STATE_PLAYING
}
 
enum  AutoplugSelectResult {
  AUTOPLUG_SELECT_TRY ,
  AUTOPLUG_SELECT_EXPOSE ,
  AUTOPLUG_SELECT_SKIP
}
 
enum  MultiHandleSinkClientStatus {
  CLIENT_STATUS_OK ,
  CLIENT_STATUS_CLOSED ,
  CLIENT_STATUS_REMOVED ,
  CLIENT_STATUS_SLOW ,
  CLIENT_STATUS_ERROR ,
  CLIENT_STATUS_DUPLICATE ,
  CLIENT_STATUS_FLUSHING
}
 
enum  MultiHandleSinkSyncMethod {
  SYNC_METHOD_LATEST ,
  SYNC_METHOD_NEXT_KEYFRAME ,
  SYNC_METHOD_LATEST_KEYFRAME ,
  SYNC_METHOD_BURST ,
  SYNC_METHOD_BURST_KEYFRAME ,
  SYNC_METHOD_BURST_WITH_KEYFRAME
}
 
enum  PlayFlags {
  PLAY_FLAG_VIDEO = (1 << 0) ,
  PLAY_FLAG_AUDIO = (1 << 1) ,
  PLAY_FLAG_TEXT = (1 << 2) ,
  PLAY_FLAG_VIS = (1 << 3) ,
  PLAY_FLAG_SOFT_VOLUME = (1 << 4) ,
  PLAY_FLAG_NATIVE_AUDIO = (1 << 5) ,
  PLAY_FLAG_NATIVE_VIDEO = (1 << 6) ,
  PLAY_FLAG_DOWNLOAD = (1 << 7) ,
  PLAY_FLAG_BUFFERING = (1 << 8) ,
  PLAY_FLAG_DEINTERLACE = (1 << 9) ,
  PLAY_FLAG_SOFT_COLORBALANCE = (1 << 10) ,
  PLAY_FLAG_FORCE_FILTERS = (1 << 11)
}
 
enum  EventType {
  EVENT_UNKNOWN = GST_EVENT_MAKE_TYPE (0, 0) ,
  EVENT_FLUSH_START = GST_EVENT_MAKE_TYPE (10, FLAG(BOTH)) ,
  EVENT_FLUSH_STOP = GST_EVENT_MAKE_TYPE (20, FLAG(BOTH) | FLAG(SERIALIZED)) ,
  EVENT_STREAM_START = GST_EVENT_MAKE_TYPE (40, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)) ,
  EVENT_CAPS = GST_EVENT_MAKE_TYPE (50, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)) ,
  EVENT_SEGMENT = GST_EVENT_MAKE_TYPE (70, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)) ,
  EVENT_TAG = GST_EVENT_MAKE_TYPE (80, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)) ,
  EVENT_BUFFERSIZE = GST_EVENT_MAKE_TYPE (90, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)) ,
  EVENT_SINK_MESSAGE = GST_EVENT_MAKE_TYPE (100, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)) ,
  EVENT_EOS = GST_EVENT_MAKE_TYPE (110, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)) ,
  EVENT_TOC = GST_EVENT_MAKE_TYPE (120, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)) ,
  EVENT_PROTECTION = GST_EVENT_MAKE_TYPE (130, FLAG (DOWNSTREAM) | FLAG (SERIALIZED) | FLAG (STICKY) | FLAG (STICKY_MULTI)) ,
  EVENT_SEGMENT_DONE = GST_EVENT_MAKE_TYPE (150, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)) ,
  EVENT_GAP = GST_EVENT_MAKE_TYPE (160, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)) ,
  EVENT_QOS = GST_EVENT_MAKE_TYPE (190, FLAG(UPSTREAM)) ,
  EVENT_SEEK = GST_EVENT_MAKE_TYPE (200, FLAG(UPSTREAM)) ,
  EVENT_NAVIGATION = GST_EVENT_MAKE_TYPE (210, FLAG(UPSTREAM)) ,
  EVENT_LATENCY = GST_EVENT_MAKE_TYPE (220, FLAG(UPSTREAM)) ,
  EVENT_STEP = GST_EVENT_MAKE_TYPE (230, FLAG(UPSTREAM)) ,
  EVENT_RECONFIGURE = GST_EVENT_MAKE_TYPE (240, FLAG(UPSTREAM)) ,
  EVENT_TOC_SELECT = GST_EVENT_MAKE_TYPE (250, FLAG(UPSTREAM)) ,
  EVENT_CUSTOM_UPSTREAM = GST_EVENT_MAKE_TYPE (270, FLAG(UPSTREAM)) ,
  EVENT_CUSTOM_DOWNSTREAM = GST_EVENT_MAKE_TYPE (280, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)) ,
  EVENT_CUSTOM_DOWNSTREAM_OOB = GST_EVENT_MAKE_TYPE (290, FLAG(DOWNSTREAM)) ,
  EVENT_CUSTOM_DOWNSTREAM_STICKY = GST_EVENT_MAKE_TYPE (300, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)) ,
  EVENT_CUSTOM_BOTH = GST_EVENT_MAKE_TYPE (310, FLAG(BOTH) | FLAG(SERIALIZED)) ,
  EVENT_CUSTOM_BOTH_OOB = GST_EVENT_MAKE_TYPE (320, FLAG(BOTH))
}
 
enum  EventTypeFlags {
  EVENT_TYPE_UPSTREAM = 1 << 0 ,
  EVENT_TYPE_DOWNSTREAM = 1 << 1 ,
  EVENT_TYPE_SERIALIZED = 1 << 2 ,
  EVENT_TYPE_STICKY = 1 << 3 ,
  EVENT_TYPE_STICKY_MULTI = 1 << 4
}
 
enum  QOSType {
  QOS_TYPE_OVERFLOW ,
  QOS_TYPE_UNDERFLOW ,
  QOS_TYPE_THROTTLE
}
 
enum  StreamFlags {
  STREAM_FLAG_NONE = 0x0 ,
  STREAM_FLAG_SPARSE = (1 << 0) ,
  STREAM_FLAG_SELECT = (1 << 1) ,
  STREAM_FLAG_UNSELECT = (1 << 2)
}
 
enum  Format {
  FORMAT_UNDEFINED ,
  FORMAT_DEFAULT ,
  FORMAT_BYTES ,
  FORMAT_TIME ,
  FORMAT_BUFFERS ,
  FORMAT_PERCENT
}
 
enum  IteratorItem {
  ITERATOR_ITEM_SKIP ,
  ITERATOR_ITEM_PASS ,
  ITERATOR_ITEM_END
}
 
enum  IteratorResult {
  ITERATOR_DONE ,
  ITERATOR_OK ,
  ITERATOR_RESYNC ,
  ITERATOR_ERROR
}
 
enum  MapFlags {
  MAP_READ = GST_LOCK_FLAG_READ ,
  MAP_WRITE = GST_LOCK_FLAG_WRITE ,
  MAP_FLAG_LAST = (1 << 16)
}
 
enum  MessageType {
  MESSAGE_UNKNOWN = 0x0 ,
  MESSAGE_EOS = (1 << 0) ,
  MESSAGE_ERROR = (1 << 1) ,
  MESSAGE_WARNING = (1 << 2) ,
  MESSAGE_INFO = (1 << 3) ,
  MESSAGE_TAG = (1 << 4) ,
  MESSAGE_BUFFERING = (1 << 5) ,
  MESSAGE_STATE_CHANGED = (1 << 6) ,
  MESSAGE_STATE_DIRTY = (1 << 7) ,
  MESSAGE_STEP_DONE = (1 << 8) ,
  MESSAGE_CLOCK_PROVIDE = (1 << 9) ,
  MESSAGE_CLOCK_LOST = (1 << 10) ,
  MESSAGE_NEW_CLOCK = (1 << 11) ,
  MESSAGE_STRUCTURE_CHANGE = (1 << 12) ,
  MESSAGE_STREAM_STATUS = (1 << 13) ,
  MESSAGE_APPLICATION = (1 << 14) ,
  MESSAGE_ELEMENT = (1 << 15) ,
  MESSAGE_SEGMENT_START = (1 << 16) ,
  MESSAGE_SEGMENT_DONE = (1 << 17) ,
  MESSAGE_DURATION_CHANGED = (1 << 18) ,
  MESSAGE_LATENCY = (1 << 19) ,
  MESSAGE_ASYNC_START = (1 << 20) ,
  MESSAGE_ASYNC_DONE = (1 << 21) ,
  MESSAGE_REQUEST_STATE = (1 << 22) ,
  MESSAGE_STEP_START = (1 << 23) ,
  MESSAGE_QOS = (1 << 24) ,
  MESSAGE_PROGRESS = (1 << 25) ,
  MESSAGE_TOC = (1 << 26) ,
  MESSAGE_RESET_TIME = (1 << 27) ,
  MESSAGE_STREAM_START = (1 << 28) ,
  MESSAGE_NEED_CONTEXT = (1 << 29) ,
  MESSAGE_HAVE_CONTEXT = (1 << 30) ,
  MESSAGE_EXTENDED = (1 << 31)
}
 
enum  ProgressType {
  PROGRESS_TYPE_START ,
  PROGRESS_TYPE_CONTINUE ,
  PROGRESS_TYPE_COMPLETE ,
  PROGRESS_TYPE_CANCELED ,
  PROGRESS_TYPE_ERROR
}
 
enum  StructureChangeType {
  STRUCTURE_CHANGE_TYPE_PAD_LINK ,
  STRUCTURE_CHANGE_TYPE_PAD_UNLINK
}
 
enum  StreamStatusType {
  STREAM_STATUS_TYPE_CREATE = 0 ,
  STREAM_STATUS_TYPE_ENTER = 1 ,
  STREAM_STATUS_TYPE_LEAVE = 2 ,
  STREAM_STATUS_TYPE_DESTROY = 3 ,
  STREAM_STATUS_TYPE_START = 8 ,
  STREAM_STATUS_TYPE_PAUSE = 9 ,
  STREAM_STATUS_TYPE_STOP = 10
}
 
enum  MemoryFlags {
  MEMORY_FLAG_READONLY = GST_MINI_OBJECT_FLAG_LOCK_READONLY ,
  MEMORY_FLAG_NO_SHARE = (GST_MINI_OBJECT_FLAG_LAST << 0) ,
  MEMORY_FLAG_ZERO_PREFIXED = (GST_MINI_OBJECT_FLAG_LAST << 1) ,
  MEMORY_FLAG_ZERO_PADDED = (GST_MINI_OBJECT_FLAG_LAST << 2) ,
  MEMORY_FLAG_PHYSICALLY_CONTIGUOUS = (GST_MINI_OBJECT_FLAG_LAST << 3) ,
  MEMORY_FLAG_NOT_MAPPABLE = (GST_MINI_OBJECT_FLAG_LAST << 4) ,
  MEMORY_FLAG_LAST = (GST_MINI_OBJECT_FLAG_LAST << 16)
}
 
enum  MiniObjectFlags {
  MINI_OBJECT_FLAG_LOCKABLE = (1 << 0) ,
  MINI_OBJECT_FLAG_LOCK_READONLY = (1 << 1) ,
  MINI_OBJECT_FLAG_LAST = (1 << 4)
}
 
enum  LockFlags {
  LOCK_FLAG_READ = (1 << 0) ,
  LOCK_FLAG_WRITE = (1 << 1) ,
  LOCK_FLAG_EXCLUSIVE = (1 << 2) ,
  LOCK_FLAG_LAST = (1 << 8)
}
 
enum  NavigationCommand {
  NAVIGATION_COMMAND_INVALID = 0 ,
  NAVIGATION_COMMAND_MENU1 = 1 ,
  NAVIGATION_COMMAND_MENU2 = 2 ,
  NAVIGATION_COMMAND_MENU3 = 3 ,
  NAVIGATION_COMMAND_MENU4 = 4 ,
  NAVIGATION_COMMAND_MENU5 = 5 ,
  NAVIGATION_COMMAND_MENU6 = 6 ,
  NAVIGATION_COMMAND_MENU7 = 7 ,
  NAVIGATION_COMMAND_LEFT = 20 ,
  NAVIGATION_COMMAND_RIGHT = 21 ,
  NAVIGATION_COMMAND_UP = 22 ,
  NAVIGATION_COMMAND_DOWN = 23 ,
  NAVIGATION_COMMAND_ACTIVATE = 24 ,
  NAVIGATION_COMMAND_PREV_ANGLE = 30 ,
  NAVIGATION_COMMAND_NEXT_ANGLE = 31
}
 
enum  NavigationEventType {
  NAVIGATION_EVENT_INVALID ,
  NAVIGATION_EVENT_KEY_PRESS ,
  NAVIGATION_EVENT_KEY_RELEASE ,
  NAVIGATION_EVENT_MOUSE_BUTTON_PRESS ,
  NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE ,
  NAVIGATION_EVENT_MOUSE_MOVE ,
  NAVIGATION_EVENT_COMMAND
}
 
enum  NavigationMessageType {
  NAVIGATION_MESSAGE_INVALID ,
  NAVIGATION_MESSAGE_MOUSE_OVER ,
  NAVIGATION_MESSAGE_COMMANDS_CHANGED ,
  NAVIGATION_MESSAGE_ANGLES_CHANGED ,
  NAVIGATION_MESSAGE_EVENT
}
 
enum  NavigationQueryType {
  NAVIGATION_QUERY_INVALID ,
  NAVIGATION_QUERY_COMMANDS ,
  NAVIGATION_QUERY_ANGLES
}
 
enum  ObjectFlags { OBJECT_FLAG_LAST = (1<<4) }
 
enum  PadMode {
  PAD_MODE_NONE ,
  PAD_MODE_PUSH ,
  PAD_MODE_PULL
}
 
enum  FlowReturn {
  FLOW_CUSTOM_SUCCESS_2 = 102 ,
  FLOW_CUSTOM_SUCCESS_1 = 101 ,
  FLOW_CUSTOM_SUCCESS = 100 ,
  FLOW_OK = 0 ,
  FLOW_NOT_LINKED = -1 ,
  FLOW_FLUSHING = -2 ,
  FLOW_EOS = -3 ,
  FLOW_NOT_NEGOTIATED = -4 ,
  FLOW_ERROR = -5 ,
  FLOW_NOT_SUPPORTED = -6 ,
  FLOW_CUSTOM_ERROR = -100 ,
  FLOW_CUSTOM_ERROR_1 = -101 ,
  FLOW_CUSTOM_ERROR_2 = -102
}
 
enum  PadDirection {
  PAD_UNKNOWN ,
  PAD_SRC ,
  PAD_SINK
}
 
enum  PadFlags {
  PAD_FLAG_BLOCKED = 0x10 ,
  PAD_FLAG_FLUSHING = 0x20 ,
  PAD_FLAG_EOS = 0x40 ,
  PAD_FLAG_BLOCKING = 0x80 ,
  PAD_FLAG_NEED_PARENT = 0x100 ,
  PAD_FLAG_NEED_RECONFIGURE = 0x200 ,
  PAD_FLAG_PENDING_EVENTS = 0x400 ,
  PAD_FLAG_FIXED_CAPS = 0x800 ,
  PAD_FLAG_PROXY_CAPS = 0x1000 ,
  PAD_FLAG_PROXY_ALLOCATION = 0x2000 ,
  PAD_FLAG_PROXY_SCHEDULING = 0x4000 ,
  PAD_FLAG_ACCEPT_INTERSECT = 0x8000 ,
  PAD_FLAG_ACCEPT_TEMPLATE = 0x10000 ,
  PAD_FLAG_LAST = 0x100000
}
 
enum  PadLinkReturn {
  PAD_LINK_OK = 0 ,
  PAD_LINK_WRONG_HIERARCHY = -1 ,
  PAD_LINK_WAS_LINKED = -2 ,
  PAD_LINK_WRONG_DIRECTION = -3 ,
  PAD_LINK_NOFORMAT = -4 ,
  PAD_LINK_NOSCHED = -5 ,
  PAD_LINK_REFUSED = -6
}
 
enum  PadLinkCheck {
  PAD_LINK_CHECK_NOTHING = 0x0 ,
  PAD_LINK_CHECK_HIERARCHY = 1 << 0 ,
  PAD_LINK_CHECK_TEMPLATE_CAPS = 1 << 1 ,
  PAD_LINK_CHECK_CAPS = 1 << 2 ,
  PAD_LINK_CHECK_DEFAULT = 0x5
}
 
enum  PadProbeType {
  PAD_PROBE_TYPE_INVALID = 0x0 ,
  PAD_PROBE_TYPE_IDLE = (1 << 0) ,
  PAD_PROBE_TYPE_BLOCK = (1 << 1) ,
  PAD_PROBE_TYPE_BUFFER = (1 << 4) ,
  PAD_PROBE_TYPE_BUFFER_LIST = (1 << 5) ,
  PAD_PROBE_TYPE_EVENT_DOWNSTREAM = (1 << 6) ,
  PAD_PROBE_TYPE_EVENT_UPSTREAM = (1 << 7) ,
  PAD_PROBE_TYPE_EVENT_FLUSH = (1 << 8) ,
  PAD_PROBE_TYPE_QUERY_DOWNSTREAM = (1 << 9) ,
  PAD_PROBE_TYPE_QUERY_UPSTREAM = (1 << 10) ,
  PAD_PROBE_TYPE_PUSH = (1 << 12) ,
  PAD_PROBE_TYPE_PULL = (1 << 13) ,
  PAD_PROBE_TYPE_BLOCKING = 0x3 ,
  PAD_PROBE_TYPE_DATA_DOWNSTREAM = 0x70 ,
  PAD_PROBE_TYPE_DATA_UPSTREAM = 0x80 ,
  PAD_PROBE_TYPE_DATA_BOTH = 0xF0 ,
  PAD_PROBE_TYPE_BLOCK_DOWNSTREAM = 0x72 ,
  PAD_PROBE_TYPE_BLOCK_UPSTREAM = 0x82 ,
  PAD_PROBE_TYPE_EVENT_BOTH = 0xC0 ,
  PAD_PROBE_TYPE_QUERY_BOTH = 0x600 ,
  PAD_PROBE_TYPE_ALL_BOTH = 0x6F0 ,
  PAD_PROBE_TYPE_SCHEDULING = 0x3000
}
 
enum  PadProbeReturn {
  PAD_PROBE_DROP ,
  PAD_PROBE_OK ,
  PAD_PROBE_REMOVE ,
  PAD_PROBE_PASS ,
  PAD_PROBE_HANDLED
}
 
enum  PadTemplateFlags { PAD_TEMPLATE_FLAG_LAST = 0x100 }
 
enum  PadPresence {
  PAD_ALWAYS ,
  PAD_SOMETIMES ,
  PAD_REQUEST
}
 
enum  Rank {
  RANK_NONE = 0 ,
  RANK_MARGINAL = 64 ,
  RANK_SECONDARY = 128 ,
  RANK_PRIMARY = 256
}
 
enum  PluginDependencyFlags {
  PLUGIN_DEPENDENCY_FLAG_NONE = 0x0 ,
  PLUGIN_DEPENDENCY_FLAG_RECURSE = (1 << 0) ,
  PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY = (1 << 1) ,
  PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX = (1 << 2) ,
  PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX = (1 << 3)
}
 
enum  PluginFlags {
  PLUGIN_FLAG_CACHED = 0x10 ,
  PLUGIN_FLAG_BLACKLISTED = 0x20
}
 
enum  BufferingMode {
  BUFFERING_STREAM ,
  BUFFERING_DOWNLOAD ,
  BUFFERING_TIMESHIFT ,
  BUFFERING_LIVE
}
 
enum  QueryType {
  QUERY_UNKNOWN = GST_QUERY_MAKE_TYPE (0, 0) ,
  QUERY_POSITION = GST_QUERY_MAKE_TYPE (10, FLAG(BOTH)) ,
  QUERY_DURATION = GST_QUERY_MAKE_TYPE (20, FLAG(BOTH)) ,
  QUERY_LATENCY = GST_QUERY_MAKE_TYPE (30, FLAG(BOTH)) ,
  QUERY_JITTER = GST_QUERY_MAKE_TYPE (40, FLAG(BOTH)) ,
  QUERY_RATE = GST_QUERY_MAKE_TYPE (50, FLAG(BOTH)) ,
  QUERY_SEEKING = GST_QUERY_MAKE_TYPE (60, FLAG(BOTH)) ,
  QUERY_SEGMENT = GST_QUERY_MAKE_TYPE (70, FLAG(BOTH)) ,
  QUERY_CONVERT = GST_QUERY_MAKE_TYPE (80, FLAG(BOTH)) ,
  QUERY_FORMATS = GST_QUERY_MAKE_TYPE (90, FLAG(BOTH)) ,
  QUERY_BUFFERING = GST_QUERY_MAKE_TYPE (110, FLAG(BOTH)) ,
  QUERY_CUSTOM = GST_QUERY_MAKE_TYPE (120, FLAG(BOTH)) ,
  QUERY_URI = GST_QUERY_MAKE_TYPE (130, FLAG(BOTH)) ,
  QUERY_ALLOCATION = GST_QUERY_MAKE_TYPE (140, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)) ,
  QUERY_SCHEDULING = GST_QUERY_MAKE_TYPE (150, FLAG(UPSTREAM)) ,
  QUERY_ACCEPT_CAPS = GST_QUERY_MAKE_TYPE (160, FLAG(BOTH)) ,
  QUERY_CAPS = GST_QUERY_MAKE_TYPE (170, FLAG(BOTH)) ,
  QUERY_DRAIN = GST_QUERY_MAKE_TYPE (180, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)) ,
  QUERY_CONTEXT = GST_QUERY_MAKE_TYPE (190, FLAG(BOTH))
}
 
enum  QueryTypeFlags {
  QUERY_TYPE_UPSTREAM = 1 << 0 ,
  QUERY_TYPE_DOWNSTREAM = 1 << 1 ,
  QUERY_TYPE_SERIALIZED = 1 << 2
}
 
enum  SchedulingFlags {
  SCHEDULING_FLAG_SEEKABLE = (1 << 0) ,
  SCHEDULING_FLAG_SEQUENTIAL = (1 << 1) ,
  SCHEDULING_FLAG_BANDWIDTH_LIMITED = (1 << 2)
}
 
enum  SeekFlags {
  SEEK_FLAG_NONE = 0x0 ,
  SEEK_FLAG_FLUSH = (1 << 0) ,
  SEEK_FLAG_ACCURATE = (1 << 1) ,
  SEEK_FLAG_KEY_UNIT = (1 << 2) ,
  SEEK_FLAG_SEGMENT = (1 << 3) ,
  SEEK_FLAG_TRICKMODE = (1 << 4) ,
  SEEK_FLAG_SKIP = (1 << 4) ,
  SEEK_FLAG_SNAP_BEFORE = (1 << 5) ,
  SEEK_FLAG_SNAP_AFTER = (1 << 6) ,
  SEEK_FLAG_SNAP_NEAREST = 0x60 ,
  SEEK_FLAG_TRICKMODE_KEY_UNITS = (1 << 7) ,
  SEEK_FLAG_TRICKMODE_NO_AUDIO = (1 << 8)
}
 
enum  SeekType {
  SEEK_TYPE_NONE ,
  SEEK_TYPE_SET ,
  SEEK_TYPE_END
}
 
enum  StreamVolumeFormat {
  STREAM_VOLUME_FORMAT_LINEAR ,
  STREAM_VOLUME_FORMAT_CUBIC ,
  STREAM_VOLUME_FORMAT_DB
}
 
enum  TagMergeMode {
  TAG_MERGE_UNDEFINED ,
  TAG_MERGE_REPLACE_ALL ,
  TAG_MERGE_REPLACE ,
  TAG_MERGE_APPEND ,
  TAG_MERGE_PREPEND ,
  TAG_MERGE_KEEP ,
  TAG_MERGE_KEEP_ALL ,
  TAG_MERGE_COUNT
}
 
enum  TagFlag {
  TAG_FLAG_UNDEFINED ,
  TAG_FLAG_META ,
  TAG_FLAG_ENCODED ,
  TAG_FLAG_DECODED ,
  TAG_FLAG_COUNT
}
 
enum  Tag {
  TAG_TITLE ,
  TAG_TITLE_SORTNAME ,
  TAG_ARTIST ,
  TAG_ARTIST_SORTNAME ,
  TAG_ALBUM ,
  TAG_ALBUM_SORTNAME ,
  TAG_DATE ,
  TAG_GENRE ,
  TAG_COMMENT ,
  TAG_EXTENDED_COMMENT ,
  TAG_TRACK_NUMBER ,
  TAG_TRACK_COUNT ,
  TAG_ALBUM_VOLUME_NUMBER ,
  TAG_ALBUM_VOLUME_COUNT ,
  TAG_LOCATION ,
  TAG_DESCRIPTION ,
  TAG_VERSION ,
  TAG_ISRC ,
  TAG_ORGANIZATION ,
  TAG_COPYRIGHT ,
  TAG_COPYRIGHT_URI ,
  TAG_COMPOSER ,
  TAG_CONTACT ,
  TAG_LICENSE ,
  TAG_LICENSE_URI ,
  TAG_PERFORMER ,
  TAG_DURATION ,
  TAG_CODEC ,
  TAG_VIDEO_CODEC ,
  TAG_AUDIO_CODEC ,
  TAG_BITRATE ,
  TAG_NOMINAL_BITRATE ,
  TAG_MINIMUM_BITRATE ,
  TAG_MAXIMUM_BITRATE ,
  TAG_SERIAL ,
  TAG_ENCODER ,
  TAG_ENCODER_VERSION ,
  TAG_TRACK_GAIN ,
  TAG_TRACK_PEAK ,
  TAG_ALBUM_GAIN ,
  TAG_ALBUM_PEAK ,
  TAG_REFERENCE_LEVEL ,
  TAG_LANGUAGE_CODE ,
  TAG_IMAGE ,
  TAG_PREVIEW_IMAGE ,
  TAG_ATTACHMENT ,
  TAG_BEATS_PER_MINUTE ,
  TAG_KEYWORDS ,
  TAG_GEO_LOCATION_NAME ,
  TAG_GEO_LOCATION_LATITUDE ,
  TAG_GEO_LOCATION_LONGITUDE ,
  TAG_GEO_LOCATION_ELEVATION
}
 Identifiers for commonly-used tags. More...
 
enum  TaskState {
  TASK_STARTED ,
  TASK_STOPPED ,
  TASK_PAUSED
}
 
enum  TocScope {
  TOC_SCOPE_GLOBAL = 1 ,
  TOC_SCOPE_CURRENT
}
 
enum  TocEntryType {
  TOC_ENTRY_TYPE_ANGLE = -3 ,
  TOC_ENTRY_TYPE_VERSION ,
  TOC_ENTRY_TYPE_EDITION ,
  TOC_ENTRY_TYPE_INVALID ,
  TOC_ENTRY_TYPE_TITLE ,
  TOC_ENTRY_TYPE_TRACK ,
  TOC_ENTRY_TYPE_CHAPTER
}
 
enum  TocLoopType {
  TOC_LOOP_NONE ,
  TOC_LOOP_FORWARD ,
  TOC_LOOP_REVERSE ,
  TOC_LOOP_PING_PONG
}
 
enum  TypeFindProbability {
  TYPE_FIND_NONE = 0 ,
  TYPE_FIND_MINIMUM = 1 ,
  TYPE_FIND_POSSIBLE = 50 ,
  TYPE_FIND_LIKELY = 80 ,
  TYPE_FIND_NEARLY_CERTAIN = 99 ,
  TYPE_FIND_MAXIMUM = 100
}
 
enum  URIType {
  URI_UNKNOWN ,
  URI_SINK ,
  URI_SRC
}
 
enum  URIError {
  URI_ERROR_UNSUPPORTED_PROTOCOL ,
  URI_ERROR_BAD_URI ,
  URI_ERROR_BAD_STATE ,
  URI_ERROR_BAD_REFERENCE
}
 
enum  VideoChromaSite {
  VIDEO_CHROMA_SITE_UNKNOWN = 0x0 ,
  VIDEO_CHROMA_SITE_NONE = (1 << 0) ,
  VIDEO_CHROMA_SITE_H_COSITED = (1 << 1) ,
  VIDEO_CHROMA_SITE_V_COSITED = (1 << 2) ,
  VIDEO_CHROMA_SITE_ALT_LINE = (1 << 3) ,
  VIDEO_CHROMA_SITE_COSITED = 0x6 ,
  VIDEO_CHROMA_SITE_JPEG = 0x1 ,
  VIDEO_CHROMA_SITE_MPEG2 = 0x2 ,
  VIDEO_CHROMA_SITE_DV = 0xE
}
 
enum  VideoChromaMethod {
  VIDEO_CHROMA_METHOD_NEAREST ,
  VIDEO_CHROMA_METHOD_LINEAR
}
 
enum  VideoChromaFlags {
  VIDEO_CHROMA_FLAG_NONE = 0x0 ,
  VIDEO_CHROMA_FLAG_INTERLACED = (1 << 0)
}
 
enum  VideoFormat {
  VIDEO_FORMAT_UNKNOWN ,
  VIDEO_FORMAT_ENCODED ,
  VIDEO_FORMAT_I420 ,
  VIDEO_FORMAT_YV12 ,
  VIDEO_FORMAT_YUY2 ,
  VIDEO_FORMAT_UYVY ,
  VIDEO_FORMAT_AYUV ,
  VIDEO_FORMAT_RGBx ,
  VIDEO_FORMAT_BGRx ,
  VIDEO_FORMAT_xRGB ,
  VIDEO_FORMAT_xBGR ,
  VIDEO_FORMAT_RGBA ,
  VIDEO_FORMAT_BGRA ,
  VIDEO_FORMAT_ARGB ,
  VIDEO_FORMAT_ABGR ,
  VIDEO_FORMAT_RGB ,
  VIDEO_FORMAT_BGR ,
  VIDEO_FORMAT_Y41B ,
  VIDEO_FORMAT_Y42B ,
  VIDEO_FORMAT_YVYU ,
  VIDEO_FORMAT_Y444 ,
  VIDEO_FORMAT_v210 ,
  VIDEO_FORMAT_v216 ,
  VIDEO_FORMAT_NV12 ,
  VIDEO_FORMAT_NV21 ,
  VIDEO_FORMAT_GRAY8 ,
  VIDEO_FORMAT_GRAY16_BE ,
  VIDEO_FORMAT_GRAY16_LE ,
  VIDEO_FORMAT_v308 ,
  VIDEO_FORMAT_RGB16 ,
  VIDEO_FORMAT_BGR16 ,
  VIDEO_FORMAT_RGB15 ,
  VIDEO_FORMAT_BGR15 ,
  VIDEO_FORMAT_UYVP ,
  VIDEO_FORMAT_A420 ,
  VIDEO_FORMAT_RGB8P ,
  VIDEO_FORMAT_YUV9 ,
  VIDEO_FORMAT_YVU9 ,
  VIDEO_FORMAT_IYU1 ,
  VIDEO_FORMAT_ARGB64 ,
  VIDEO_FORMAT_AYUV64 ,
  VIDEO_FORMAT_r210 ,
  VIDEO_FORMAT_I420_10BE ,
  VIDEO_FORMAT_I420_10LE ,
  VIDEO_FORMAT_I422_10BE ,
  VIDEO_FORMAT_I422_10LE ,
  VIDEO_FORMAT_Y444_10BE ,
  VIDEO_FORMAT_Y444_10LE ,
  VIDEO_FORMAT_GBR ,
  VIDEO_FORMAT_GBR_10BE ,
  VIDEO_FORMAT_GBR_10LE ,
  VIDEO_FORMAT_NV16 ,
  VIDEO_FORMAT_NV24 ,
  VIDEO_FORMAT_NV12_64Z32 ,
  VIDEO_FORMAT_A420_10BE ,
  VIDEO_FORMAT_A420_10LE ,
  VIDEO_FORMAT_A422_10BE ,
  VIDEO_FORMAT_A422_10LE ,
  VIDEO_FORMAT_A444_10BE ,
  VIDEO_FORMAT_A444_10LE ,
  VIDEO_FORMAT_NV61
}
 
enum  VideoFormatFlags {
  VIDEO_FORMAT_FLAG_YUV = (1 << 0) ,
  VIDEO_FORMAT_FLAG_RGB = (1 << 1) ,
  VIDEO_FORMAT_FLAG_GRAY = (1 << 2) ,
  VIDEO_FORMAT_FLAG_ALPHA = (1 << 3) ,
  VIDEO_FORMAT_FLAG_LE = (1 << 4) ,
  VIDEO_FORMAT_FLAG_PALETTE = (1 << 5) ,
  VIDEO_FORMAT_FLAG_COMPLEX = (1 << 6) ,
  VIDEO_FORMAT_FLAG_UNPACK = (1 << 7) ,
  VIDEO_FORMAT_FLAG_TILED = (1 << 8)
}
 
enum  VideoPackFlags {
  VIDEO_PACK_FLAG_NONE = 0x0 ,
  VIDEO_PACK_FLAG_TRUNCATE_RANGE = (1 << 0) ,
  VIDEO_PACK_FLAG_INTERLACED = (1 << 1)
}
 
enum  VideoFrameFlags {
  VIDEO_FRAME_FLAG_NONE = 0x0 ,
  VIDEO_FRAME_FLAG_INTERLACED = (1 << 0) ,
  VIDEO_FRAME_FLAG_TFF = (1 << 1) ,
  VIDEO_FRAME_FLAG_RFF = (1 << 2) ,
  VIDEO_FRAME_FLAG_ONEFIELD = (1 << 3) ,
  VIDEO_FRAME_FLAG_MULTIPLE_VIEW = (1 << 4) ,
  VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE = (1 << 5)
}
 
enum  VideoBufferFlags {
  VIDEO_BUFFER_FLAG_INTERLACED = (GST_BUFFER_FLAG_LAST << 0) ,
  VIDEO_BUFFER_FLAG_TFF = (GST_BUFFER_FLAG_LAST << 1) ,
  VIDEO_BUFFER_FLAG_RFF = (GST_BUFFER_FLAG_LAST << 2) ,
  VIDEO_BUFFER_FLAG_ONEFIELD = (GST_BUFFER_FLAG_LAST << 3) ,
  VIDEO_BUFFER_FLAG_MULTIPLE_VIEW = (GST_BUFFER_FLAG_LAST << 4) ,
  VIDEO_BUFFER_FLAG_FIRST_IN_BUNDLE = (GST_BUFFER_FLAG_LAST << 5) ,
  VIDEO_BUFFER_FLAG_LAST = (GST_BUFFER_FLAG_LAST << 8)
}
 
enum  VideoFrameMapFlags {
  VIDEO_FRAME_MAP_FLAG_NO_REF = (GST_MAP_FLAG_LAST << 0) ,
  VIDEO_FRAME_MAP_FLAG_LAST = (GST_MAP_FLAG_LAST << 8)
}
 
enum  VideoInterlaceMode {
  VIDEO_INTERLACE_MODE_PROGRESSIVE ,
  VIDEO_INTERLACE_MODE_INTERLEAVED ,
  VIDEO_INTERLACE_MODE_MIXED ,
  VIDEO_INTERLACE_MODE_FIELDS
}
 
enum  VideoMultiviewMode {
  VIDEO_MULTIVIEW_MODE_NONE = -1 ,
  VIDEO_MULTIVIEW_MODE_MONO = 0 ,
  VIDEO_MULTIVIEW_MODE_LEFT = 1 ,
  VIDEO_MULTIVIEW_MODE_RIGHT = 2 ,
  VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE = 3 ,
  VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX = 4 ,
  VIDEO_MULTIVIEW_MODE_COLUMN_INTERLEAVED = 5 ,
  VIDEO_MULTIVIEW_MODE_ROW_INTERLEAVED = 6 ,
  VIDEO_MULTIVIEW_MODE_TOP_BOTTOM = 7 ,
  VIDEO_MULTIVIEW_MODE_CHECKERBOARD = 8 ,
  VIDEO_MULTIVIEW_MODE_FRAME_BY_FRAME = 32 ,
  VIDEO_MULTIVIEW_MODE_MULTIVIEW_FRAME_BY_FRAME = 33 ,
  VIDEO_MULTIVIEW_MODE_SEPARATED = 34
}
 
enum  VideoMultiviewFramePacking {
  VIDEO_MULTIVIEW_FRAME_PACKING_NONE = -1 ,
  VIDEO_MULTIVIEW_FRAME_PACKING_MONO ,
  VIDEO_MULTIVIEW_FRAME_PACKING_LEFT ,
  VIDEO_MULTIVIEW_FRAME_PACKING_RIGHT ,
  VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE ,
  VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE_QUINCUNX ,
  VIDEO_MULTIVIEW_FRAME_PACKING_COLUMN_INTERLEAVED ,
  VIDEO_MULTIVIEW_FRAME_PACKING_ROW_INTERLEAVED ,
  VIDEO_MULTIVIEW_FRAME_PACKING_TOP_BOTTOM ,
  VIDEO_MULTIVIEW_FRAME_PACKING_CHECKERBOARD
}
 
enum  VideoMultiviewFlags {
  VIDEO_MULTIVIEW_FLAGS_NONE = 0x0 ,
  VIDEO_MULTIVIEW_FLAGS_RIGHT_VIEW_FIRST = (1 << 0) ,
  VIDEO_MULTIVIEW_FLAGS_LEFT_FLIPPED = (1 << 1) ,
  VIDEO_MULTIVIEW_FLAGS_LEFT_FLOPPED = (1 << 2) ,
  VIDEO_MULTIVIEW_FLAGS_RIGHT_FLIPPED = (1 << 3) ,
  VIDEO_MULTIVIEW_FLAGS_RIGHT_FLOPPED = (1 << 4) ,
  VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT = (1 << 14) ,
  VIDEO_MULTIVIEW_FLAGS_MIXED_MONO = (1 << 15)
}
 
enum  VideoFlags {
  VIDEO_FLAG_NONE = 0x0 ,
  VIDEO_FLAG_VARIABLE_FPS = (1 << 0) ,
  VIDEO_FLAG_PREMULTIPLIED_ALPHA = (1 << 1)
}
 

Functions

AudioFormatFlags operator| (AudioFormatFlags lhs, AudioFormatFlags rhs)
 
AudioFormatFlags operator& (AudioFormatFlags lhs, AudioFormatFlags rhs)
 
AudioFormatFlags operator^ (AudioFormatFlags lhs, AudioFormatFlags rhs)
 
AudioFormatFlags operator~ (AudioFormatFlags flags)
 
AudioFormatFlagsoperator|= (AudioFormatFlags& lhs, AudioFormatFlags rhs)
 
AudioFormatFlagsoperator&= (AudioFormatFlags& lhs, AudioFormatFlags rhs)
 
AudioFormatFlagsoperator^= (AudioFormatFlags& lhs, AudioFormatFlags rhs)
 
AudioPackFlags operator| (AudioPackFlags lhs, AudioPackFlags rhs)
 
AudioPackFlags operator& (AudioPackFlags lhs, AudioPackFlags rhs)
 
AudioPackFlags operator^ (AudioPackFlags lhs, AudioPackFlags rhs)
 
AudioPackFlags operator~ (AudioPackFlags flags)
 
AudioPackFlagsoperator|= (AudioPackFlags& lhs, AudioPackFlags rhs)
 
AudioPackFlagsoperator&= (AudioPackFlags& lhs, AudioPackFlags rhs)
 
AudioPackFlagsoperator^= (AudioPackFlags& lhs, AudioPackFlags rhs)
 
AudioFlags operator| (AudioFlags lhs, AudioFlags rhs)
 
AudioFlags operator& (AudioFlags lhs, AudioFlags rhs)
 
AudioFlags operator^ (AudioFlags lhs, AudioFlags rhs)
 
AudioFlags operator~ (AudioFlags flags)
 
AudioFlagsoperator|= (AudioFlags& lhs, AudioFlags rhs)
 
AudioFlagsoperator&= (AudioFlags& lhs, AudioFlags rhs)
 
AudioFlagsoperator^= (AudioFlags& lhs, AudioFlags rhs)
 
BaseSrcFlags operator| (BaseSrcFlags lhs, BaseSrcFlags rhs)
 
BaseSrcFlags operator& (BaseSrcFlags lhs, BaseSrcFlags rhs)
 
BaseSrcFlags operator^ (BaseSrcFlags lhs, BaseSrcFlags rhs)
 
BaseSrcFlags operator~ (BaseSrcFlags flags)
 
BaseSrcFlagsoperator|= (BaseSrcFlags& lhs, BaseSrcFlags rhs)
 
BaseSrcFlagsoperator&= (BaseSrcFlags& lhs, BaseSrcFlags rhs)
 
BaseSrcFlagsoperator^= (BaseSrcFlags& lhs, BaseSrcFlags rhs)
 
BinFlags operator| (BinFlags lhs, BinFlags rhs)
 
BinFlags operator& (BinFlags lhs, BinFlags rhs)
 
BinFlags operator^ (BinFlags lhs, BinFlags rhs)
 
BinFlags operator~ (BinFlags flags)
 
BinFlagsoperator|= (BinFlags& lhs, BinFlags rhs)
 
BinFlagsoperator&= (BinFlags& lhs, BinFlags rhs)
 
BinFlagsoperator^= (BinFlags& lhs, BinFlags rhs)
 
BufferFlags operator| (BufferFlags lhs, BufferFlags rhs)
 
BufferFlags operator& (BufferFlags lhs, BufferFlags rhs)
 
BufferFlags operator^ (BufferFlags lhs, BufferFlags rhs)
 
BufferFlags operator~ (BufferFlags flags)
 
BufferFlagsoperator|= (BufferFlags& lhs, BufferFlags rhs)
 
BufferFlagsoperator&= (BufferFlags& lhs, BufferFlags rhs)
 
BufferFlagsoperator^= (BufferFlags& lhs, BufferFlags rhs)
 
BufferCopyFlags operator| (BufferCopyFlags lhs, BufferCopyFlags rhs)
 
BufferCopyFlags operator& (BufferCopyFlags lhs, BufferCopyFlags rhs)
 
BufferCopyFlags operator^ (BufferCopyFlags lhs, BufferCopyFlags rhs)
 
BufferCopyFlags operator~ (BufferCopyFlags flags)
 
BufferCopyFlagsoperator|= (BufferCopyFlags& lhs, BufferCopyFlags rhs)
 
BufferCopyFlagsoperator&= (BufferCopyFlags& lhs, BufferCopyFlags rhs)
 
BufferCopyFlagsoperator^= (BufferCopyFlags& lhs, BufferCopyFlags rhs)
 
BusFlags operator| (BusFlags lhs, BusFlags rhs)
 
BusFlags operator& (BusFlags lhs, BusFlags rhs)
 
BusFlags operator^ (BusFlags lhs, BusFlags rhs)
 
BusFlags operator~ (BusFlags flags)
 
BusFlagsoperator|= (BusFlags& lhs, BusFlags rhs)
 
BusFlagsoperator&= (BusFlags& lhs, BusFlags rhs)
 
BusFlagsoperator^= (BusFlags& lhs, BusFlags rhs)
 
CapsFlags operator| (CapsFlags lhs, CapsFlags rhs)
 
CapsFlags operator& (CapsFlags lhs, CapsFlags rhs)
 
CapsFlags operator^ (CapsFlags lhs, CapsFlags rhs)
 
CapsFlags operator~ (CapsFlags flags)
 
CapsFlagsoperator|= (CapsFlags& lhs, CapsFlags rhs)
 
CapsFlagsoperator&= (CapsFlags& lhs, CapsFlags rhs)
 
CapsFlagsoperator^= (CapsFlags& lhs, CapsFlags rhs)
 
ClockFlags operator| (ClockFlags lhs, ClockFlags rhs)
 
ClockFlags operator& (ClockFlags lhs, ClockFlags rhs)
 
ClockFlags operator^ (ClockFlags lhs, ClockFlags rhs)
 
ClockFlags operator~ (ClockFlags flags)
 
ClockFlagsoperator|= (ClockFlags& lhs, ClockFlags rhs)
 
ClockFlagsoperator&= (ClockFlags& lhs, ClockFlags rhs)
 
ClockFlagsoperator^= (ClockFlags& lhs, ClockFlags rhs)
 
guint get_hours (Gst::ClockTime time)
 Gets the hour component of Gst::ClockTime.
 
guint get_minutes (Gst::ClockTime time)
 Gets the minute component of Gst::ClockTime.
 
guint get_seconds (Gst::ClockTime time)
 Gets the seconds component of Gst::ClockTime.
 
guint get_milliseconds (Gst::ClockTime time)
 Gets the milliseconds component of Gst::ClockTime.
 
guint get_microseconds (Gst::ClockTime time)
 Gets the microseconds component of Gst::ClockTime.
 
guint get_nanoseconds (Gst::ClockTime time)
 Gets the nanoseconds component of Gst::ClockTime.
 
guint get_fractional_seconds (Gst::ClockTime time)
 Gets the fractional component (milli, micro and nano seconds) of Gst::ClockTime.
 
DiscovererSerializeFlags operator| (DiscovererSerializeFlags lhs, DiscovererSerializeFlags rhs)
 
DiscovererSerializeFlags operator& (DiscovererSerializeFlags lhs, DiscovererSerializeFlags rhs)
 
DiscovererSerializeFlags operator^ (DiscovererSerializeFlags lhs, DiscovererSerializeFlags rhs)
 
DiscovererSerializeFlags operator~ (DiscovererSerializeFlags flags)
 
DiscovererSerializeFlagsoperator|= (DiscovererSerializeFlags& lhs, DiscovererSerializeFlags rhs)
 
DiscovererSerializeFlagsoperator&= (DiscovererSerializeFlags& lhs, DiscovererSerializeFlags rhs)
 
DiscovererSerializeFlagsoperator^= (DiscovererSerializeFlags& lhs, DiscovererSerializeFlags rhs)
 
ElementFlags operator| (ElementFlags lhs, ElementFlags rhs)
 
ElementFlags operator& (ElementFlags lhs, ElementFlags rhs)
 
ElementFlags operator^ (ElementFlags lhs, ElementFlags rhs)
 
ElementFlags operator~ (ElementFlags flags)
 
ElementFlagsoperator|= (ElementFlags& lhs, ElementFlags rhs)
 
ElementFlagsoperator&= (ElementFlags& lhs, ElementFlags rhs)
 
ElementFlagsoperator^= (ElementFlags& lhs, ElementFlags rhs)
 
StateChange operator| (StateChange lhs, StateChange rhs)
 
StateChange operator& (StateChange lhs, StateChange rhs)
 
StateChange operator^ (StateChange lhs, StateChange rhs)
 
StateChange operator~ (StateChange flags)
 
StateChangeoperator|= (StateChange& lhs, StateChange rhs)
 
StateChangeoperator&= (StateChange& lhs, StateChange rhs)
 
StateChangeoperator^= (StateChange& lhs, StateChange rhs)
 
PlayFlags operator| (PlayFlags lhs, PlayFlags rhs)
 
PlayFlags operator& (PlayFlags lhs, PlayFlags rhs)
 
PlayFlags operator^ (PlayFlags lhs, PlayFlags rhs)
 
PlayFlags operator~ (PlayFlags flags)
 
PlayFlagsoperator|= (PlayFlags& lhs, PlayFlags rhs)
 
PlayFlagsoperator&= (PlayFlags& lhs, PlayFlags rhs)
 
PlayFlagsoperator^= (PlayFlags& lhs, PlayFlags rhs)
 
Glib::QueryQuark get_core_error_quark ()
 Gets the error domain for core system.
 
Glib::QueryQuark get_library_error_quark ()
 Gets the error domain for library loading.
 
Glib::QueryQuark get_resource_error_quark ()
 Gets error domain for resource handling.
 
Glib::QueryQuark get_stream_error_quark ()
 Gets error domain for media stream processing.
 
EventType operator| (EventType lhs, EventType rhs)
 
EventType operator& (EventType lhs, EventType rhs)
 
EventType operator^ (EventType lhs, EventType rhs)
 
EventType operator~ (EventType flags)
 
EventTypeoperator|= (EventType& lhs, EventType rhs)
 
EventTypeoperator&= (EventType& lhs, EventType rhs)
 
EventTypeoperator^= (EventType& lhs, EventType rhs)
 
EventTypeFlags operator| (EventTypeFlags lhs, EventTypeFlags rhs)
 
EventTypeFlags operator& (EventTypeFlags lhs, EventTypeFlags rhs)
 
EventTypeFlags operator^ (EventTypeFlags lhs, EventTypeFlags rhs)
 
EventTypeFlags operator~ (EventTypeFlags flags)
 
EventTypeFlagsoperator|= (EventTypeFlags& lhs, EventTypeFlags rhs)
 
EventTypeFlagsoperator&= (EventTypeFlags& lhs, EventTypeFlags rhs)
 
EventTypeFlagsoperator^= (EventTypeFlags& lhs, EventTypeFlags rhs)
 
StreamFlags operator| (StreamFlags lhs, StreamFlags rhs)
 
StreamFlags operator& (StreamFlags lhs, StreamFlags rhs)
 
StreamFlags operator^ (StreamFlags lhs, StreamFlags rhs)
 
StreamFlags operator~ (StreamFlags flags)
 
StreamFlagsoperator|= (StreamFlags& lhs, StreamFlags rhs)
 
StreamFlagsoperator&= (StreamFlags& lhs, StreamFlags rhs)
 
StreamFlagsoperator^= (StreamFlags& lhs, StreamFlags rhs)
 
Format register_format (const Glib::ustring& nick, const Glib::ustring& description)
 Creates a new Gst::Format based on the nick or return an already registered format with that nick.
 
Format get_format (const Glib::ustring& nick)
 Returns the format registered with the given nick.
 
bool formats_contain (const Glib::ArrayHandle< Format >& formats, Format format)
 Sees if the given format is inside the array of formats.
 
bool get_format_details (Format format, FormatDefinition& def)
 Gets details about the given format.
 
IteratorBasic< const FormatDefinitioniterate_format_definitions ()
 Iterates all the registered formats.
 
MapFlags operator| (MapFlags lhs, MapFlags rhs)
 
MapFlags operator& (MapFlags lhs, MapFlags rhs)
 
MapFlags operator^ (MapFlags lhs, MapFlags rhs)
 
MapFlags operator~ (MapFlags flags)
 
MapFlagsoperator|= (MapFlags& lhs, MapFlags rhs)
 
MapFlagsoperator&= (MapFlags& lhs, MapFlags rhs)
 
MapFlagsoperator^= (MapFlags& lhs, MapFlags rhs)
 
template<typename T >
Glib::RefPtr< T > wrap_msg_derived (GstMessage* object, bool take_copy)
 
MessageType operator| (MessageType lhs, MessageType rhs)
 
MessageType operator& (MessageType lhs, MessageType rhs)
 
MessageType operator^ (MessageType lhs, MessageType rhs)
 
MessageType operator~ (MessageType flags)
 
MessageTypeoperator|= (MessageType& lhs, MessageType rhs)
 
MessageTypeoperator&= (MessageType& lhs, MessageType rhs)
 
MessageTypeoperator^= (MessageType& lhs, MessageType rhs)
 
MemoryFlags operator| (MemoryFlags lhs, MemoryFlags rhs)
 
MemoryFlags operator& (MemoryFlags lhs, MemoryFlags rhs)
 
MemoryFlags operator^ (MemoryFlags lhs, MemoryFlags rhs)
 
MemoryFlags operator~ (MemoryFlags flags)
 
MemoryFlagsoperator|= (MemoryFlags& lhs, MemoryFlags rhs)
 
MemoryFlagsoperator&= (MemoryFlags& lhs, MemoryFlags rhs)
 
MemoryFlagsoperator^= (MemoryFlags& lhs, MemoryFlags rhs)
 
MiniObjectFlags operator| (MiniObjectFlags lhs, MiniObjectFlags rhs)
 
MiniObjectFlags operator& (MiniObjectFlags lhs, MiniObjectFlags rhs)
 
MiniObjectFlags operator^ (MiniObjectFlags lhs, MiniObjectFlags rhs)
 
MiniObjectFlags operator~ (MiniObjectFlags flags)
 
MiniObjectFlagsoperator|= (MiniObjectFlags& lhs, MiniObjectFlags rhs)
 
MiniObjectFlagsoperator&= (MiniObjectFlags& lhs, MiniObjectFlags rhs)
 
MiniObjectFlagsoperator^= (MiniObjectFlags& lhs, MiniObjectFlags rhs)
 
LockFlags operator| (LockFlags lhs, LockFlags rhs)
 
LockFlags operator& (LockFlags lhs, LockFlags rhs)
 
LockFlags operator^ (LockFlags lhs, LockFlags rhs)
 
LockFlags operator~ (LockFlags flags)
 
LockFlagsoperator|= (LockFlags& lhs, LockFlags rhs)
 
LockFlagsoperator&= (LockFlags& lhs, LockFlags rhs)
 
LockFlagsoperator^= (LockFlags& lhs, LockFlags rhs)
 
ObjectFlags operator| (ObjectFlags lhs, ObjectFlags rhs)
 
ObjectFlags operator& (ObjectFlags lhs, ObjectFlags rhs)
 
ObjectFlags operator^ (ObjectFlags lhs, ObjectFlags rhs)
 
ObjectFlags operator~ (ObjectFlags flags)
 
ObjectFlagsoperator|= (ObjectFlags& lhs, ObjectFlags rhs)
 
ObjectFlagsoperator&= (ObjectFlags& lhs, ObjectFlags rhs)
 
ObjectFlagsoperator^= (ObjectFlags& lhs, ObjectFlags rhs)
 
PadFlags operator| (PadFlags lhs, PadFlags rhs)
 
PadFlags operator& (PadFlags lhs, PadFlags rhs)
 
PadFlags operator^ (PadFlags lhs, PadFlags rhs)
 
PadFlags operator~ (PadFlags flags)
 
PadFlagsoperator|= (PadFlags& lhs, PadFlags rhs)
 
PadFlagsoperator&= (PadFlags& lhs, PadFlags rhs)
 
PadFlagsoperator^= (PadFlags& lhs, PadFlags rhs)
 
PadLinkCheck operator| (PadLinkCheck lhs, PadLinkCheck rhs)
 
PadLinkCheck operator& (PadLinkCheck lhs, PadLinkCheck rhs)
 
PadLinkCheck operator^ (PadLinkCheck lhs, PadLinkCheck rhs)
 
PadLinkCheck operator~ (PadLinkCheck flags)
 
PadLinkCheckoperator|= (PadLinkCheck& lhs, PadLinkCheck rhs)
 
PadLinkCheckoperator&= (PadLinkCheck& lhs, PadLinkCheck rhs)
 
PadLinkCheckoperator^= (PadLinkCheck& lhs, PadLinkCheck rhs)
 
PadProbeType operator| (PadProbeType lhs, PadProbeType rhs)
 
PadProbeType operator& (PadProbeType lhs, PadProbeType rhs)
 
PadProbeType operator^ (PadProbeType lhs, PadProbeType rhs)
 
PadProbeType operator~ (PadProbeType flags)
 
PadProbeTypeoperator|= (PadProbeType& lhs, PadProbeType rhs)
 
PadProbeTypeoperator&= (PadProbeType& lhs, PadProbeType rhs)
 
PadProbeTypeoperator^= (PadProbeType& lhs, PadProbeType rhs)
 
PadTemplateFlags operator| (PadTemplateFlags lhs, PadTemplateFlags rhs)
 
PadTemplateFlags operator& (PadTemplateFlags lhs, PadTemplateFlags rhs)
 
PadTemplateFlags operator^ (PadTemplateFlags lhs, PadTemplateFlags rhs)
 
PadTemplateFlags operator~ (PadTemplateFlags flags)
 
PadTemplateFlagsoperator|= (PadTemplateFlags& lhs, PadTemplateFlags rhs)
 
PadTemplateFlagsoperator&= (PadTemplateFlags& lhs, PadTemplateFlags rhs)
 
PadTemplateFlagsoperator^= (PadTemplateFlags& lhs, PadTemplateFlags rhs)
 
PluginDependencyFlags operator| (PluginDependencyFlags lhs, PluginDependencyFlags rhs)
 
PluginDependencyFlags operator& (PluginDependencyFlags lhs, PluginDependencyFlags rhs)
 
PluginDependencyFlags operator^ (PluginDependencyFlags lhs, PluginDependencyFlags rhs)
 
PluginDependencyFlags operator~ (PluginDependencyFlags flags)
 
PluginDependencyFlagsoperator|= (PluginDependencyFlags& lhs, PluginDependencyFlags rhs)
 
PluginDependencyFlagsoperator&= (PluginDependencyFlags& lhs, PluginDependencyFlags rhs)
 
PluginDependencyFlagsoperator^= (PluginDependencyFlags& lhs, PluginDependencyFlags rhs)
 
PluginFlags operator| (PluginFlags lhs, PluginFlags rhs)
 
PluginFlags operator& (PluginFlags lhs, PluginFlags rhs)
 
PluginFlags operator^ (PluginFlags lhs, PluginFlags rhs)
 
PluginFlags operator~ (PluginFlags flags)
 
PluginFlagsoperator|= (PluginFlags& lhs, PluginFlags rhs)
 
PluginFlagsoperator&= (PluginFlags& lhs, PluginFlags rhs)
 
PluginFlagsoperator^= (PluginFlags& lhs, PluginFlags rhs)
 
QueryType operator| (QueryType lhs, QueryType rhs)
 
QueryType operator& (QueryType lhs, QueryType rhs)
 
QueryType operator^ (QueryType lhs, QueryType rhs)
 
QueryType operator~ (QueryType flags)
 
QueryTypeoperator|= (QueryType& lhs, QueryType rhs)
 
QueryTypeoperator&= (QueryType& lhs, QueryType rhs)
 
QueryTypeoperator^= (QueryType& lhs, QueryType rhs)
 
QueryTypeFlags operator| (QueryTypeFlags lhs, QueryTypeFlags rhs)
 
QueryTypeFlags operator& (QueryTypeFlags lhs, QueryTypeFlags rhs)
 
QueryTypeFlags operator^ (QueryTypeFlags lhs, QueryTypeFlags rhs)
 
QueryTypeFlags operator~ (QueryTypeFlags flags)
 
QueryTypeFlagsoperator|= (QueryTypeFlags& lhs, QueryTypeFlags rhs)
 
QueryTypeFlagsoperator&= (QueryTypeFlags& lhs, QueryTypeFlags rhs)
 
QueryTypeFlagsoperator^= (QueryTypeFlags& lhs, QueryTypeFlags rhs)
 
SchedulingFlags operator| (SchedulingFlags lhs, SchedulingFlags rhs)
 
SchedulingFlags operator& (SchedulingFlags lhs, SchedulingFlags rhs)
 
SchedulingFlags operator^ (SchedulingFlags lhs, SchedulingFlags rhs)
 
SchedulingFlags operator~ (SchedulingFlags flags)
 
SchedulingFlagsoperator|= (SchedulingFlags& lhs, SchedulingFlags rhs)
 
SchedulingFlagsoperator&= (SchedulingFlags& lhs, SchedulingFlags rhs)
 
SchedulingFlagsoperator^= (SchedulingFlags& lhs, SchedulingFlags rhs)
 
SeekFlags operator| (SeekFlags lhs, SeekFlags rhs)
 
SeekFlags operator& (SeekFlags lhs, SeekFlags rhs)
 
SeekFlags operator^ (SeekFlags lhs, SeekFlags rhs)
 
SeekFlags operator~ (SeekFlags flags)
 
SeekFlagsoperator|= (SeekFlags& lhs, SeekFlags rhs)
 
SeekFlagsoperator&= (SeekFlags& lhs, SeekFlags rhs)
 
SeekFlagsoperator^= (SeekFlags& lhs, SeekFlags rhs)
 
std::ostreamoperator<< (std::ostream&stream, Tag tag)
 An Output stream operator for the Gst::Tag enum (this will output a string).
 
VideoChromaSite operator| (VideoChromaSite lhs, VideoChromaSite rhs)
 
VideoChromaSite operator& (VideoChromaSite lhs, VideoChromaSite rhs)
 
VideoChromaSite operator^ (VideoChromaSite lhs, VideoChromaSite rhs)
 
VideoChromaSite operator~ (VideoChromaSite flags)
 
VideoChromaSiteoperator|= (VideoChromaSite& lhs, VideoChromaSite rhs)
 
VideoChromaSiteoperator&= (VideoChromaSite& lhs, VideoChromaSite rhs)
 
VideoChromaSiteoperator^= (VideoChromaSite& lhs, VideoChromaSite rhs)
 
VideoChromaFlags operator| (VideoChromaFlags lhs, VideoChromaFlags rhs)
 
VideoChromaFlags operator& (VideoChromaFlags lhs, VideoChromaFlags rhs)
 
VideoChromaFlags operator^ (VideoChromaFlags lhs, VideoChromaFlags rhs)
 
VideoChromaFlags operator~ (VideoChromaFlags flags)
 
VideoChromaFlagsoperator|= (VideoChromaFlags& lhs, VideoChromaFlags rhs)
 
VideoChromaFlagsoperator&= (VideoChromaFlags& lhs, VideoChromaFlags rhs)
 
VideoChromaFlagsoperator^= (VideoChromaFlags& lhs, VideoChromaFlags rhs)
 
VideoFormatFlags operator| (VideoFormatFlags lhs, VideoFormatFlags rhs)
 
VideoFormatFlags operator& (VideoFormatFlags lhs, VideoFormatFlags rhs)
 
VideoFormatFlags operator^ (VideoFormatFlags lhs, VideoFormatFlags rhs)
 
VideoFormatFlags operator~ (VideoFormatFlags flags)
 
VideoFormatFlagsoperator|= (VideoFormatFlags& lhs, VideoFormatFlags rhs)
 
VideoFormatFlagsoperator&= (VideoFormatFlags& lhs, VideoFormatFlags rhs)
 
VideoFormatFlagsoperator^= (VideoFormatFlags& lhs, VideoFormatFlags rhs)
 
VideoPackFlags operator| (VideoPackFlags lhs, VideoPackFlags rhs)
 
VideoPackFlags operator& (VideoPackFlags lhs, VideoPackFlags rhs)
 
VideoPackFlags operator^ (VideoPackFlags lhs, VideoPackFlags rhs)
 
VideoPackFlags operator~ (VideoPackFlags flags)
 
VideoPackFlagsoperator|= (VideoPackFlags& lhs, VideoPackFlags rhs)
 
VideoPackFlagsoperator&= (VideoPackFlags& lhs, VideoPackFlags rhs)
 
VideoPackFlagsoperator^= (VideoPackFlags& lhs, VideoPackFlags rhs)
 
VideoFrameFlags operator| (VideoFrameFlags lhs, VideoFrameFlags rhs)
 
VideoFrameFlags operator& (VideoFrameFlags lhs, VideoFrameFlags rhs)
 
VideoFrameFlags operator^ (VideoFrameFlags lhs, VideoFrameFlags rhs)
 
VideoFrameFlags operator~ (VideoFrameFlags flags)
 
VideoFrameFlagsoperator|= (VideoFrameFlags& lhs, VideoFrameFlags rhs)
 
VideoFrameFlagsoperator&= (VideoFrameFlags& lhs, VideoFrameFlags rhs)
 
VideoFrameFlagsoperator^= (VideoFrameFlags& lhs, VideoFrameFlags rhs)
 
VideoBufferFlags operator| (VideoBufferFlags lhs, VideoBufferFlags rhs)
 
VideoBufferFlags operator& (VideoBufferFlags lhs, VideoBufferFlags rhs)
 
VideoBufferFlags operator^ (VideoBufferFlags lhs, VideoBufferFlags rhs)
 
VideoBufferFlags operator~ (VideoBufferFlags flags)
 
VideoBufferFlagsoperator|= (VideoBufferFlags& lhs, VideoBufferFlags rhs)
 
VideoBufferFlagsoperator&= (VideoBufferFlags& lhs, VideoBufferFlags rhs)
 
VideoBufferFlagsoperator^= (VideoBufferFlags& lhs, VideoBufferFlags rhs)
 
VideoFrameMapFlags operator| (VideoFrameMapFlags lhs, VideoFrameMapFlags rhs)
 
VideoFrameMapFlags operator& (VideoFrameMapFlags lhs, VideoFrameMapFlags rhs)
 
VideoFrameMapFlags operator^ (VideoFrameMapFlags lhs, VideoFrameMapFlags rhs)
 
VideoFrameMapFlags operator~ (VideoFrameMapFlags flags)
 
VideoFrameMapFlagsoperator|= (VideoFrameMapFlags& lhs, VideoFrameMapFlags rhs)
 
VideoFrameMapFlagsoperator&= (VideoFrameMapFlags& lhs, VideoFrameMapFlags rhs)
 
VideoFrameMapFlagsoperator^= (VideoFrameMapFlags& lhs, VideoFrameMapFlags rhs)
 
VideoMultiviewFlags operator| (VideoMultiviewFlags lhs, VideoMultiviewFlags rhs)
 
VideoMultiviewFlags operator& (VideoMultiviewFlags lhs, VideoMultiviewFlags rhs)
 
VideoMultiviewFlags operator^ (VideoMultiviewFlags lhs, VideoMultiviewFlags rhs)
 
VideoMultiviewFlags operator~ (VideoMultiviewFlags flags)
 
VideoMultiviewFlagsoperator|= (VideoMultiviewFlags& lhs, VideoMultiviewFlags rhs)
 
VideoMultiviewFlagsoperator&= (VideoMultiviewFlags& lhs, VideoMultiviewFlags rhs)
 
VideoMultiviewFlagsoperator^= (VideoMultiviewFlags& lhs, VideoMultiviewFlags rhs)
 
VideoFlags operator| (VideoFlags lhs, VideoFlags rhs)
 
VideoFlags operator& (VideoFlags lhs, VideoFlags rhs)
 
VideoFlags operator^ (VideoFlags lhs, VideoFlags rhs)
 
VideoFlags operator~ (VideoFlags flags)
 
VideoFlagsoperator|= (VideoFlags& lhs, VideoFlags rhs)
 
VideoFlagsoperator&= (VideoFlags& lhs, VideoFlags rhs)
 
VideoFlagsoperator^= (VideoFlags& lhs, VideoFlags rhs)
 
void init (int& argc, char**& argv)
 Initializes gstreamermm parsing command line arguments.
 
void init ()
 Initializes gstreamermm without parsing command line options.
 
bool init_check (int& argc, char**& argv)
 Initializes gstreamermm gracefully parsing command line arguments.
 
bool init_check ()
 Initializes gstreamermm gracefully without parsing command line arguments.
 
bool is_initialized (void)
 Use this function to check if GStreamer has been initialized.
 
void deinit ()
 Clean up any resources created by GStreamer upon initialization.
 
Glib::OptionGroup get_option_group ()
 Returns a Glib::OptionGroup with GStreamer's argument specifications.
 
void version (guint& major, guint& minor, guint& micro, guint& nano)
 Gets the version number of the GStreamer library.
 
Glib::ustring version_string ()
 This function returns a string that is useful for describing this version of GStreamer to the outside world: user agent strings, logging, ...
 
bool segtrap_is_enabled ()
 Some functions in the GStreamer core might install a custom SIGSEGV handler to better catch and report errors to the application.
 
void segtrap_set_enabled (bool enabled)
 Applications might want to disable/enable the SIGSEGV handling of the GStreamer core.
 
bool registry_fork_is_enabled ()
 By default GStreamer will perform scanning and rebuilding of the registry file using a helper child process.
 
void registry_fork_set_enabled (bool enabled)
 Applications might want to disable/enable spawning of a child helper process when rebuilding the registry.
 
bool update_registry ()
 Forces GStreamer to re-scan its plugin paths and update the default plugin registry.
 
void version (guint& major, guint& minor, guint& micro)
 Gets the version number of the gstreamermm library.
 
void wrap_init ()
 Initializes the main gstreamermm wrapping system.
 

Variables

const ClockTime CLOCK_TIME_NONE
 A constant to define an undefined clock time.
 
const ClockTime SECOND
 A constant that defines one GStreamer second.
 
const ClockTime MILLI_SECOND
 A constant that defines one GStreamer millisecond.
 
const ClockTime MICRO_SECOND
 A constant that defines one GStreamer microsecond.
 
const ClockTime NANO_SECOND
 A constant that defines one GStreamer nanosecond.
 

Typedef Documentation

◆ ClockTime

typedef GstClockTime Gst::ClockTime

A data type to hold a time, measured in nanoseconds.

◆ ClockTimeDiff

typedef GstClockTimeDiff Gst::ClockTimeDiff

A data type to hold a timedifference, measured in nanoseconds.

Enumeration Type Documentation

◆ AudioBaseSinkDiscontReason

Enumerator
AUDIO_BASE_SINK_DISCONT_REASON_NO_DISCONT 

No discontinuity occurred.

AUDIO_BASE_SINK_DISCONT_REASON_NEW_CAPS 

New caps are set, causing renegotiotion.

AUDIO_BASE_SINK_DISCONT_REASON_FLUSH 

Samples have been flushed.

AUDIO_BASE_SINK_DISCONT_REASON_SYNC_LATENCY 

Sink was synchronized to the estimated latency (occurs during initialization).

AUDIO_BASE_SINK_DISCONT_REASON_ALIGNMENT 

Aligning buffers failed because the timestamps are too discontinuous.

AUDIO_BASE_SINK_DISCONT_REASON_DEVICE_FAILURE 

Audio output device experienced and recovered from an error but introduced latency in the process (see also Gst::AudioBaseSink::report_device_failure()).

◆ AudioBaseSinkSlaveMethod

Enumerator
AUDIO_BASE_SINK_SLAVE_RESAMPLE 

Resample to match the master clock.

AUDIO_BASE_SINK_SLAVE_SKEW 

Adjust playout pointer when master clock drifts too much.

AUDIO_BASE_SINK_SLAVE_NONE 

No adjustment is done.

AUDIO_BASE_SINK_SLAVE_CUSTOM 

Use custom clock slaving algorithm (Since: 1.6).

◆ AudioBaseSrcSlaveMethod

Enumerator
AUDIO_BASE_SRC_SLAVE_RESAMPLE 

Resample to match the master clock.

AUDIO_BASE_SRC_SLAVE_RETIMESTAMP 

Retimestamp output buffers with master clock time.

AUDIO_BASE_SRC_SLAVE_SKEW 

Adjust capture pointer when master clock drifts too much.

AUDIO_BASE_SRC_SLAVE_NONE 

No adjustment is done.

◆ AudioCdSrcMode

Enumerator
AUDIO_CD_SRC_MODE_NORMAL 

Each single track is a stream.

AUDIO_CD_SRC_MODE_CONTINUOUS 

The entire disc is a single stream.

◆ AudioChannelPosition

Enumerator
AUDIO_CHANNEL_POSITION_NONE 

Used for position-less channels, e.g.

from a sound card that records 1024 channels; mutually exclusive with any other channel position.

AUDIO_CHANNEL_POSITION_MONO 

Mono without direction; can only be used with 1 channel.

AUDIO_CHANNEL_POSITION_INVALID 

Invalid position.

AUDIO_CHANNEL_POSITION_FRONT_LEFT 

Front left.

AUDIO_CHANNEL_POSITION_FRONT_RIGHT 

Front right.

AUDIO_CHANNEL_POSITION_FRONT_CENTER 

Front center.

AUDIO_CHANNEL_POSITION_LFE1 

Low-frequency effects 1 (subwoofer).

AUDIO_CHANNEL_POSITION_REAR_LEFT 

Rear left.

AUDIO_CHANNEL_POSITION_REAR_RIGHT 

Rear right.

AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER 

Front left of center.

AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER 

Front right of center.

AUDIO_CHANNEL_POSITION_REAR_CENTER 

Rear center.

AUDIO_CHANNEL_POSITION_LFE2 

Low-frequency effects 2 (subwoofer).

AUDIO_CHANNEL_POSITION_SIDE_LEFT 

Side left.

AUDIO_CHANNEL_POSITION_SIDE_RIGHT 

Side right.

AUDIO_CHANNEL_POSITION_TOP_FRONT_LEFT 

Top front left.

AUDIO_CHANNEL_POSITION_TOP_FRONT_RIGHT 

Top front right.

AUDIO_CHANNEL_POSITION_TOP_FRONT_CENTER 

Top front center.

AUDIO_CHANNEL_POSITION_TOP_CENTER 

Top center.

AUDIO_CHANNEL_POSITION_TOP_REAR_LEFT 

Top rear left.

AUDIO_CHANNEL_POSITION_TOP_REAR_RIGHT 

Top rear right.

AUDIO_CHANNEL_POSITION_TOP_SIDE_LEFT 

Top side right.

AUDIO_CHANNEL_POSITION_TOP_SIDE_RIGHT 

Top rear right.

AUDIO_CHANNEL_POSITION_TOP_REAR_CENTER 

Top rear center.

AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_CENTER 

Bottom front center.

AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_LEFT 

Bottom front left.

AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_RIGHT 

Bottom front right.

AUDIO_CHANNEL_POSITION_WIDE_LEFT 

Wide left (between front left and side left).

AUDIO_CHANNEL_POSITION_WIDE_RIGHT 

Wide right (between front right and side right).

AUDIO_CHANNEL_POSITION_SURROUND_LEFT 

Surround left (between rear left and side left).

AUDIO_CHANNEL_POSITION_SURROUND_RIGHT 

Surround right (between rear right and side right).

◆ AudioFlags

Enumerator
AUDIO_FLAG_NONE 

No valid flag.

AUDIO_FLAG_UNPOSITIONED 

The position array explicitly contains unpositioned channels.

◆ AudioFormat

Enumerator
AUDIO_FORMAT_UNKNOWN 

Unknown or unset audio format.

AUDIO_FORMAT_ENCODED 

Encoded audio format.

AUDIO_FORMAT_S8 

8 bits in 8 bits, signed.

AUDIO_FORMAT_U8 

8 bits in 8 bits, unsigned.

AUDIO_FORMAT_S16LE 

16 bits in 16 bits, signed, little endian.

AUDIO_FORMAT_S16BE 

16 bits in 16 bits, signed, big endian.

AUDIO_FORMAT_U16LE 

16 bits in 16 bits, unsigned, little endian.

AUDIO_FORMAT_U16BE 

16 bits in 16 bits, unsigned, big endian.

AUDIO_FORMAT_S24_32LE 

24 bits in 32 bits, signed, little endian.

AUDIO_FORMAT_S24_32BE 

24 bits in 32 bits, signed, big endian.

AUDIO_FORMAT_U24_32LE 

24 bits in 32 bits, unsigned, little endian.

AUDIO_FORMAT_U24_32BE 

24 bits in 32 bits, unsigned, big endian.

AUDIO_FORMAT_S32LE 

32 bits in 32 bits, signed, little endian.

AUDIO_FORMAT_S32BE 

32 bits in 32 bits, signed, big endian.

AUDIO_FORMAT_U32LE 

32 bits in 32 bits, unsigned, little endian.

AUDIO_FORMAT_U32BE 

32 bits in 32 bits, unsigned, big endian.

AUDIO_FORMAT_S24LE 

24 bits in 24 bits, signed, little endian.

AUDIO_FORMAT_S24BE 

24 bits in 24 bits, signed, big endian.

AUDIO_FORMAT_U24LE 

24 bits in 24 bits, unsigned, little endian.

AUDIO_FORMAT_U24BE 

24 bits in 24 bits, unsigned, big endian.

AUDIO_FORMAT_S20LE 

20 bits in 24 bits, signed, little endian.

AUDIO_FORMAT_S20BE 

20 bits in 24 bits, signed, big endian.

AUDIO_FORMAT_U20LE 

20 bits in 24 bits, unsigned, little endian.

AUDIO_FORMAT_U20BE 

20 bits in 24 bits, unsigned, big endian.

AUDIO_FORMAT_S18LE 

18 bits in 24 bits, signed, little endian.

AUDIO_FORMAT_S18BE 

18 bits in 24 bits, signed, big endian.

AUDIO_FORMAT_U18LE 

18 bits in 24 bits, unsigned, little endian.

AUDIO_FORMAT_U18BE 

18 bits in 24 bits, unsigned, big endian.

AUDIO_FORMAT_F32LE 

32-bit floating point samples, little endian.

AUDIO_FORMAT_F32BE 

32-bit floating point samples, big endian.

AUDIO_FORMAT_F64LE 

64-bit floating point samples, little endian.

AUDIO_FORMAT_F64BE 

64-bit floating point samples, big endian.

AUDIO_FORMAT_S16 

16 bits in 16 bits, signed, native endianness.

AUDIO_FORMAT_U16 

16 bits in 16 bits, unsigned, native endianness.

AUDIO_FORMAT_S24_32 

24 bits in 32 bits, signed, native endianness.

AUDIO_FORMAT_U24_32 

24 bits in 32 bits, unsigned, native endianness.

AUDIO_FORMAT_S32 

32 bits in 32 bits, signed, native endianness.

AUDIO_FORMAT_U32 

32 bits in 32 bits, unsigned, native endianness.

AUDIO_FORMAT_S24 

24 bits in 24 bits, signed, native endianness.

AUDIO_FORMAT_U24 

24 bits in 24 bits, unsigned, native endianness.

AUDIO_FORMAT_S20 

20 bits in 24 bits, signed, native endianness.

AUDIO_FORMAT_U20 

20 bits in 24 bits, unsigned, native endianness.

AUDIO_FORMAT_S18 

18 bits in 24 bits, signed, native endianness.

AUDIO_FORMAT_U18 

18 bits in 24 bits, unsigned, native endianness.

AUDIO_FORMAT_F32 

32-bit floating point samples, native endianness.

AUDIO_FORMAT_F64 

64-bit floating point samples, native endianness.

◆ AudioFormatFlags

Enumerator
AUDIO_FORMAT_FLAG_INTEGER 

Integer samples.

AUDIO_FORMAT_FLAG_FLOAT 

Float samples.

AUDIO_FORMAT_FLAG_SIGNED 

Signed samples.

AUDIO_FORMAT_FLAG_COMPLEX 

Complex layout.

AUDIO_FORMAT_FLAG_UNPACK 

The format can be used in Gst::AudioFormatUnpack and Gst::AudioFormatPack functions.

◆ AudioLayout

Enumerator
AUDIO_LAYOUT_INTERLEAVED 

Interleaved audio.

AUDIO_LAYOUT_NON_INTERLEAVED 

Non-interleaved audio.

◆ AudioPackFlags

Enumerator
AUDIO_PACK_FLAG_NONE 

No flag.

AUDIO_PACK_FLAG_TRUNCATE_RANGE 

When the source has a smaller depth than the target format, set the least significant bits of the target to 0.

This is likely sightly faster but less accurate. When this flag is not specified, the most significant bits of the source are duplicated in the least significant bits of the destination.

◆ AudioRingBufferFormatType

Enumerator
AUDIO_RING_BUFFER_FORMAT_TYPE_RAW 

Samples in linear or float.

AUDIO_RING_BUFFER_FORMAT_TYPE_MU_LAW 

Samples in mulaw.

AUDIO_RING_BUFFER_FORMAT_TYPE_A_LAW 

Samples in alaw.

AUDIO_RING_BUFFER_FORMAT_TYPE_IMA_ADPCM 

Samples in ima adpcm.

AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG 

Samples in mpeg audio (but not AAC) format.

AUDIO_RING_BUFFER_FORMAT_TYPE_GSM 

Samples in gsm format.

AUDIO_RING_BUFFER_FORMAT_TYPE_IEC958 

Samples in IEC958 frames (e.g.

AC3).

AUDIO_RING_BUFFER_FORMAT_TYPE_AC3 

Samples in AC3 format.

AUDIO_RING_BUFFER_FORMAT_TYPE_EAC3 

Samples in EAC3 format.

AUDIO_RING_BUFFER_FORMAT_TYPE_DTS 

Samples in DTS format.

AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG2_AAC 

Samples in MPEG-2 AAC format.

AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG4_AAC 

Samples in MPEG-4 AAC format.

◆ AudioRingBufferState

Enumerator
AUDIO_RING_BUFFER_STATE_STOPPED 

The ringbuffer is stopped.

AUDIO_RING_BUFFER_STATE_PAUSED 

The ringbuffer is paused.

AUDIO_RING_BUFFER_STATE_STARTED 

The ringbuffer is started.

AUDIO_RING_BUFFER_STATE_ERROR 

The ringbuffer has encountered an error after it has been started, e.g.

because the device was disconnected (Since 1.2).

◆ BaseSrcFlags

Enumerator
BASE_SRC_FLAG_STARTING 

Has source is starting.

BASE_SRC_FLAG_STARTED 

Has source been started.

BASE_SRC_FLAG_LAST 

Offset to define more flags.

◆ BinFlags

Enumerator
BIN_FLAG_NO_RESYNC 

Don't resync a state change when elements are added or linked in the bin (Since 1.0.5).

BIN_FLAG_LAST 

The last enum in the series of flags for bins.

Derived classes can use this as first value in a list of flags.

◆ BufferCopyFlags

Enumerator
BUFFER_COPY_NONE 

Copy nothing.

BUFFER_COPY_FLAGS 

Flag indicating that buffer flags should be copied.

BUFFER_COPY_TIMESTAMPS 

Flag indicating that buffer pts, dts, duration, offset and offset_end should be copied.

BUFFER_COPY_META 

Flag indicating that buffer meta should be copied.

BUFFER_COPY_MEMORY 

Flag indicating that buffer memory should be reffed and appended to already existing memory.

Unless the memory is marked as NO_SHARE, no actual copy of the memory is made but it is simply reffed. Add GST_BUFFER_COPY_DEEP to force a real copy.

BUFFER_COPY_MERGE 

Flag indicating that buffer memory should be merged.

BUFFER_COPY_DEEP 

Flag indicating that memory should always be copied instead of reffed (Since 1.2).

◆ BufferFlags

Enumerator
BUFFER_FLAG_LIVE 

The buffer is live data and should be discarded in the PAUSED state.

BUFFER_FLAG_DECODE_ONLY 

The buffer contains data that should be dropped because it will be clipped against the segment boundaries or because it does not contain data that should be shown to the user.

BUFFER_FLAG_DISCONT 

The buffer marks a data discontinuity in the stream.

This typically occurs after a seek or a dropped buffer from a live or network source.

BUFFER_FLAG_RESYNC 

The buffer timestamps might have a discontinuity and this buffer is a good point to resynchronize.

BUFFER_FLAG_CORRUPTED 

The buffer data is corrupted.

BUFFER_FLAG_MARKER 

The buffer contains a media specific marker.

for video this is typically the end of a frame boundary, for audio this is usually the start of a talkspurt.

BUFFER_FLAG_HEADER 

The buffer contains header information that is needed to decode the following data.

BUFFER_FLAG_GAP 

The buffer has been created to fill a gap in the stream and contains media neutral data (elements can switch to optimized code path that ignores the buffer content).

BUFFER_FLAG_DROPPABLE 

The buffer can be dropped without breaking the stream, for example to reduce bandwidth.

BUFFER_FLAG_DELTA_UNIT 

This unit cannot be decoded independently.

BUFFER_FLAG_TAG_MEMORY 

This flag is set when memory of the buffer is added/removed.

BUFFER_FLAG_SYNC_AFTER 

Elements which write to disk or permanent storage should ensure the data is synced after writing the contents of this buffer.

(Since 1.6).

BUFFER_FLAG_LAST 

Additional media specific flags can be added starting from this flag.

◆ BufferingMode

Enumerator
BUFFERING_STREAM 

A small amount of data is buffered.

BUFFERING_DOWNLOAD 

The stream is being downloaded.

BUFFERING_TIMESHIFT 

The stream is being downloaded in a ringbuffer.

BUFFERING_LIVE 

The stream is a live stream.

◆ BusFlags

Enumerator
BUS_FLUSHING 

The bus is currently dropping all messages.

BUS_FLAG_LAST 

Offset to define more flags.

◆ BusSyncReply

Enumerator
BUS_DROP 

Drop the message.

BUS_PASS 

Pass the message to the async queue.

BUS_ASYNC 

Pass message to async queue, continue if message is handled.

◆ CapsFlags

Enumerator
CAPS_FLAG_ANY 

Caps has no specific content, but can contain anything.

◆ CapsIntersectMode

Enumerator
CAPS_INTERSECT_ZIG_ZAG 

Zig-zags over both caps.

CAPS_INTERSECT_FIRST 

Keeps the first caps order.

◆ ClockEntryType

Enumerator
CLOCK_ENTRY_SINGLE 

A single shot timeout.

CLOCK_ENTRY_PERIODIC 

A periodic timeout request.

◆ ClockFlags

Enumerator
CLOCK_FLAG_CAN_DO_SINGLE_SYNC 

Clock can do a single sync timeout request.

CLOCK_FLAG_CAN_DO_SINGLE_ASYNC 

Clock can do a single async timeout request.

CLOCK_FLAG_CAN_DO_PERIODIC_SYNC 

Clock can do sync periodic timeout requests.

CLOCK_FLAG_CAN_DO_PERIODIC_ASYNC 

Clock can do async periodic timeout callbacks.

CLOCK_FLAG_CAN_SET_RESOLUTION 

Clock's resolution can be changed.

CLOCK_FLAG_CAN_SET_MASTER 

Clock can be slaved to a master clock.

CLOCK_FLAG_NEEDS_STARTUP_SYNC 

Clock needs to be synced before it can be used (Since 1.6).

CLOCK_FLAG_LAST 

Subclasses can add additional flags starting from this flag.

◆ ClockReturn

Enumerator
CLOCK_OK 

The operation succeeded.

CLOCK_EARLY 

The operation was scheduled too late.

CLOCK_UNSCHEDULED 

The clockID was unscheduled.

CLOCK_BUSY 

The ClockID is busy.

CLOCK_BADTIME 

A bad time was provided to a function.

CLOCK_ERROR 

An error occurred.

CLOCK_UNSUPPORTED 

Operation is not supported.

CLOCK_DONE 

The ClockID is done waiting.

◆ ColorBalanceType

Enumerator
COLOR_BALANCE_HARDWARE 

Color balance is implemented with dedicated hardware.

COLOR_BALANCE_SOFTWARE 

Color balance is implemented via software processing.

◆ DiscovererResult

Enumerator
DISCOVERER_OK 

The discovery was successful.

DISCOVERER_URI_INVALID 

The URI is invalid.

DISCOVERER_ERROR 

An error happened and the GError is set.

DISCOVERER_TIMEOUT 

The discovery timed-out.

DISCOVERER_BUSY 

The discoverer was already discovering a file.

DISCOVERER_MISSING_PLUGINS 

Some plugins are missing for full discovery.

◆ DiscovererSerializeFlags

Enumerator
DISCOVERER_SERIALIZE_BASIC 

Serialize only basic information, excluding caps, tags and miscellaneous information.

DISCOVERER_SERIALIZE_CAPS 

Serialize the caps for each stream.

DISCOVERER_SERIALIZE_TAGS 

Serialize the tags for each stream.

DISCOVERER_SERIALIZE_MISC 

Serialize miscellaneous information for each stream.

DISCOVERER_SERIALIZE_ALL 

Serialize all the available info, including caps, tags and miscellaneous information.

◆ ElementFactoryListType

Enumerator
ELEMENT_FACTORY_TYPE_ANY 
ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS 
ELEMENT_FACTORY_TYPE_AUDIO_ENCODER 
ELEMENT_FACTORY_TYPE_DECODABLE 
ELEMENT_FACTORY_TYPE_DECODER 
ELEMENT_FACTORY_TYPE_DEMUXER 
ELEMENT_FACTORY_TYPE_DEPAYLOADER 
ELEMENT_FACTORY_TYPE_ENCODER 
ELEMENT_FACTORY_TYPE_FORMATTER 
ELEMENT_FACTORY_TYPE_MAX_ELEMENTS 
ELEMENT_FACTORY_TYPE_MEDIA_AUDIO 
ELEMENT_FACTORY_TYPE_MEDIA_IMAGE 
ELEMENT_FACTORY_TYPE_MEDIA_METADATA 
ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE 
ELEMENT_FACTORY_TYPE_MEDIA_VIDEO 
ELEMENT_FACTORY_TYPE_MEDIA_ANY 
ELEMENT_FACTORY_TYPE_MUXER 
ELEMENT_FACTORY_TYPE_PARSER 
ELEMENT_FACTORY_TYPE_PAYLOADER 
ELEMENT_FACTORY_TYPE_SINK 
ELEMENT_FACTORY_TYPE_SRC 
ELEMENT_FACTORY_TYPE_VIDEO_ENCODER 

◆ ElementFlags

Enumerator
ELEMENT_FLAG_LOCKED_STATE 

Ignore state changes from parent.

ELEMENT_FLAG_SINK 

The element is a sink.

ELEMENT_FLAG_SOURCE 

The element is a source.

ELEMENT_FLAG_PROVIDE_CLOCK 

The element can provide a clock.

ELEMENT_FLAG_REQUIRE_CLOCK 

The element requires a clock.

ELEMENT_FLAG_INDEXABLE 

The element can use an index.

ELEMENT_FLAG_LAST 

Offset to define more flags.

◆ EventType

Enumerator
EVENT_UNKNOWN 

Unknown event.

EVENT_FLUSH_START 

Start a flush operation.

This event clears all data from the pipeline and unblock all streaming threads.

EVENT_FLUSH_STOP 

Stop a flush operation.

This event resets the running-time of the pipeline.

EVENT_STREAM_START 

Event to mark the start of a new stream.

Sent before any other serialized event and only sent at the start of a new stream, not after flushing seeks.

EVENT_CAPS 

Gst::Caps event.

Notify the pad of a new media type.

EVENT_SEGMENT 

A new media segment follows in the dataflow.

The segment events contains information for clipping buffers and converting buffer timestamps to running-time and stream-time.

EVENT_TAG 

A new set of metadata tags has been found in the stream.

EVENT_BUFFERSIZE 

Notification of buffering requirements.

Currently not used yet.

EVENT_SINK_MESSAGE 

An event that sinks turn into a message.

Used to send messages that should be emitted in sync with rendering.

EVENT_EOS 

End-Of-Stream.

No more data is to be expected to follow without a SEGMENT event.

EVENT_TOC 

An event which indicates that a new table of contents (TOC) was found or updated.

EVENT_PROTECTION 

An event which indicates that new or updated encryption information has been found in the stream.

EVENT_SEGMENT_DONE 

Marks the end of a segment playback.

EVENT_GAP 

Marks a gap in the datastream.

EVENT_QOS 

A quality message.

Used to indicate to upstream elements that the downstream elements should adjust their processing rate.

EVENT_SEEK 

A request for a new playback position and rate.

EVENT_NAVIGATION 

Navigation events are usually used for communicating user requests, such as mouse or keyboard movements, to upstream elements.

EVENT_LATENCY 

Notification of new latency adjustment.

Sinks will use the latency information to adjust their synchronisation.

EVENT_STEP 

A request for stepping through the media.

Sinks will usually execute the step operation.

EVENT_RECONFIGURE 

A request for upstream renegotiating caps and reconfiguring.

EVENT_TOC_SELECT 

A request for a new playback position based on TOC entry's UID.

EVENT_CUSTOM_UPSTREAM 

Upstream custom event.

EVENT_CUSTOM_DOWNSTREAM 

Downstream custom event that travels in the data flow.

EVENT_CUSTOM_DOWNSTREAM_OOB 

Custom out-of-band downstream event.

EVENT_CUSTOM_DOWNSTREAM_STICKY 

Custom sticky downstream event.

EVENT_CUSTOM_BOTH 

Custom upstream or downstream event.

In-band when travelling downstream.

EVENT_CUSTOM_BOTH_OOB 

Custom upstream or downstream out-of-band event.

◆ EventTypeFlags

Enumerator
EVENT_TYPE_UPSTREAM 

Set if the event can travel upstream.

EVENT_TYPE_DOWNSTREAM 

Set if the event can travel downstream.

EVENT_TYPE_SERIALIZED 

Set if the event should be serialized with data flow.

EVENT_TYPE_STICKY 

Set if the event is sticky on the pads.

EVENT_TYPE_STICKY_MULTI 

Multiple sticky events can be on a pad, each identified by the event name.

◆ FlowReturn

Enumerator
FLOW_CUSTOM_SUCCESS_2 

Pre-defined custom success code.

FLOW_CUSTOM_SUCCESS_1 

Pre-defined custom success code (define your custom success code to this to avoid compiler warnings).

FLOW_CUSTOM_SUCCESS 

Elements can use values starting from this (and higher) to define custom success codes.

FLOW_OK 

Data passing was ok.

FLOW_NOT_LINKED 

Pad is not linked.

FLOW_FLUSHING 

Pad is flushing.

FLOW_EOS 

Pad is EOS.

FLOW_NOT_NEGOTIATED 

Pad is not negotiated.

FLOW_ERROR 

Some (fatal) error occurred.

Element generating this error should post an error message with more details.

FLOW_NOT_SUPPORTED 

This operation is not supported.

FLOW_CUSTOM_ERROR 

Elements can use values starting from this (and lower) to define custom error codes.

FLOW_CUSTOM_ERROR_1 

Pre-defined custom error code (define your custom error code to this to avoid compiler warnings).

FLOW_CUSTOM_ERROR_2 

Pre-defined custom error code.

◆ Format

Enumerator
FORMAT_UNDEFINED 

Undefined format.

FORMAT_DEFAULT 

The default format of the pad/element.

This can be samples for raw audio, frames/fields for raw video (some, but not all, elements support this; use GST_FORMAT_TIME if you don't have a good reason to query for samples/frames).

FORMAT_BYTES 

Bytes.

FORMAT_TIME 

Time in nanoseconds.

FORMAT_BUFFERS 

Buffers (few, if any, elements implement this as of May 2009).

FORMAT_PERCENT 

Percentage of stream (few, if any, elements implement this as of May 2009).

◆ IteratorItem

Enumerator
ITERATOR_ITEM_SKIP 

Skip this item.

ITERATOR_ITEM_PASS 

Return item.

ITERATOR_ITEM_END 

Stop after this item.

◆ IteratorResult

Enumerator
ITERATOR_DONE 

No more items in the iterator.

ITERATOR_OK 

An item was retrieved.

ITERATOR_RESYNC 

Datastructure changed while iterating.

ITERATOR_ERROR 

An error happened.

◆ LockFlags

Enumerator
LOCK_FLAG_READ 

Lock for read access.

LOCK_FLAG_WRITE 

Lock for write access.

LOCK_FLAG_EXCLUSIVE 

Lock for exclusive access.

LOCK_FLAG_LAST 

First flag that can be used for custom purposes.

◆ MapFlags

Enumerator
MAP_READ 

Map for read access.

MAP_WRITE 

Map for write access.

MAP_FLAG_LAST 

First flag that can be used for custom purposes.

◆ MemoryFlags

Enumerator
MEMORY_FLAG_READONLY 

Memory is readonly.

It is not allowed to map the memory with Gst::MAP_WRITE.

MEMORY_FLAG_NO_SHARE 

Memory must not be shared.

Copies will have to be made when this memory needs to be shared between buffers.

MEMORY_FLAG_ZERO_PREFIXED 

The memory prefix is filled with 0 bytes.

MEMORY_FLAG_ZERO_PADDED 

The memory padding is filled with 0 bytes.

MEMORY_FLAG_PHYSICALLY_CONTIGUOUS 

The memory is physically contiguous.

(Since 1.2).

MEMORY_FLAG_NOT_MAPPABLE 

The memory can't be mapped via Gst::Memory::map() without any preconditions.

(Since 1.2).

MEMORY_FLAG_LAST 

First flag that can be used for custom purposes.

◆ MessageType

Enumerator
MESSAGE_UNKNOWN 

An undefined message.

MESSAGE_EOS 

End-of-stream reached in a pipeline.

The application will only receive this message in the PLAYING state and every time it sets a pipeline to PLAYING that is in the EOS state. The application can perform a flushing seek in the pipeline, which will undo the EOS state again.

MESSAGE_ERROR 

An error occurred.

When the application receives an error message it should stop playback of the pipeline and not assume that more data will be played.

MESSAGE_WARNING 

A warning occurred.

MESSAGE_INFO 

An info message occurred.

MESSAGE_TAG 

A tag was found.

MESSAGE_BUFFERING 

The pipeline is buffering.

When the application receives a buffering message in the PLAYING state for a non-live pipeline it must PAUSE the pipeline until the buffering completes, when the percentage field in the message is 100%. For live pipelines, no action must be performed and the buffering percentage can be used to inform the user about the progress.

MESSAGE_STATE_CHANGED 

A state change happened.

MESSAGE_STATE_DIRTY 

An element changed state in a streaming thread.

This message is deprecated.

MESSAGE_STEP_DONE 

A stepping operation finished.

MESSAGE_CLOCK_PROVIDE 

An element notifies its capability of providing a clock.

This message is used internally and never forwarded to the application.

MESSAGE_CLOCK_LOST 

The current clock as selected by the pipeline became unusable.

The pipeline will select a new clock on the next PLAYING state change. The application should set the pipeline to PAUSED and back to PLAYING when this message is received.

MESSAGE_NEW_CLOCK 

A new clock was selected in the pipeline.

MESSAGE_STRUCTURE_CHANGE 

The structure of the pipeline changed.

This message is used internally and never forwarded to the application.

MESSAGE_STREAM_STATUS 

Status about a stream, emitted when it starts, stops, errors, etc.

MESSAGE_APPLICATION 

Message posted by the application, possibly via an application-specific element.

MESSAGE_ELEMENT 

Element-specific message, see the specific element's documentation.

MESSAGE_SEGMENT_START 

Pipeline started playback of a segment.

This message is used internally and never forwarded to the application.

MESSAGE_SEGMENT_DONE 

Pipeline completed playback of a segment.

This message is forwarded to the application after all elements that posted GST_MESSAGE_SEGMENT_START posted a GST_MESSAGE_SEGMENT_DONE message.

MESSAGE_DURATION_CHANGED 

The duration of a pipeline changed.

The application can get the new duration with a duration query.

MESSAGE_LATENCY 

Posted by elements when their latency changes.

The application should recalculate and distribute a new latency.

MESSAGE_ASYNC_START 

Posted by elements when they start an ASYNC Gst::StateChange.

This message is not forwarded to the application but is used internally.

MESSAGE_ASYNC_DONE 

Posted by elements when they complete an ASYNC Gst::StateChange.

The application will only receive this message from the toplevel pipeline.

MESSAGE_REQUEST_STATE 

Posted by elements when they want the pipeline to change state.

This message is a suggestion to the application which can decide to perform the state change on (part of) the pipeline.

MESSAGE_STEP_START 

A stepping operation was started.

MESSAGE_QOS 

A buffer was dropped or an element changed its processing strategy for Quality of Service reasons.

MESSAGE_PROGRESS 

A progress message.

MESSAGE_TOC 

A new table of contents (TOC) was found or previously found TOC was updated.

MESSAGE_RESET_TIME 

Message to request resetting the pipeline's running time from the pipeline.

This is an internal message which applications will likely never receive.

MESSAGE_STREAM_START 

Message indicating start of a new stream.

Useful e.g. when using playbin in gapless playback mode, to get notified when the next title actually starts playing (which will be some time after the URI for the next title has been set).

MESSAGE_NEED_CONTEXT 

Message indicating that an element wants a specific context (Since 1.2).

MESSAGE_HAVE_CONTEXT 

Message indicating that an element created a context (Since 1.2).

MESSAGE_EXTENDED 

Message is an extended message type (see below).

These extended message IDs can't be used directly with mask-based API like Gst::Bus::poll() or Gst::Bus::timed_pop_filtered(), but you can still filter for GST_MESSAGE_EXTENDED and then check the result for the specific type. (Since 1.4).

◆ MiniObjectFlags

Enumerator
MINI_OBJECT_FLAG_LOCKABLE 

The object can be locked and unlocked with Gst::MiniObject::lock() and Gst::MiniObject::unlock().

MINI_OBJECT_FLAG_LOCK_READONLY 

The object is permanently locked in READONLY mode.

Only read locks can be performed on the object.

MINI_OBJECT_FLAG_LAST 

First flag that can be used by subclasses.

◆ NavigationCommand

Enumerator
NAVIGATION_COMMAND_INVALID 

An invalid command entry.

NAVIGATION_COMMAND_MENU1 

Execute navigation menu command 1.

For DVD, this enters the DVD root menu, or exits back to the title from the menu.

NAVIGATION_COMMAND_MENU2 

Execute navigation menu command 2.

For DVD, this jumps to the DVD title menu.

NAVIGATION_COMMAND_MENU3 

Execute navigation menu command 3.

For DVD, this jumps into the DVD root menu.

NAVIGATION_COMMAND_MENU4 

Execute navigation menu command 4.

For DVD, this jumps to the Subpicture menu.

NAVIGATION_COMMAND_MENU5 

Execute navigation menu command 5.

For DVD, the jumps to the audio menu.

NAVIGATION_COMMAND_MENU6 

Execute navigation menu command 6.

For DVD, this jumps to the angles menu.

NAVIGATION_COMMAND_MENU7 

Execute navigation menu command 7.

For DVD, this jumps to the chapter menu.

NAVIGATION_COMMAND_LEFT 

Select the next button to the left in a menu, if such a button exists.

NAVIGATION_COMMAND_RIGHT 

Select the next button to the right in a menu, if such a button exists.

NAVIGATION_COMMAND_UP 

Select the button above the current one in a menu, if such a button exists.

NAVIGATION_COMMAND_DOWN 

Select the button below the current one in a menu, if such a button exists.

NAVIGATION_COMMAND_ACTIVATE 

Activate (click) the currently selected button in a menu, if such a button exists.

NAVIGATION_COMMAND_PREV_ANGLE 

Switch to the previous angle in a multiangle feature.

NAVIGATION_COMMAND_NEXT_ANGLE 

Switch to the next angle in a multiangle feature.

◆ NavigationEventType

Enumerator
NAVIGATION_EVENT_INVALID 

Returned from gst_navigation_event_get_type() when the passed event is not a navigation event.

NAVIGATION_EVENT_KEY_PRESS 

A key press event.

Use gst_navigation_event_parse_key_event() to extract the details from the event.

NAVIGATION_EVENT_KEY_RELEASE 

A key release event.

Use gst_navigation_event_parse_key_event() to extract the details from the event.

NAVIGATION_EVENT_MOUSE_BUTTON_PRESS 

A mouse button press event.

Use gst_navigation_event_parse_mouse_button_event() to extract the details from the event.

NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE 

A mouse button release event.

Use gst_navigation_event_parse_mouse_button_event() to extract the details from the event.

NAVIGATION_EVENT_MOUSE_MOVE 

A mouse movement event.

Use gst_navigation_event_parse_mouse_move_event() to extract the details from the event.

NAVIGATION_EVENT_COMMAND 

A navigation command event.

Use gst_navigation_event_parse_command() to extract the details from the event.

◆ NavigationMessageType

Enumerator
NAVIGATION_MESSAGE_INVALID 

Returned from gst_navigation_message_get_type() when the passed message is not a navigation message.

NAVIGATION_MESSAGE_MOUSE_OVER 

Sent when the mouse moves over or leaves a clickable region of the output, such as a DVD menu button.

NAVIGATION_MESSAGE_COMMANDS_CHANGED 

Sent when the set of available commands changes and should re-queried by interested applications.

NAVIGATION_MESSAGE_ANGLES_CHANGED 

Sent when display angles in a multi-angle feature (such as a multiangle DVD) change - either angles have appeared or disappeared.

NAVIGATION_MESSAGE_EVENT 

Sent when a navigation event was not handled by any element in the pipeline (Since 1.6).

◆ NavigationQueryType

Enumerator
NAVIGATION_QUERY_INVALID 

Invalid query.

NAVIGATION_QUERY_COMMANDS 

Command query.

NAVIGATION_QUERY_ANGLES 

Viewing angle query.

◆ ObjectFlags

Enumerator
OBJECT_FLAG_LAST 

Subclasses can add additional flags starting from this flag.

◆ PadDirection

Enumerator
PAD_UNKNOWN 

Direction is unknown.

PAD_SRC 

The pad is a source pad.

PAD_SINK 

The pad is a sink pad.

◆ PadFlags

Enumerator
PAD_FLAG_BLOCKED 

Is dataflow on a pad blocked.

PAD_FLAG_FLUSHING 

Is pad flushing.

PAD_FLAG_EOS 

Is pad in EOS state.

PAD_FLAG_BLOCKING 

Is pad currently blocking on a buffer or event.

PAD_FLAG_NEED_PARENT 

Ensure that there is a parent object before calling into the pad callbacks.

PAD_FLAG_NEED_RECONFIGURE 

The pad should be reconfigured/renegotiated.

The flag has to be unset manually after reconfiguration happened.

PAD_FLAG_PENDING_EVENTS 

The pad has pending events.

PAD_FLAG_FIXED_CAPS 

The pad is using fixed caps.

This means that once the caps are set on the pad, the default caps query function will only return those caps.

PAD_FLAG_PROXY_CAPS 

The default event and query handler will forward all events and queries to the internally linked pads instead of discarding them.

PAD_FLAG_PROXY_ALLOCATION 

The default query handler will forward allocation queries to the internally linked pads instead of discarding them.

PAD_FLAG_PROXY_SCHEDULING 

The default query handler will forward scheduling queries to the internally linked pads instead of discarding them.

PAD_FLAG_ACCEPT_INTERSECT 

The default accept-caps handler will check it the caps intersect the query-caps result instead of checking for a subset.

This is interesting for parsers that can accept incompletely specified caps.

PAD_FLAG_ACCEPT_TEMPLATE 

The default accept-caps handler will use the template pad caps instead of query caps to compare with the accept caps.

Use this in combination with Gst::PAD_FLAG_ACCEPT_INTERSECT. (Since 1.6).

PAD_FLAG_LAST 

Offset to define more flags.

◆ PadLinkCheck

Enumerator
PAD_LINK_CHECK_NOTHING 

Don't check hierarchy or caps compatibility.

PAD_LINK_CHECK_HIERARCHY 

Check the pads have same parents/grandparents.

Could be omitted if it is already known that the two elements that own the pads are in the same bin.

PAD_LINK_CHECK_TEMPLATE_CAPS 

Check if the pads are compatible by using their template caps.

This is much faster than GST_PAD_LINK_CHECK_CAPS, but would be unsafe e.g. if one pad has Gst::CAPS_ANY.

PAD_LINK_CHECK_CAPS 

Check if the pads are compatible by comparing the caps returned by Gst::Pad::query_caps().

PAD_LINK_CHECK_DEFAULT 

The default checks done when linking pads (i.e.

the ones used by Gst::Pad::link()).

◆ PadLinkReturn

Enumerator
PAD_LINK_OK 

Link succeeded.

PAD_LINK_WRONG_HIERARCHY 

Pads have no common grandparent.

PAD_LINK_WAS_LINKED 

Pad was already linked.

PAD_LINK_WRONG_DIRECTION 

Pads have wrong direction.

PAD_LINK_NOFORMAT 

Pads do not have common format.

PAD_LINK_NOSCHED 

Pads cannot cooperate in scheduling.

PAD_LINK_REFUSED 

Refused for some reason.

◆ PadMode

Enumerator
PAD_MODE_NONE 

Pad will not handle dataflow.

PAD_MODE_PUSH 

Pad handles dataflow in downstream push mode.

PAD_MODE_PULL 

Pad handles dataflow in upstream pull mode.

◆ PadPresence

Enumerator
PAD_ALWAYS 

The pad is always available.

PAD_SOMETIMES 

The pad will become available depending on the media stream.

PAD_REQUEST 

The pad is only available on request with Gst::Element::request_pad().

◆ PadProbeReturn

Enumerator
PAD_PROBE_DROP 

Drop data in data probes.

For push mode this means that the data item is not sent downstream. For pull mode, it means that the data item is not passed upstream. In both cases, no more probes are called and Gst::FLOW_OK or true is returned to the caller.

PAD_PROBE_OK 

Normal probe return value.

This leaves the probe in place, and defers decisions about dropping or passing data to other probes, if any. If there are no other probes, the default behaviour for the probe type applies (block for blocking probes, and pass for non-blocking probes).

PAD_PROBE_REMOVE 

Remove this probe.

PAD_PROBE_PASS 

Pass the data item in the block probe and block on the next item.

PAD_PROBE_HANDLED 

Data has been handled in the probe and will not be forwarded further.

For events and buffers this is the same behaviour as GST_PAD_PROBE_DROP (except that in this case you need to unref the buffer or event yourself). For queries it will also return true to the caller. The probe can also modify the Gst::FlowReturn value by using the Gst::PAD_PROBE_INFO_FLOW_RETURN() accessor. Note that the resulting query must contain valid entries.

Since gstreamermm 1.6:

◆ PadProbeType

Enumerator
PAD_PROBE_TYPE_INVALID 

Invalid probe type.

PAD_PROBE_TYPE_IDLE 

Probe idle pads and block.

PAD_PROBE_TYPE_BLOCK 

Probe and block pads.

PAD_PROBE_TYPE_BUFFER 

Probe buffers.

PAD_PROBE_TYPE_BUFFER_LIST 

Probe buffer lists.

PAD_PROBE_TYPE_EVENT_DOWNSTREAM 

Probe downstream events.

PAD_PROBE_TYPE_EVENT_UPSTREAM 

Probe upstream events.

PAD_PROBE_TYPE_EVENT_FLUSH 

Probe flush events.

This probe has to be explicitly enabled and is not included in the @ GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM or @ GST_PAD_PROBE_TYPE_EVENT_UPSTREAM probe types.

PAD_PROBE_TYPE_QUERY_DOWNSTREAM 

Probe downstream queries.

PAD_PROBE_TYPE_QUERY_UPSTREAM 

Probe upstream queries.

PAD_PROBE_TYPE_PUSH 

Probe push.

PAD_PROBE_TYPE_PULL 

Probe pull.

PAD_PROBE_TYPE_BLOCKING 

Probe and block at the next opportunity, at data flow or when idle.

PAD_PROBE_TYPE_DATA_DOWNSTREAM 

Probe downstream data (buffers, buffer lists, and events).

PAD_PROBE_TYPE_DATA_UPSTREAM 

Probe upstream data (events).

PAD_PROBE_TYPE_DATA_BOTH 

Probe upstream and downstream data (buffers, buffer lists, and events).

PAD_PROBE_TYPE_BLOCK_DOWNSTREAM 

Probe and block downstream data (buffers, buffer lists, and events).

PAD_PROBE_TYPE_BLOCK_UPSTREAM 

Probe and block upstream data (events).

PAD_PROBE_TYPE_EVENT_BOTH 

Probe upstream and downstream events.

PAD_PROBE_TYPE_QUERY_BOTH 

Probe upstream and downstream queries.

PAD_PROBE_TYPE_ALL_BOTH 

Probe upstream events and queries and downstream buffers, buffer lists, events and queries.

PAD_PROBE_TYPE_SCHEDULING 

Probe push and pull.

◆ PadTemplateFlags

Enumerator
PAD_TEMPLATE_FLAG_LAST 

First flag that can be used by subclasses.

◆ PluginDependencyFlags

Enumerator
PLUGIN_DEPENDENCY_FLAG_NONE 

No special flags.

PLUGIN_DEPENDENCY_FLAG_RECURSE 

Recurse into subdirectories.

PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY 

Use paths argument only if none of the environment variables is set.

PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX 

Interpret filename argument as filter suffix and check all matching files in the directory.

PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX 

Interpret filename argument as filter prefix and check all matching files in the directory.

Since gstreamermm 1.8:

◆ PluginFlags

Enumerator
PLUGIN_FLAG_CACHED 

Temporarily loaded plugins.

PLUGIN_FLAG_BLACKLISTED 

The plugin won't be scanned (again).

◆ ProgressType

Enumerator
PROGRESS_TYPE_START 

A new task started.

PROGRESS_TYPE_CONTINUE 

A task completed and a new one continues.

PROGRESS_TYPE_COMPLETE 

A task completed.

PROGRESS_TYPE_CANCELED 

A task was canceled.

PROGRESS_TYPE_ERROR 

A task caused an error.

An error message is also posted on the bus.

◆ QOSType

Enumerator
QOS_TYPE_OVERFLOW 

The QoS event type that is produced when upstream elements are producing data too quickly and the element can't keep up processing the data.

Upstream should reduce their production rate. This type is also used when buffers arrive early or in time.

QOS_TYPE_UNDERFLOW 

The QoS event type that is produced when upstream elements are producing data too slowly and need to speed up their production rate.

QOS_TYPE_THROTTLE 

The QoS event type that is produced when the application enabled throttling to limit the data rate.

◆ QueryType

Enumerator
QUERY_UNKNOWN 

Unknown query type.

QUERY_POSITION 

Current position in stream.

QUERY_DURATION 

Total duration of the stream.

QUERY_LATENCY 

Latency of stream.

QUERY_JITTER 

Current jitter of stream.

QUERY_RATE 

Current rate of the stream.

QUERY_SEEKING 

Seeking capabilities.

QUERY_SEGMENT 

Segment start/stop positions.

QUERY_CONVERT 

Convert values between formats.

QUERY_FORMATS 

Query supported formats for convert.

QUERY_BUFFERING 

Query available media for efficient seeking.

QUERY_CUSTOM 

A custom application or element defined query.

QUERY_URI 

Query the URI of the source or sink.

QUERY_ALLOCATION 

The buffer allocation properties.

QUERY_SCHEDULING 

The scheduling properties.

QUERY_ACCEPT_CAPS 

The accept caps query.

QUERY_CAPS 

The caps query.

QUERY_DRAIN 

Wait till all serialized data is consumed downstream.

QUERY_CONTEXT 

Query the pipeline-local context from downstream or upstream (since 1.2).

◆ QueryTypeFlags

Enumerator
QUERY_TYPE_UPSTREAM 

Set if the query can travel upstream.

QUERY_TYPE_DOWNSTREAM 

Set if the query can travel downstream.

QUERY_TYPE_SERIALIZED 

Set if the query should be serialized with data flow.

◆ Rank

enum Gst::Rank
Enumerator
RANK_NONE 

Will be chosen last or not at all.

RANK_MARGINAL 

Unlikely to be chosen.

RANK_SECONDARY 

Likely to be chosen.

RANK_PRIMARY 

Will be chosen first.

◆ SchedulingFlags

Enumerator
SCHEDULING_FLAG_SEEKABLE 

If seeking is possible.

SCHEDULING_FLAG_SEQUENTIAL 

If sequential access is recommended.

SCHEDULING_FLAG_BANDWIDTH_LIMITED 

If bandwidth is limited and buffering possible (since 1.2).

◆ SeekFlags

Enumerator
SEEK_FLAG_NONE 

No flag.

SEEK_FLAG_FLUSH 

Flush pipeline.

SEEK_FLAG_ACCURATE 

Accurate position is requested, this might be considerably slower for some formats.

SEEK_FLAG_KEY_UNIT 

Seek to the nearest keyframe.

This might be faster but less accurate.

SEEK_FLAG_SEGMENT 

Perform a segment seek.

SEEK_FLAG_TRICKMODE 

When doing fast forward or fast reverse playback, allow elements to skip frames instead of generating all frames.

(Since 1.6).

SEEK_FLAG_SKIP 

Deprecated backward compatibility flag, replaced by Gst::SEEK_FLAG_TRICKMODE.

SEEK_FLAG_SNAP_BEFORE 

Go to a location before the requested position, if Gst::SEEK_FLAG_KEY_UNIT this means the keyframe at or before the requested position the one at or before the seek target.

SEEK_FLAG_SNAP_AFTER 

Go to a location after the requested position, if Gst::SEEK_FLAG_KEY_UNIT this means the keyframe at of after the requested position.

SEEK_FLAG_SNAP_NEAREST 

Go to a position near the requested position, if Gst::SEEK_FLAG_KEY_UNIT this means the keyframe closest to the requested position, if both keyframes are at an equal distance, behaves like Gst::SEEK_FLAG_SNAP_BEFORE.

SEEK_FLAG_TRICKMODE_KEY_UNITS 

When doing fast forward or fast reverse playback, request that elements only decode keyframes and skip all other content, for formats that have keyframes.

(Since 1.6).

SEEK_FLAG_TRICKMODE_NO_AUDIO 

When doing fast forward or fast reverse playback, request that audio decoder elements skip decoding and output only gap events or silence.

(Since 1.6).

◆ SeekType

Enumerator
SEEK_TYPE_NONE 

No change in position is required.

SEEK_TYPE_SET 

Absolute position is requested.

SEEK_TYPE_END 

Relative position to duration is requested.

◆ State

enum Gst::State
Enumerator
STATE_VOID_PENDING 

No pending state.

STATE_NULL 

The nullptr state or initial state of an element.

STATE_READY 

The element is ready to go to PAUSED.

STATE_PAUSED 

The element is PAUSED, it is ready to accept and process data.

Sink elements however only accept one buffer and then block.

STATE_PLAYING 

The element is PLAYING, the Gst::Clock is running and the data is flowing.

◆ StateChange

Enumerator
STATE_CHANGE_NULL_TO_READY 

State change from nullptr to READY.

  • The element must check if the resources it needs are available. Device sinks and -sources typically try to probe the device to constrain their caps.
  • The element opens the device (in case feature need to be probed).
STATE_CHANGE_READY_TO_PAUSED 

State change from READY to PAUSED.

  • The element pads are activated in order to receive data in PAUSED. Streaming threads are started.
  • Some elements might need to return Gst::STATE_CHANGE_ASYNC and complete the state change when they have enough information. It is a requirement for sinks to return Gst::STATE_CHANGE_ASYNC and complete the state change when they receive the first buffer or Gst::EVENT_EOS (preroll). Sinks also block the dataflow when in PAUSED.
  • A pipeline resets the running_time to 0.
  • Live sources return Gst::STATE_CHANGE_NO_PREROLL and don't generate data.
STATE_CHANGE_PAUSED_TO_PLAYING 

State change from PAUSED to PLAYING.

  • Most elements ignore this state change.
  • The pipeline selects a Gst::Clock and distributes this to all the children before setting them to PLAYING. This means that it is only allowed to synchronize on the Gst::Clock in the PLAYING state.
  • The pipeline uses the Gst::Clock and the running_time to calculate the base_time. The base_time is distributed to all children when performing the state change.
  • Sink elements stop blocking on the preroll buffer or event and start rendering the data.
  • Sinks can post Gst::MESSAGE_EOS in the PLAYING state. It is not allowed to post Gst::MESSAGE_EOS when not in the PLAYING state.
  • While streaming in PAUSED or PLAYING elements can create and remove sometimes pads.
  • Live sources start generating data and return Gst::STATE_CHANGE_SUCCESS.
STATE_CHANGE_PLAYING_TO_PAUSED 

State change from PLAYING to PAUSED.

  • Most elements ignore this state change.
  • The pipeline calculates the running_time based on the last selected Gst::Clock and the base_time. It stores this information to continue playback when going back to the PLAYING state.
  • Sinks unblock any Gst::Clock wait calls.
  • When a sink does not have a pending buffer to play, it returns Gst::STATE_CHANGE_ASYNC from this state change and completes the state change when it receives a new buffer or an Gst::EVENT_EOS.
  • Any queued Gst::MESSAGE_EOS items are removed since they will be reposted when going back to the PLAYING state. The EOS messages are queued in Gst::Bin containers.
  • Live sources stop generating data and return Gst::STATE_CHANGE_NO_PREROLL.
STATE_CHANGE_PAUSED_TO_READY 

State change from PAUSED to READY.

  • Sinks unblock any waits in the preroll.
  • Elements unblock any waits on devices
  • Chain or get_range functions return Gst::FLOW_FLUSHING.
  • The element pads are deactivated so that streaming becomes impossible and all streaming threads are stopped.
  • The sink forgets all negotiated formats
  • Elements remove all sometimes pads
STATE_CHANGE_READY_TO_NULL 

State change from READY to nullptr.

  • Elements close devices
  • Elements reset any internal state.

◆ StateChangeReturn

Enumerator
STATE_CHANGE_FAILURE 

The state change failed.

STATE_CHANGE_SUCCESS 

The state change succeeded.

STATE_CHANGE_ASYNC 

The state change will happen asynchronously.

STATE_CHANGE_NO_PREROLL 

The state change succeeded but the element cannot produce data in Gst::STATE_PAUSED.

This typically happens with live sources.

◆ StreamFlags

Enumerator
STREAM_FLAG_NONE 

This stream has no special attributes.

STREAM_FLAG_SPARSE 

This stream is a sparse stream (e.g.

a subtitle stream), data may flow only in irregular intervals with large gaps in between.

STREAM_FLAG_SELECT 

This stream should be selected by default.

This flag may be used by demuxers to signal that a stream should be selected by default in a playback scenario.

STREAM_FLAG_UNSELECT 

This stream should not be selected by default.

This flag may be used by demuxers to signal that a stream should not be selected by default in a playback scenario, but only if explicitly selected by the user (e.g. an audio track for the hard of hearing or a director's commentary track).

◆ StreamStatusType

Enumerator
STREAM_STATUS_TYPE_CREATE 

A new thread need to be created.

STREAM_STATUS_TYPE_ENTER 

A thread entered its loop function.

STREAM_STATUS_TYPE_LEAVE 

A thread left its loop function.

STREAM_STATUS_TYPE_DESTROY 

A thread is destroyed.

STREAM_STATUS_TYPE_START 

A thread is started.

STREAM_STATUS_TYPE_PAUSE 

A thread is paused.

STREAM_STATUS_TYPE_STOP 

A thread is stopped.

◆ StreamVolumeFormat

Enumerator
STREAM_VOLUME_FORMAT_LINEAR 

Linear scale factor, 1.0 = 100%.

STREAM_VOLUME_FORMAT_CUBIC 

Cubic volume scale.

STREAM_VOLUME_FORMAT_DB 

Logarithmic volume scale (dB, amplitude not power).

◆ StructureChangeType

Enumerator
STRUCTURE_CHANGE_TYPE_PAD_LINK 

Pad linking is starting or done.

STRUCTURE_CHANGE_TYPE_PAD_UNLINK 

Pad unlinking is starting or done.

◆ Tag

enum Gst::Tag

Identifiers for commonly-used tags.

Enumerator
TAG_TITLE 

The commonly used title (string).

The title as it should be displayed, e.g. 'The Doll House'.

TAG_TITLE_SORTNAME 

The commonly used title, as used for sorting (string).

The title as it should be sorted, e.g. 'Doll House, The'.

Since 0.10.15.

TAG_ARTIST 

The person(s) responsible for the recording (string).

The artist name as it should be displayed, e.g. 'Jimi Hendrix' or 'The Guitar Heroes'.

TAG_ARTIST_SORTNAME 

The person(s) responsible for the recording, as used for sorting (string).

The artist name as it should be sorted, e.g. 'Hendrix, Jimi' or 'Guitar Heroes, The'.

Since 0.10.15.

TAG_ALBUM 

The album containing this data (string).

The album name as it should be displayed, e.g. 'The Jazz Guitar'.

TAG_ALBUM_SORTNAME 

The album containing this data, as used for sorting (string).

The album name as it should be sorted, e.g. 'Jazz Guitar, The'.

Since 0.10.15.

TAG_DATE 

The date the data was created (GDate structure).

TAG_GENRE 

The genre this data belongs to (string).

TAG_COMMENT 

The free text commenting the data (string).

TAG_EXTENDED_COMMENT 

The Key/value text commenting the data (string).

Must be in the form of 'key=comment' or 'key[lc]=comment' where 'lc' is an ISO-639 language code.

This tag is used for unknown Vorbis comment tags, unknown APE tags and certain ID3v2 comment fields.

Since 0.10.10.

TAG_TRACK_NUMBER 

The track number inside a collection (unsigned integer).

TAG_TRACK_COUNT 

The count of tracks inside collection this track belongs to (unsigned integer).

TAG_ALBUM_VOLUME_NUMBER 

The disc number inside a collection (unsigned integer).

TAG_ALBUM_VOLUME_COUNT 

The count of discs inside collection this disc belongs to (unsigned integer).

TAG_LOCATION 

The original location of file as a URI (string).

TAG_DESCRIPTION 

The short text describing the content of the data (string).

TAG_VERSION 

The version of this data (string).

TAG_ISRC 

The International Standard Recording Code - see http://www.ifpi.org/isrc/ (string).

TAG_ORGANIZATION 

The organization (string).

TAG_COPYRIGHT 

The copyright notice of the data (string).

TAG_COPYRIGHT_URI 

The URI to location where copyright details can be found (string).

Since 0.10.14.

TAG_COMPOSER 

The person(s) who composed the recording (string).

Since 0.10.15.

TAG_CONTACT 

The contact information (string).

TAG_LICENSE 

The license of the data (string).

TAG_LICENSE_URI 

The URI to the location where license details can be found (string).

Since 0.10.14.

TAG_PERFORMER 

The person(s) performing (string).

TAG_DURATION 

The length in GStreamer time units (nanoseconds) (unsigned 64-bit integer).

TAG_CODEC 

The codec the data is stored in (string).

TAG_VIDEO_CODEC 

The codec the video data is stored in (string).

TAG_AUDIO_CODEC 

The codec the audio data is stored in (string).

TAG_BITRATE 

The exact or average bitrate in bits/s (unsigned integer).

TAG_NOMINAL_BITRATE 

The nominal bitrate in bits/s (unsigned integer).

TAG_MINIMUM_BITRATE 

The minimum bitrate in bits/s (unsigned integer).

TAG_MAXIMUM_BITRATE 

The maximum bitrate in bits/s (unsigned integer).

TAG_SERIAL 

The serial number of track (unsigned integer).

TAG_ENCODER 

The encoder used to encode this stream (string).

TAG_ENCODER_VERSION 

The version of the encoder used to encode this stream (unsigned integer).

TAG_TRACK_GAIN 

The track gain in db (double).

TAG_TRACK_PEAK 

The peak of the track (double).

TAG_ALBUM_GAIN 

The album gain in db (double).

TAG_ALBUM_PEAK 

The peak of the album (double).

TAG_REFERENCE_LEVEL 

The reference level of track and album gain values (double).

Since 0.10.12.

TAG_LANGUAGE_CODE 

The language code (ISO-639-1) (string) of the content.

TAG_IMAGE 

The image (buffer) (buffer caps should specify the content type and preferably also set "image-type" field as GstTagImageType).

Since 0.10.6

TAG_PREVIEW_IMAGE 

The image that is meant for preview purposes, e.g. small icon-sized version (buffer) (buffer caps should specify the content type).

Since 0.10.7.

TAG_ATTACHMENT 

The generic file attachment (buffer) (buffer caps should specify the content type and if possible set "filename" to the file name of the attachment).

Since 0.10.21.

TAG_BEATS_PER_MINUTE 

The number of beats per minute in audio (double).

Since 0.10.12.

TAG_KEYWORDS 

The comma separated keywords describing the content (string).

Since 0.10.21

TAG_GEO_LOCATION_NAME 

The human readable descriptive location of where the media has been recorded or produced.

(string).

Since 0.10.21.

TAG_GEO_LOCATION_LATITUDE 

The geo latitude location of where the media has been recorded or produced in degrees according to WGS84 (zero at the equator, negative values for southern latitudes) (double).

Since 0.10.21.

TAG_GEO_LOCATION_LONGITUDE 

The geo longitude location of where the media has been recorded or produced in degrees according to WGS84 (zero at the prime meridian in Greenwich/UK, negative values for western longitudes).

(double).

Since 0.10.21.

TAG_GEO_LOCATION_ELEVATION 

The geo elevation of where the media has been recorded or produced in meters according to WGS84 (zero is average sea level) (double).

Since 0.10.21.

◆ TagFlag

Enumerator
TAG_FLAG_UNDEFINED 

Undefined flag.

TAG_FLAG_META 

Tag is meta data.

TAG_FLAG_ENCODED 

Tag is encoded.

TAG_FLAG_DECODED 

Tag is decoded.

TAG_FLAG_COUNT 

Number of tag flags.

◆ TagMergeMode

Enumerator
TAG_MERGE_UNDEFINED 

Undefined merge mode.

TAG_MERGE_REPLACE_ALL 

Replace all tags (clear list and append).

TAG_MERGE_REPLACE 

Replace tags.

TAG_MERGE_APPEND 

Append tags.

TAG_MERGE_PREPEND 

Prepend tags.

TAG_MERGE_KEEP 

Keep existing tags.

TAG_MERGE_KEEP_ALL 

Keep all existing tags.

TAG_MERGE_COUNT 

The number of merge modes.

◆ TaskState

Enumerator
TASK_STARTED 

The task is started and running.

TASK_STOPPED 

The task is stopped.

TASK_PAUSED 

The task is paused.

◆ TocEntryType

Enumerator
TOC_ENTRY_TYPE_ANGLE 

Entry is an angle (i.e. an alternative).

TOC_ENTRY_TYPE_VERSION 

Entry is a version (i.e.

alternative).

TOC_ENTRY_TYPE_EDITION 

Entry is an edition (i.e.

alternative).

TOC_ENTRY_TYPE_INVALID 

Invalid entry type value.

TOC_ENTRY_TYPE_TITLE 

Entry is a title (i.e.

a part of a sequence).

TOC_ENTRY_TYPE_TRACK 

Entry is a track (i.e.

a part of a sequence).

TOC_ENTRY_TYPE_CHAPTER 

Entry is a chapter (i.e.

a part of a sequence).

◆ TocLoopType

Enumerator
TOC_LOOP_NONE 

Single forward playback.

TOC_LOOP_FORWARD 

Repeat forward.

TOC_LOOP_REVERSE 

Repeat backward.

TOC_LOOP_PING_PONG 

Repeat forward and backward.

◆ TocScope

Enumerator
TOC_SCOPE_GLOBAL 

Global TOC representing all selectable options (this is what applications are usually interested in).

TOC_SCOPE_CURRENT 

TOC for the currently active/selected stream (this is a TOC representing the current stream from start to EOS, and is what a TOC writer / muxer is usually interested in; it will usually be a subset of the global TOC, e.g.

just the chapters of the current title, or the chapters selected for playback from the current title).

◆ TypeFindProbability

Enumerator
TYPE_FIND_NONE 

Type undetected.

TYPE_FIND_MINIMUM 

Unlikely typefind.

TYPE_FIND_POSSIBLE 

Possible type detected.

TYPE_FIND_LIKELY 

Likely a type was detected.

TYPE_FIND_NEARLY_CERTAIN 

Nearly certain that a type was detected.

TYPE_FIND_MAXIMUM 

Very certain a type was detected.

◆ URIError

Enumerator
URI_ERROR_UNSUPPORTED_PROTOCOL 

The protocol is not supported.

URI_ERROR_BAD_URI 

There was a problem with the URI.

URI_ERROR_BAD_STATE 

Could not set or change the URI because the URI handler was in a state where that is not possible or not permitted.

URI_ERROR_BAD_REFERENCE 

There was a problem with the entity that the URI references.

◆ URIType

Enumerator
URI_UNKNOWN 

The URI direction is unknown.

URI_SINK 

The URI is a consumer.

URI_SRC 

The URI is a producer.

◆ VideoBufferFlags

Enumerator
VIDEO_BUFFER_FLAG_INTERLACED 

If the Gst::Buffer is interlaced.

In mixed interlace-mode, this flags specifies if the frame is interlaced or progressive.

VIDEO_BUFFER_FLAG_TFF 

If the Gst::Buffer is interlaced, then the first field in the video frame is the top field.

If unset, the bottom field is first.

VIDEO_BUFFER_FLAG_RFF 

If the Gst::Buffer is interlaced, then the first field (as defined by the Gst::VIDEO_BUFFER_TFF flag setting) is repeated.

VIDEO_BUFFER_FLAG_ONEFIELD 

If the Gst::Buffer is interlaced, then only the first field (as defined by the Gst::VIDEO_BUFFER_TFF flag setting) is to be displayed.

VIDEO_BUFFER_FLAG_MULTIPLE_VIEW 

The Gst::Buffer contains one or more specific views, such as left or right eye view.

This flags is set on any buffer that contains non-mono content - even for streams that contain only a single viewpoint. In mixed mono / non-mono streams, the absense of the flag marks mono buffers.

VIDEO_BUFFER_FLAG_FIRST_IN_BUNDLE 

When conveying stereo/multiview content with frame-by-frame methods, this flag marks the first buffer in a bundle of frames that belong together.

VIDEO_BUFFER_FLAG_LAST 

Offset to define more flags.

◆ VideoChromaFlags

Enumerator
VIDEO_CHROMA_FLAG_NONE 

No flags.

VIDEO_CHROMA_FLAG_INTERLACED 

The input is interlaced.

◆ VideoChromaMethod

Enumerator
VIDEO_CHROMA_METHOD_NEAREST 

Duplicates the chroma samples when upsampling and drops when subsampling.

VIDEO_CHROMA_METHOD_LINEAR 

Uses linear interpolation to reconstruct missing chroma and averaging to subsample.

◆ VideoChromaSite

Enumerator
VIDEO_CHROMA_SITE_UNKNOWN 

Unknown cositing.

VIDEO_CHROMA_SITE_NONE 

No cositing.

VIDEO_CHROMA_SITE_H_COSITED 

Chroma is horizontally cosited.

VIDEO_CHROMA_SITE_V_COSITED 

Chroma is vertically cosited.

VIDEO_CHROMA_SITE_ALT_LINE 

Choma samples are sited on alternate lines.

VIDEO_CHROMA_SITE_COSITED 

Chroma samples cosited with luma samples.

VIDEO_CHROMA_SITE_JPEG 

Jpeg style cositing, also for mpeg1 and mjpeg.

VIDEO_CHROMA_SITE_MPEG2 

Mpeg2 style cositing.

VIDEO_CHROMA_SITE_DV 

DV style cositing.

◆ VideoFlags

Enumerator
VIDEO_FLAG_NONE 

No flags.

VIDEO_FLAG_VARIABLE_FPS 

A variable fps is selected, fps_n and fps_d denote the maximum fps of the video.

VIDEO_FLAG_PREMULTIPLIED_ALPHA 

Each color has been scaled by the alpha value.

◆ VideoFormatFlags

Enumerator
VIDEO_FORMAT_FLAG_YUV 

The video format is YUV, components are numbered 0=Y, 1=U, 2=V.

VIDEO_FORMAT_FLAG_RGB 

The video format is RGB, components are numbered 0=R, 1=G, 2=B.

VIDEO_FORMAT_FLAG_GRAY 

The video is gray, there is one gray component with index 0.

VIDEO_FORMAT_FLAG_ALPHA 

The video format has an alpha components with the number 3.

VIDEO_FORMAT_FLAG_LE 

The video format has data stored in little endianness.

VIDEO_FORMAT_FLAG_PALETTE 

The video format has a palette.

The palette is stored in the second plane and indexes are stored in the first plane.

VIDEO_FORMAT_FLAG_COMPLEX 

The video format has a complex layout that can't be described with the usual information in the Gst::VideoFormatInfo.

VIDEO_FORMAT_FLAG_UNPACK 

This format can be used in a Gst::VideoFormatUnpack and Gst::VideoFormatPack function.

VIDEO_FORMAT_FLAG_TILED 

The format is tiled, there is tiling information in the last plane.

◆ VideoFrameFlags

Enumerator
VIDEO_FRAME_FLAG_NONE 

No flags.

VIDEO_FRAME_FLAG_INTERLACED 

The video frame is interlaced.

In mixed interlace-mode, this flag specifies if the frame is interlaced or progressive.

VIDEO_FRAME_FLAG_TFF 

The video frame has the top field first.

VIDEO_FRAME_FLAG_RFF 

The video frame has the repeat flag.

VIDEO_FRAME_FLAG_ONEFIELD 

The video frame has one field.

VIDEO_FRAME_FLAG_MULTIPLE_VIEW 

The video contains one or more non-mono views.

VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE 

The video frame is the first in a set of corresponding views provided as sequential frames.

◆ VideoFrameMapFlags

Enumerator
VIDEO_FRAME_MAP_FLAG_NO_REF 

Don't take another reference of the buffer and store it in the GstVideoFrame.

This makes sure that the buffer stays writable while the frame is mapped, but requires that the buffer reference stays valid until the frame is unmapped again.

VIDEO_FRAME_MAP_FLAG_LAST 

Offset to define more flags.

◆ VideoInterlaceMode

Enumerator
VIDEO_INTERLACE_MODE_PROGRESSIVE 

All frames are progressive.

VIDEO_INTERLACE_MODE_INTERLEAVED 

2 fields are interleaved in one video frame.

Extra buffer flags describe the field order.

VIDEO_INTERLACE_MODE_MIXED 

Frames contains both interlaced and progressive video, the buffer flags describe the frame and fields.

VIDEO_INTERLACE_MODE_FIELDS 

2 fields are stored in one buffer, use the frame ID to get access to the required field.

For multiview (the 'views' property > 1) the fields of view N can be found at frame ID (N * 2) and (N * 2) + 1. Each field has only half the amount of lines as noted in the height property. This mode requires multiple GstVideoMeta metadata to describe the fields.

◆ VideoMultiviewFlags

Enumerator
VIDEO_MULTIVIEW_FLAGS_NONE 

No flags.

VIDEO_MULTIVIEW_FLAGS_RIGHT_VIEW_FIRST 

For stereo streams, the normal arrangement of left and right views is reversed.

VIDEO_MULTIVIEW_FLAGS_LEFT_FLIPPED 

The left view is vertically mirrored.

VIDEO_MULTIVIEW_FLAGS_LEFT_FLOPPED 

The left view is horizontally mirrored.

VIDEO_MULTIVIEW_FLAGS_RIGHT_FLIPPED 

The right view is vertically mirrored.

VIDEO_MULTIVIEW_FLAGS_RIGHT_FLOPPED 

The right view is horizontally mirrored.

VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT 

For frame-packed multiview modes, indicates that the individual views have been encoded with half the true width or height and should be scaled back up for display.

This flag is used for overriding input layout interpretation by adjusting pixel-aspect-ratio. For side-by-side, column interleaved or checkerboard packings, the pixel width will be doubled. For row interleaved and top-bottom encodings, pixel height will be doubled.

VIDEO_MULTIVIEW_FLAGS_MIXED_MONO 

The video stream contains both mono and multiview portions, signalled on each buffer by the absence or presence of the GST_VIDEO_BUFFER_FLAG_MULTIPLE_VIEW buffer flag.

◆ VideoMultiviewFramePacking

Enumerator
VIDEO_MULTIVIEW_FRAME_PACKING_NONE 

A special value indicating no frame packing info.

VIDEO_MULTIVIEW_FRAME_PACKING_MONO 

All frames are monoscopic.

VIDEO_MULTIVIEW_FRAME_PACKING_LEFT 

All frames represent a left-eye view.

VIDEO_MULTIVIEW_FRAME_PACKING_RIGHT 

All frames represent a right-eye view.

VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE 

Left and right eye views are provided in the left and right half of the frame respectively.

VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE_QUINCUNX 

Left and right eye views are provided in the left and right half of the frame, but have been sampled using quincunx method, with half-pixel offset between the 2 views.

VIDEO_MULTIVIEW_FRAME_PACKING_COLUMN_INTERLEAVED 

Alternating vertical columns of pixels represent the left and right eye view respectively.

VIDEO_MULTIVIEW_FRAME_PACKING_ROW_INTERLEAVED 

Alternating horizontal rows of pixels represent the left and right eye view respectively.

VIDEO_MULTIVIEW_FRAME_PACKING_TOP_BOTTOM 

The top half of the frame contains the left eye, and the bottom half the right eye.

VIDEO_MULTIVIEW_FRAME_PACKING_CHECKERBOARD 

Pixels are arranged with alternating pixels representing left and right eye views in a checkerboard fashion.

◆ VideoMultiviewMode

Enumerator
VIDEO_MULTIVIEW_MODE_NONE 

A special value indicating no multiview information.

Used in GstVideoInfo and other places to indicate that no specific multiview handling has been requested or provided. This value is never carried on caps.

VIDEO_MULTIVIEW_MODE_MONO 

All frames are monoscopic.

VIDEO_MULTIVIEW_MODE_LEFT 

All frames represent a left-eye view.

VIDEO_MULTIVIEW_MODE_RIGHT 

All frames represent a right-eye view.

VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE 

Left and right eye views are provided in the left and right half of the frame respectively.

VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX 

Left and right eye views are provided in the left and right half of the frame, but have been sampled using quincunx method, with half-pixel offset between the 2 views.

VIDEO_MULTIVIEW_MODE_COLUMN_INTERLEAVED 

Alternating vertical columns of pixels represent the left and right eye view respectively.

VIDEO_MULTIVIEW_MODE_ROW_INTERLEAVED 

Alternating horizontal rows of pixels represent the left and right eye view respectively.

VIDEO_MULTIVIEW_MODE_TOP_BOTTOM 

The top half of the frame contains the left eye, and the bottom half the right eye.

VIDEO_MULTIVIEW_MODE_CHECKERBOARD 

Pixels are arranged with alternating pixels representing left and right eye views in a checkerboard fashion.

VIDEO_MULTIVIEW_MODE_FRAME_BY_FRAME 

Left and right eye views are provided in separate frames alternately.

VIDEO_MULTIVIEW_MODE_MULTIVIEW_FRAME_BY_FRAME 

Multiple independent views are provided in separate frames in sequence.

This method only applies to raw video buffers at the moment. Specific view identification is via the Gst::VideoMultiviewMeta and Gst::VideoMeta(s) on raw video buffers.

VIDEO_MULTIVIEW_MODE_SEPARATED 

Multiple views are provided as separate Gst::Memory framebuffers attached to each Gst::Buffer, described by the Gst::VideoMultiviewMeta and Gst::VideoMeta(s).

◆ VideoPackFlags

Enumerator
VIDEO_PACK_FLAG_NONE 

No flag.

VIDEO_PACK_FLAG_TRUNCATE_RANGE 

When the source has a smaller depth than the target format, set the least significant bits of the target to 0.

This is likely sightly faster but less accurate. When this flag is not specified, the most significant bits of the source are duplicated in the least significant bits of the destination.

VIDEO_PACK_FLAG_INTERLACED 

The source is interlaced.

The unpacked format will be interlaced as well with each line containing information from alternating fields. (Since 1.2).

Function Documentation

◆ deinit()

void Gst::deinit ( )

Clean up any resources created by GStreamer upon initialization.

It is normally not needed to call this function in a normal application as the resources will automatically be freed when the program terminates. This function is therefore mostly used by testsuites and other memory profiling tools.

After this call GStreamer (including this method) should not be used anymore.

◆ formats_contain()

bool Gst::formats_contain ( const Glib::ArrayHandle< Format >&  formats,
Format  format 
)

Sees if the given format is inside the array of formats.

Parameters
formatsThe array of formats to search.
formatThe format to find.
Returns
true If the format is found inside the array.

◆ get_core_error_quark()

Glib::QueryQuark Gst::get_core_error_quark ( )

Gets the error domain for core system.

Errors in this domain will be from the Gst::CoreError enumeration.

Returns
The quark associated with the core error domain.

◆ get_format()

Format Gst::get_format ( const Glib::ustring &  nick)

Returns the format registered with the given nick.

Parameters
nickThe nick of the format.
Returns
The format with nick or Gst::FORMAT_UNDEFINED if the format was not registered.

◆ get_format_details()

bool Gst::get_format_details ( Format  format,
FormatDefinition def 
)

Gets details about the given format.

Parameters
formatThe format to get details of.
defThe Gst::FormatDefinition in which to store the details of the format.
Returns
true if successful, false otherwise. MT safe.

◆ get_fractional_seconds()

guint Gst::get_fractional_seconds ( Gst::ClockTime  time)

Gets the fractional component (milli, micro and nano seconds) of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The fractional component of the Gst::ClockTime.

◆ get_hours()

guint Gst::get_hours ( Gst::ClockTime  time)

Gets the hour component of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The hour component of the Gst::ClockTime.

◆ get_library_error_quark()

Glib::QueryQuark Gst::get_library_error_quark ( )

Gets the error domain for library loading.

Errors in this domain will be from the gst::libraryerror enumeration.

Returns
The quark associated with the library error domain.

◆ get_microseconds()

guint Gst::get_microseconds ( Gst::ClockTime  time)

Gets the microseconds component of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The microseconds component of the Gst::ClockTime.

◆ get_milliseconds()

guint Gst::get_milliseconds ( Gst::ClockTime  time)

Gets the milliseconds component of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The milliseconds component of the Gst::ClockTime.

◆ get_minutes()

guint Gst::get_minutes ( Gst::ClockTime  time)

Gets the minute component of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The minute component of the Gst::ClockTime.

◆ get_nanoseconds()

guint Gst::get_nanoseconds ( Gst::ClockTime  time)

Gets the nanoseconds component of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The nanoseconds component of the Gst::ClockTime.

◆ get_option_group()

Glib::OptionGroup Gst::get_option_group ( )

Returns a Glib::OptionGroup with GStreamer's argument specifications.

The group is set up to use standard GOption callbacks, so when using this group in combination with GOption parsing methods, all argument parsing and initialization is automated.

This function is useful if you want to integrate GStreamer with other libraries that use GOption (see g_option_context_add_group() ).

If you use this function, you should make sure you initialise the GLib threading system as one of the very first things in your program.

Returns
A pointer to GStreamer's option group.
Examples
basics/init_gstreamermm.cc.

◆ get_resource_error_quark()

Glib::QueryQuark Gst::get_resource_error_quark ( )

Gets error domain for resource handling.

Errors in this domain will be from the Gst::ResourceError enumeration.

Returns
The quark associated with the resource error domain.

◆ get_seconds()

guint Gst::get_seconds ( Gst::ClockTime  time)

Gets the seconds component of Gst::ClockTime.

Parameters
timeThe Gst::ClockTime to parse.
Returns
The seconds component of the Gst::ClockTime.

◆ get_stream_error_quark()

Glib::QueryQuark Gst::get_stream_error_quark ( )

Gets error domain for media stream processing.

Errors in this domain will be from the Gst::StreamError enumeration.

Returns
The quark associated with the media stream error domain.

◆ init() [1/2]

void Gst::init ( )

Initializes gstreamermm without parsing command line options.

Either the Gst::init() or Gst::init_check() functions with command line parsing should be called to initialize gstreamermm before calling any other GLib functions. If this is not an option, your program must initialize the GLib thread system using Glib::thread_init() before any other GLib functions are called and use either this function or Gst::init_check() without the command line arguments before calling any gstreamermm functions.

Note: This function will terminate your program if it was unable to initialize GStreamer for some reason. If you want your program to fall back, use Gst::init_check() instead.

Examples
basics/bin.cc, basics/bus.cc, basics/dynamic_pads.cc, basics/element_factory.cc, and basics/init_gstreamermm.cc.

◆ init() [2/2]

void Gst::init ( int &  argc,
char **&  argv 
)

Initializes gstreamermm parsing command line arguments.

Either this function or Gst::init_check() with command line parsing should be called to initialize gstreamermm before calling any other GLib functions. If this is not an option, your program must initialize the GLib thread system using Glib::thread_init() before any other GLib functions are called and use either Gst::init(), or Gst::init_check() without the command line arguments before calling any gstreamermm functions.

Note: This function will terminate your program if it was unable to initialize GStreamer for some reason. If you want your program to fall back, use Gst::init_check() instead.

WARNING: This function does not work in the same way as corresponding functions in other glib-style libraries, such as gtk_init(). In particular, unknown command line options cause this function to abort program execution.

Parameters
argcReference to application's argc.
argvReference to application's argv.

◆ init_check() [1/2]

bool Gst::init_check ( )

Initializes gstreamermm gracefully without parsing command line arguments.

Either the Gst::init() or Gst::init_check() functions with command line parsing should be called to initialize gstreamermm before calling any other GLib functions. If this is not an option, your program must initialize the GLib thread system using Glib::thread_init() before any other GLib functions are called and use either this function or Gst::init() without the command line arguments before calling any gstreamermm functions.

This function will return false if GStreamer could not be initialized for some reason. If you want your program to fail fatally, use Gst::init() instead.

Returns
true if GStreamer could be initialized.
Exceptions
Glib::Error

◆ init_check() [2/2]

bool Gst::init_check ( int &  argc,
char **&  argv 
)

Initializes gstreamermm gracefully parsing command line arguments.

Either this function or Gst::init() with command line parsing should be called to initialize gstreamermm before calling any other GLib functions. If this is not an option, your program must initialize the GLib thread system using Glib::thread_init() before any other GLib functions are called and use either Gst::init() or Gst::init_check() without the command line arguments before calling any gstreamermm functions.

This function will return false if GStreamer could not be initialized for some reason. If you want your program to fail fatally, use Gst::init() instead.

Parameters
argcReference to application's argc.
argvReference to application's argv.
Returns
true if GStreamer could be initialized.
Exceptions
Glib::Error

◆ is_initialized()

bool Gst::is_initialized ( void  )

Use this function to check if GStreamer has been initialized.

Returns
true if initialization has been done, false otherwise.

◆ iterate_format_definitions()

IteratorBasic< const FormatDefinition > Gst::iterate_format_definitions ( )

Iterates all the registered formats.

The format definitions are read only.

Returns
a Gst::IteratorBasic of Gst::FormatDefinition.

◆ operator<<()

std::ostream & Gst::operator<< ( std::ostream stream,
Tag  tag 
)

An Output stream operator for the Gst::Tag enum (this will output a string).

◆ register_format()

Format Gst::register_format ( const Glib::ustring &  nick,
const Glib::ustring &  description 
)

Creates a new Gst::Format based on the nick or return an already registered format with that nick.

Parameters
nickThe nick of the new format.
descriptionThe description of the new format.
Returns
A new Gst::Format or an already registered format with the same nick. MT safe.

◆ registry_fork_is_enabled()

bool Gst::registry_fork_is_enabled ( )

By default GStreamer will perform scanning and rebuilding of the registry file using a helper child process.

Applications might want to disable this behaviour with the gst_registry_fork_set_enabled() function, in which case new plugins are scanned (and loaded) into the application process.

Returns
true if GStreamer will use the child helper process when rebuilding the registry.

◆ registry_fork_set_enabled()

void Gst::registry_fork_set_enabled ( bool  enabled)

Applications might want to disable/enable spawning of a child helper process when rebuilding the registry.

See gst_registry_fork_is_enabled() for more information.

Parameters
enabledWhether rebuilding the registry can use a temporary child helper process.

◆ segtrap_is_enabled()

bool Gst::segtrap_is_enabled ( )

Some functions in the GStreamer core might install a custom SIGSEGV handler to better catch and report errors to the application.

Currently this feature is enabled by default when loading plugins.

Applications might want to disable this behaviour with the gst_segtrap_set_enabled() function. This is typically done if the application wants to install its own handler without GStreamer interfering.

Returns
true if GStreamer is allowed to install a custom SIGSEGV handler.

◆ segtrap_set_enabled()

void Gst::segtrap_set_enabled ( bool  enabled)

Applications might want to disable/enable the SIGSEGV handling of the GStreamer core.

See gst_segtrap_is_enabled() for more information.

Parameters
enabledWhether a custom SIGSEGV handler should be installed.

◆ update_registry()

bool Gst::update_registry ( )

Forces GStreamer to re-scan its plugin paths and update the default plugin registry.

Applications will almost never need to call this function, it is only useful if the application knows new plugins have been installed (or old ones removed) since the start of the application (or, to be precise, the first call to gst_init()) and the application wants to make use of any newly-installed plugins without restarting the application.

Applications should assume that the registry update is neither atomic nor thread-safe and should therefore not have any dynamic pipelines running (including the playbin and decodebin elements) and should also not create any elements or access the GStreamer registry while the update is in progress.

Note that this function may block for a significant amount of time.

Returns
true if the registry has been updated successfully (does not imply that there were changes), otherwise false.

◆ version() [1/2]

void Gst::version ( guint &  major,
guint &  minor,
guint &  micro 
)

Gets the version number of the gstreamermm library.

Parameters
majorPointer to a guint to store the major version number.
minorPointer to a guint to store the minor version number.
microPointer to a guint to store the micro version number.

◆ version() [2/2]

void Gst::version ( guint &  major,
guint &  minor,
guint &  micro,
guint &  nano 
)

Gets the version number of the GStreamer library.

Parameters
majorThe major version number.
minorThe minor version number.
microThe micro version number.
nanoThe nano version number.
Examples
basics/init_gstreamermm.cc.

◆ version_string()

Glib::ustring Gst::version_string ( )

This function returns a string that is useful for describing this version of GStreamer to the outside world: user agent strings, logging, ...

Returns
A newly allocated string describing this version of GStreamer.

◆ wrap_init()

void Gst::wrap_init ( )

Initializes the main gstreamermm wrapping system.

There's no need to use this function directly; instead use Gst::init() or Gst::init_check().

◆ wrap_msg_derived()

template <typename T >
Glib::RefPtr< T > Gst::wrap_msg_derived ( GstMessage *  object,
bool  take_copy 
)

Variable Documentation

◆ CLOCK_TIME_NONE

const ClockTime Gst::CLOCK_TIME_NONE
extern

A constant to define an undefined clock time.

◆ MICRO_SECOND

const ClockTime Gst::MICRO_SECOND
extern

A constant that defines one GStreamer microsecond.

◆ MILLI_SECOND

const ClockTime Gst::MILLI_SECOND
extern

A constant that defines one GStreamer millisecond.

◆ NANO_SECOND

const ClockTime Gst::NANO_SECOND
extern

A constant that defines one GStreamer nanosecond.

◆ SECOND

const ClockTime Gst::SECOND
extern

A constant that defines one GStreamer second.