Class StreamCollection
- All Implemented Interfaces:
Proxy
GstStream
that are available.
A GstStreamCollection
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 getStream(int)
()
Once posted, a GstStreamCollection
is immutable. Updates are made by sending
a new GstStreamCollection
message, which may or may not share some of
the GstStream
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 GstStreamCollection
.
Applications can activate streams from a collection by using the
GST_EVENT_SELECT_STREAMS
event on a pipeline, bin or element.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
StreamCollection.Builder<B extends StreamCollection.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.static class
GstStreamCollection class structurestatic interface
Functional interface declaration of theStreamNotifyCallback
callback.Nested classes/interfaces inherited from class org.freedesktop.gstreamer.gst.GstObject
GstObject.DeepNotifyCallback, GstObject.ObjectClass, GstObject.ObjectImpl
Nested classes/interfaces inherited from class org.gnome.gobject.InitiallyUnowned
InitiallyUnowned.InitiallyUnownedClass
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback
-
Constructor Summary
ConstructorDescriptionCallsStreamCollection(java.lang.String)
with upstreamId =null
StreamCollection
(@Nullable String upstreamId) Create a newGstStreamCollection
.StreamCollection
(MemorySegment address) Create a StreamCollection proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Add the givenstream
to the this StreamCollection.protected StreamCollection
asParent()
Returns this instance as if it were its parent type.static StreamCollection.Builder
<? extends StreamCollection.Builder> builder()
AStreamCollection.Builder
object constructs aStreamCollection
with the specified properties.void
emitStreamNotify
(@Nullable String detail, Stream propStream, ParamSpec prop) Emits the "stream-notify" signal.static MemoryLayout
The memory layout of the native struct.int
getSize()
Get the number of streams this collection containsgetStream
(int index) Retrieve theGstStream
with indexindex
from the collection.static Type
getType()
Get the GType of the StreamCollection classReturns the upstream id of the this StreamCollection.onStreamNotify
(@Nullable String detail, StreamCollection.StreamNotifyCallback handler) The stream notify signal is used to be notified of property changes to streams within the collection.protected void
streamNotify
(Stream stream, ParamSpec pspec) default signal handler for the stream-notify signalMethods inherited from class org.freedesktop.gstreamer.gst.GstObject
addControlBinding, checkUniqueness, deepNotify, defaultDeepNotify, defaultError, emitDeepNotify, getControlBinding, getControlRate, getGValueArray, getName, getParent, getPathString, getValue, getValueArray, hasActiveControlBindings, hasAncestor, hasAsAncestor, hasAsParent, onDeepNotify, ref, refSink, removeControlBinding, replace, setControlBindingDisabled, setControlBindingsDisabled, setControlRate, setName, setParent, suggestNextSync, syncValues, unparent, unref
Methods inherited from class org.gnome.gobject.GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newInstance, newInstance, newv, notify_, notify_, notifyByPspec, onNotify, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, watchClosure, weakRef, weakUnref, withProperties
Methods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, getPrivate, readGClass, writeGClass
Methods inherited from class io.github.jwharm.javagi.base.ProxyInstance
equals, handle, hashCode
-
Constructor Details
-
StreamCollection
Create a StreamCollection proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
StreamCollection
Create a newGstStreamCollection
.- Parameters:
upstreamId
- The stream id of the parent stream
-
StreamCollection
public StreamCollection()CallsStreamCollection(java.lang.String)
with upstreamId =null
-
-
Method Details
-
getType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuper
keyword, but will set the native typeclass function pointers to the parent type. When overriding a native virtual method in Java, "chaining up" withsuper.methodName()
doesn't work, because it invokes the overridden function pointer again. To chain up, callasParent().methodName()
. This will call the native function pointer of this virtual method in the typeclass of the parent type. -
addStream
Add the givenstream
to the this StreamCollection.- Parameters:
stream
- theGstStream
to add- Returns:
true
if thestream
was properly added, elsefalse
-
getSize
public int getSize()Get the number of streams this collection contains- Returns:
- The number of streams that this StreamCollection contains
-
getStream
Retrieve theGstStream
with indexindex
from the collection.The caller should not modify the returned
GstStream
- Parameters:
index
- Index of the stream to retrieve- Returns:
- A
GstStream
-
getUpstreamId
Returns the upstream id of the this StreamCollection.- Returns:
- The upstream id
-
streamNotify
-
onStreamNotify
public SignalConnection<StreamCollection.StreamNotifyCallback> onStreamNotify(@Nullable @Nullable String detail, StreamCollection.StreamNotifyCallback handler) The stream notify signal is used to be notified of property changes to streams within the collection.- Parameters:
detail
- the signal detailhandler
- the signal handler- Returns:
- a signal handler ID to keep track of the signal connection
- See Also:
-
emitStreamNotify
Emits the "stream-notify" signal. SeeonStreamNotify(java.lang.String, org.freedesktop.gstreamer.gst.StreamCollection.StreamNotifyCallback)
. -
builder
AStreamCollection.Builder
object constructs aStreamCollection
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withStreamCollection.Builder.build()
.
-