gi-gst-1.0.21: GStreamer bindings

CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria (inaki@blueleaf.cc)
Safe HaskellNone
LanguageHaskell2010

GI.Gst.Objects.Stream

Contents

Description

A high-level object representing a single stream. It might be backed, or not, by an actual flow of data in a pipeline (Pad).

A Stream does not care about data changes (such as decoding, encoding, parsing,...) as long as the underlying data flow corresponds to the same high-level flow (ex: a certain audio track).

A Stream contains all the information pertinent to a stream, such as stream-id, tags, caps, type, ...

Elements can subclass a Stream for internal usage (to contain information pertinent to streams of data).

Since: 1.10

Synopsis

Exported types

newtype Stream Source #

Memory-managed wrapper type.

Constructors

Stream (ManagedPtr Stream) 
Instances
GObject Stream Source # 
Instance details

Defined in GI.Gst.Objects.Stream

Methods

gobjectType :: IO GType #

HasParentTypes Stream Source # 
Instance details

Defined in GI.Gst.Objects.Stream

type ParentTypes Stream Source # 
Instance details

Defined in GI.Gst.Objects.Stream

type ParentTypes Stream = Object ': (Object ': ([] :: [Type]))

class (GObject o, IsDescendantOf Stream o) => IsStream o Source #

Type class for types which can be safely cast to Stream, for instance with toStream.

Instances
(GObject o, IsDescendantOf Stream o) => IsStream o Source # 
Instance details

Defined in GI.Gst.Objects.Stream

toStream :: (MonadIO m, IsStream o) => o -> m Stream Source #

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

noStream :: Maybe Stream Source #

A convenience alias for Nothing :: Maybe Stream.

Methods

getCaps

streamGetCaps Source #

Arguments

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

stream: a Stream

-> m (Maybe Caps)

Returns: The Caps for stream

Retrieve the caps for stream, if any

Since: 1.10

getStreamFlags

streamGetStreamFlags Source #

Arguments

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

stream: a Stream

-> m [StreamFlags]

Returns: The StreamFlags for stream

Retrieve the current stream flags for stream

Since: 1.10

getStreamId

streamGetStreamId Source #

Arguments

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

stream: a Stream

-> m (Maybe Text)

Returns: the stream ID of stream. Only valid during the lifetime of stream.

Returns the stream ID of stream.

Since: 1.10

getStreamType

streamGetStreamType Source #

Arguments

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

stream: a Stream

-> m [StreamType]

Returns: The StreamType for stream

Retrieve the stream type for stream

Since: 1.10

getTags

streamGetTags Source #

Arguments

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

stream: a Stream

-> m (Maybe TagList)

Returns: The TagList for stream

Retrieve the tags for stream, if any

Since: 1.10

new

streamNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Maybe Text

streamId: the id for the new stream. If Nothing, a new one will be automatically generated

-> Maybe Caps

caps: the Caps of the stream

-> [StreamType]

type: the StreamType of the stream

-> [StreamFlags]

flags: the StreamFlags of the stream

-> m Stream

Returns: The new Stream

Create a new Stream for the given streamId, caps, type and flags

Since: 1.10

setCaps

streamSetCaps Source #

Arguments

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

stream: a Stream

-> Maybe Caps

caps: a Caps

-> m () 

Set the caps for the Stream

Since: 1.10

setStreamFlags

streamSetStreamFlags Source #

Arguments

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

stream: a Stream

-> [StreamFlags]

flags: the flags to set on stream

-> m () 

Set the flags for the stream.

Since: 1.10

setStreamType

streamSetStreamType Source #

Arguments

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

stream: a Stream

-> [StreamType]

streamType: the type to set on stream

-> m () 

Set the stream type of stream

Since: 1.10

setTags

streamSetTags Source #

Arguments

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

stream: a Stream

-> Maybe TagList

tags: a TagList

-> m () 

Set the tags for the Stream

Since: 1.10

Properties

caps

The Caps of the Stream.

clearStreamCaps :: (MonadIO m, IsStream o) => o -> m () Source #

Set the value of the “caps” property to Nothing. When overloading is enabled, this is equivalent to

clear #caps

constructStreamCaps :: IsStream o => Caps -> IO (GValueConstruct o) Source #

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

getStreamCaps :: (MonadIO m, IsStream o) => o -> m (Maybe Caps) Source #

Get the value of the “caps” property. When overloading is enabled, this is equivalent to

get stream #caps

setStreamCaps :: (MonadIO m, IsStream o) => o -> Caps -> m () Source #

Set the value of the “caps” property. When overloading is enabled, this is equivalent to

set stream [ #caps := value ]

streamFlags

No description available in the introspection data.

constructStreamStreamFlags :: IsStream o => [StreamFlags] -> IO (GValueConstruct o) Source #

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

getStreamStreamFlags :: (MonadIO m, IsStream o) => o -> m [StreamFlags] Source #

Get the value of the “stream-flags” property. When overloading is enabled, this is equivalent to

get stream #streamFlags

setStreamStreamFlags :: (MonadIO m, IsStream o) => o -> [StreamFlags] -> m () Source #

Set the value of the “stream-flags” property. When overloading is enabled, this is equivalent to

set stream [ #streamFlags := value ]

streamId

The unique identifier of the Stream. Can only be set at construction time.

constructStreamStreamId :: IsStream o => Text -> IO (GValueConstruct o) Source #

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

getStreamStreamId :: (MonadIO m, IsStream o) => o -> m (Maybe Text) Source #

Get the value of the “stream-id” property. When overloading is enabled, this is equivalent to

get stream #streamId

streamType

The StreamType of the Stream. Can only be set at construction time.

constructStreamStreamType :: IsStream o => [StreamType] -> IO (GValueConstruct o) Source #

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

getStreamStreamType :: (MonadIO m, IsStream o) => o -> m [StreamType] Source #

Get the value of the “stream-type” property. When overloading is enabled, this is equivalent to

get stream #streamType

setStreamStreamType :: (MonadIO m, IsStream o) => o -> [StreamType] -> m () Source #

Set the value of the “stream-type” property. When overloading is enabled, this is equivalent to

set stream [ #streamType := value ]

tags

The TagList of the Stream.

clearStreamTags :: (MonadIO m, IsStream o) => o -> m () Source #

Set the value of the “tags” property to Nothing. When overloading is enabled, this is equivalent to

clear #tags

constructStreamTags :: IsStream o => TagList -> IO (GValueConstruct o) Source #

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

getStreamTags :: (MonadIO m, IsStream o) => o -> m (Maybe TagList) Source #

Get the value of the “tags” property. When overloading is enabled, this is equivalent to

get stream #tags

setStreamTags :: (MonadIO m, IsStream o) => o -> TagList -> m () Source #

Set the value of the “tags” property. When overloading is enabled, this is equivalent to

set stream [ #tags := value ]