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
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
SELECT_STREAMS event on a pipeline, bin or element.