Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
A collection of Stream
that are available.
A StreamCollection
will be provided by elements that can make those
streams available. Applications can use the collection to show the user
what streams are available by using gst_stream_collection_get_stream
()
Once posted, a StreamCollection
is immutable. Updates are made by sending
a new StreamCollection
message, which may or may not share some of
the Stream
objects from the collection it replaces. The receiver can check
the sender of a stream collection message to know which collection is
obsoleted.
Several elements in a pipeline can provide StreamCollection
.
Applications can activate streams from a collection by using the
GST_EVENT_SELECT_STREAMS
event on a pipeline, bin or element.
- newtype StreamCollection = StreamCollection (ManagedPtr StreamCollection)
- class GObject o => IsStreamCollection o
- toStreamCollection :: (MonadIO m, IsStreamCollection o) => o -> m StreamCollection
- noStreamCollection :: Maybe StreamCollection
- streamCollectionAddStream :: (HasCallStack, MonadIO m, IsStreamCollection a, IsStream b) => a -> b -> m Bool
- streamCollectionGetSize :: (HasCallStack, MonadIO m, IsStreamCollection a) => a -> m Word32
- streamCollectionGetStream :: (HasCallStack, MonadIO m, IsStreamCollection a) => a -> Word32 -> m Stream
- streamCollectionGetUpstreamId :: (HasCallStack, MonadIO m, IsStreamCollection a) => a -> m Text
- streamCollectionNew :: (HasCallStack, MonadIO m) => Maybe Text -> m StreamCollection
- clearStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> m ()
- constructStreamCollectionUpstreamId :: IsStreamCollection o => Text -> IO (GValueConstruct o)
- getStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> m Text
- setStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> Text -> m ()
- type C_StreamCollectionStreamNotifyCallback = Ptr () -> Ptr Stream -> Ptr GParamSpec -> Ptr () -> IO ()
- type StreamCollectionStreamNotifyCallback = Stream -> GParamSpec -> IO ()
- afterStreamCollectionStreamNotify :: (IsStreamCollection a, MonadIO m) => a -> StreamCollectionStreamNotifyCallback -> m SignalHandlerId
- genClosure_StreamCollectionStreamNotify :: StreamCollectionStreamNotifyCallback -> IO Closure
- mk_StreamCollectionStreamNotifyCallback :: C_StreamCollectionStreamNotifyCallback -> IO (FunPtr C_StreamCollectionStreamNotifyCallback)
- noStreamCollectionStreamNotifyCallback :: Maybe StreamCollectionStreamNotifyCallback
- onStreamCollectionStreamNotify :: (IsStreamCollection a, MonadIO m) => a -> StreamCollectionStreamNotifyCallback -> m SignalHandlerId
- wrap_StreamCollectionStreamNotifyCallback :: StreamCollectionStreamNotifyCallback -> Ptr () -> Ptr Stream -> Ptr GParamSpec -> Ptr () -> IO ()
Exported types
newtype StreamCollection Source #
class GObject o => IsStreamCollection o Source #
toStreamCollection :: (MonadIO m, IsStreamCollection o) => o -> m StreamCollection Source #
Methods
addStream
streamCollectionAddStream Source #
:: (HasCallStack, MonadIO m, IsStreamCollection a, IsStream b) | |
=> a |
|
-> b |
|
-> m Bool |
Add the given stream
to the collection
.
Since: 1.10
getSize
streamCollectionGetSize Source #
:: (HasCallStack, MonadIO m, IsStreamCollection a) | |
=> a |
|
-> m Word32 | Returns: The number of streams that |
Get the number of streams this collection contains
Since: 1.10
getStream
streamCollectionGetStream Source #
:: (HasCallStack, MonadIO m, IsStreamCollection a) | |
=> a |
|
-> Word32 |
|
-> m Stream | Returns: A |
getUpstreamId
streamCollectionGetUpstreamId Source #
:: (HasCallStack, MonadIO m, IsStreamCollection a) | |
=> a |
|
-> m Text | Returns: The upstream id |
Returns the upstream id of the collection
.
Since: 1.10
new
:: (HasCallStack, MonadIO m) | |
=> Maybe Text |
|
-> m StreamCollection | Returns: The new |
Create a new StreamCollection
.
Since: 1.10
Properties
upstreamId
clearStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> m () Source #
constructStreamCollectionUpstreamId :: IsStreamCollection o => Text -> IO (GValueConstruct o) Source #
getStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> m Text Source #
setStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> Text -> m () Source #
Signals
streamNotify
type C_StreamCollectionStreamNotifyCallback = Ptr () -> Ptr Stream -> Ptr GParamSpec -> Ptr () -> IO () Source #
type StreamCollectionStreamNotifyCallback = Stream -> GParamSpec -> IO () Source #
afterStreamCollectionStreamNotify :: (IsStreamCollection a, MonadIO m) => a -> StreamCollectionStreamNotifyCallback -> m SignalHandlerId Source #
genClosure_StreamCollectionStreamNotify :: StreamCollectionStreamNotifyCallback -> IO Closure Source #
mk_StreamCollectionStreamNotifyCallback :: C_StreamCollectionStreamNotifyCallback -> IO (FunPtr C_StreamCollectionStreamNotifyCallback) Source #
onStreamCollectionStreamNotify :: (IsStreamCollection a, MonadIO m) => a -> StreamCollectionStreamNotifyCallback -> m SignalHandlerId Source #
wrap_StreamCollectionStreamNotifyCallback :: StreamCollectionStreamNotifyCallback -> Ptr () -> Ptr Stream -> Ptr GParamSpec -> Ptr () -> IO () Source #