The basic source module contains elements that uses common techniques for receiving media streams.
Module Name | Streamer Basic Source Elements |
---|---|
File Name | libbasicsourceelements.so |
Class Count | 7 |
Multicast Source, File Source, DVB-T Source. TCP Source, UDP Source, Local UNIX Stream Source. Local UNIX Datagram Source.
Multicast Source element at beginning of pipeline (the other source elements connected in the same fashion).
The Multicast Source Element receives media streams from the network by joining multicast groups in accordance to Internet Group Management Protocol version 2 (RFC 2236).
Name | Multicast Source Descriptor |
---|---|
Version | 1 |
Interface Name | IElementDescriptor |
Binding | C++ |
Name | Multicast Source |
---|---|
Type | Source |
Priority | 500 |
Output Formats | Raw |
This element accepts URL strings on the form:
[igmp://]<address>:<port>
where <address> is an IPv4 multicast group address in standard dot notation, and <port> is the IPv4 port. The element accepts all multicast group addresses in the range 224.0.0.0 to 239.255.255.255. Note that depending on local conditions some addresses in this range must not be used. Please see RFC 3171 and related documents for more information.
Examples:
igmp://224.5.16.1:111111 224.1.1.1:10000
Since the element is a source element all metadata is produced by the element itself.
Key | Input | Output |
---|---|---|
_ConnectionType | Produced | Committed |
_StreamUrl | Produced | Committed |
_PlaybackMode | Produced | Committed |
Because of the live broadcast property of multicast transmitted media streams, the multicast source element supports only a limited range of user operations. The element only receives the media stream from the network and cannot control the data flow in any way. The element supports the Open, Play and Close cycle of operations only.
When the element is issued the Open command, it joins the multicast group specified by the URL, and on Close the element leaves that group. The element begins reading data from the group when it receives the Play command.
The File Source Element reads the media stream from a file in the file system. The file may be stored locally or remotely on the network. From this element's point of view, the location itself is not relevant, instead the important property is that it is treated like a regular file in the file system.
Name | File Source Descriptor |
---|---|
Version | 1 |
Interface Name | IElementDescriptor |
Binding | C++ |
Name | File Source |
---|---|
Type | Source |
Priority | 500 |
Output Formats | Raw |
This element accepts URL strings on the form:
file://<path>
Where <path> is a regular path in the file system. Note that the <path> should start with a slash (so that you get three slashes in a row after file:) which makes it an absolute path and the risk of mistakes is greatly reduced.
Examples:
file:///presentation.mp3 file:///remote/share/movie.mpg
Since the element is a source element all metadata is produced by the element itself.
Key | Input | Output |
---|---|---|
_ConnectionType | Produced | Committed |
_StreamUrl | Produced | Committed |
_PlaybackMode | Produced | Committed |
The file source element supports all user operations except Rewind. When fast forwarding, the element reads the file as quickly as it can, which usually means the speed is bounded by the network when the file is stored remotely. In any way, the fast forwarding speed is not fixed and may vary due to external factors.
The operation of the file source element is similar to the operation of the multicast source element, with the evident difference that the file element opens a file in the file system whereas the multicast element joins a multicast group. Also, fast forwarding is supported by the file source element, since it has some limited control of the read speed bounded by system and network load.
For internal use only. This element should be moved to a seperate loadable module.
The TCP Source Element receives media streams from the network by using plain TCP socket communication.
Name | TCP Source Descriptor |
---|---|
Version | 1 |
Interface Name | IElementDescriptor |
Binding | C++ |
Name | TCP Source |
---|---|
Type | Source |
Priority | 500 |
Output Formats | Raw |
This element accepts URL strings on the form:
[tcp://]<address>:<port>
where <address> is an host address in standard dot notation, and <port> is the IPv4 port.
Examples:
tcp://192.168.5.252:12345
Since the element is a source element all metadata is produced by the element itself.
Key | Input | Output |
---|---|---|
_ConnectionType | Produced | Committed |
_StreamUrl | Produced | Committed |
_PlaybackMode | Produced | Committed |
The element supports the Open, Pause and Close cycle of operations only.
When the element is issued the Open command, it opens a TCP connection to the address and port specified by the URL, and on Close the element closes the connection.
The UDP Source Element receives media streams from the network by using plain UDP socket communication.
Name | UDP Source Descriptor |
---|---|
Version | 1 |
Interface Name | IElementDescriptor |
Binding | C++ |
Name | UDP Source |
---|---|
Type | Source |
Priority | 500 |
Output Formats | Raw |
This element accepts URL strings on the form:
[udp://]<address>:<port>
where <address> is an host address in standard dot notation, and <port> is the IPv4 port.
Examples:
udp://192.168.5.252:12345
Since the element is a source element all metadata is produced by the element itself.
Key | Input | Output |
---|---|---|
_ConnectionType | Produced | Committed |
_StreamUrl | Produced | Committed |
_PlaybackMode | Produced | Committed |
The element supports the Open, Pause and Close cycle of operations only.
When the element is issued the Open command, it starts listening for data coming from the address and port specified by the URL, and on Close the element stops listening.
The Local Stream Source Element receives media streams from a local UNIX stream socket.
Name | Local Stream Source Descriptor |
---|---|
Version | 1 |
Interface Name | IElementDescriptor |
Binding | C++ |
Name | Local Stream Source |
---|---|
Type | Source |
Priority | 500 |
Output Formats | Raw |
This element accepts URL strings on the form:
[lstrm://]<path>
where <path> is the absolute path to a local UNIX stream socket.
Examples:
lstrm:///tmp/03sx0445
Since the element is a source element all metadata is produced by the element itself.
Key | Input | Output |
---|---|---|
_ConnectionType | Produced | Committed |
_StreamUrl | Produced | Committed |
_PlaybackMode | Produced | Committed |
The element supports the Open, Pause and Close cycle of operations only.
When the element is issued the Open command, it opens a connection to a local UNIX stream socket specified by the path, and on Close the element closes the connection.
The Local Datagram Source Element receives media streams from a local UNIX datagram socket.
Name | Local Datagram Source Descriptor |
---|---|
Version | 1 |
Interface Name | IElementDescriptor |
Binding | C++ |
Name | Local Datagram Source |
---|---|
Type | Source |
Priority | 500 |
Output Formats | Raw |
This element accepts URL strings on the form:
[ldgram://]<path>
where <path> is the absolute path to a local UNIX datagram socket.
Examples:
ldgram:///tmp/03sx0445
Since the element is a source element all metadata is produced by the element itself.
Key | Input | Output |
---|---|---|
_ConnectionType | Produced | Committed |
_StreamUrl | Produced | Committed |
_PlaybackMode | Produced | Committed |
The element supports the Open, Pause and Close cycle of operations only.
When the element is issued the Open command, it listens for data on a local UNIX datagram socket specified by the path, and on Close the element stops listening.