Elecard NW Source

Elecard NW Source is a GStreamer filter used for receiving media data from the Internet. It accepts RTP, UDP, SRT, RIST, and TCP packets and feeds the filter graph with stream data stored inside these packets.

Features

Elecard NW Source has the following features:

  • Uses UDP for transferring media data, uses RTP optionally;

  • Receives media data sent over RIST and SRT protocols (both in Listener and Caller modes);

  • Provides interface for the Push mode;

  • Receives SAP announcements with SDP data;

  • Supports multicast and unicast streaming;

  • Provides adjustment made using SDP data from a file or announcement;

  • Provides adjustment via formatted URL (for multiplexed streams).

Elecard NW Source supports the following data formats:

  • MPEG-1 Systems (ISO/IEC 11172-1);

  • MPEG-2 Program Stream (ISO/IEC 13818-1);

  • MPEG-2 Transport Stream (ISO/IEC 13818-1);

  • MPEG-1 Video (ISO/IEC 11172-2);

  • MPEG-1 Audio (ISO/IEC 11172-3);

  • MPEG-2 Video (ISO/IEC 13818-2);

  • MPEG-2 Audio (ISO/IEC 13818-3);

  • Dolby® AC-3 (ATSC A-52);

  • AVC/H.264;

  • MPEG-4 Video;

  • AAC Audio;

  • AMR Audio.

Parameter Description

Below is the table describing Elecard NW Source parameters and their values:

Parameter Name

Description

Value Type

Available Values [range]

Default

Flags

announcements

Retrieves the announcement description that contains the full description for elementary streams.

Boxed pointer of type GstAnnouncesDescr

readable

data-packets-count

Displays the number of received packets.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

event-handler

Pointer to the handler for events signalled by NWSource.

Pointer

readable, writable

fec-port-columns

Port to receive FEC COLUMNS data.

Integer

[0 – 65535]

10502

readable, writable

fec-port-rows

Port to receive FEC ROWS data.

Integer

[0 – 65535]

10501

readable, writable

fec-restored-packets

Displays the number of restored packets when FEC is enabled.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

fec-type

Specifies the FEC type.

Integer

[0 – 2]

0

readable, writable

input-bitrate-bps

Displays the current bitrate of an input stream.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

instant-dropped-packets

Retrieves the number of dropped packets for the period specified in the instant-stats-period parameter.

Integer

[0 – 2147483647]

0

readable

instant-fec-restored-packets

Retrieves the number of restored packets for the period specified in the instant-stats-period parameter.

Integer

[0 – 2147483647]

0

readable

instant-stats-period

Specifies the period in seconds used for calculation of instantaneous statistics. 30 is set by default.

Integer

[0 – 2147483647]

30

readable, writable

latency-value

When receiving elementary streams, this parameter specifies the delay in milliseconds between receiving data and playback, which may be necessary to avoid interruptions during playback. When receiving MPEG-TS, the parameter is ignored.

Integer

[0 – 2147483647]

1500

readable, writable

license-state

Specifies the Elecard component license state.

String

evaluation

readable

lost-data-packets

Displays the number of lost packets.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

mcast-group

Specifies the multicast group or unicast address.

String

234.5.5.5

readable, writable

mcast-iface-ip

Specifies the IP or name of the local network interface for data to be received on.

String

null

readable, writable

name

Specifies the name of the object.

String

netsrc0

readable, writable

parent

Specifies the parent of the object.

Object of type GstObject

readable, writable

payload-type

Specifies the payload type of the output data.

Enum

0 — elementary — Elementary
1 — mp2t — MPEG2 Transport
2 — mp2t-over-rtp — MPEG2 Transport over RTP

1

readable, writable

port

Port to receive data from.

Integer

[0 – 65535]

10200

readable, writable

receiver-statistics

Retrieves the receiver statistics (if present).

SRT:

  • Loss packets — the number of SRT DATA packets detected as presently missing (either reordered or lost) at the receiver’s side (see pktRcvLossTotal, pktRcvLoss);

  • Drop packets — the number of data packets dropped by the SRT receiver and, as a result, not delivered to upstream (see pktRcvDropTotal, pktRcvDrop);

  • Retrans packets — the number of retransmitted packets registered at the receiver’s side. This statistic is not interchangeable with the same sender statistic (see pktRcvRetransTotal, pktRcvRetrans);

  • Recv rate — receiving rate, in Mbps (see mbpsRecvRate);

  • RTT — Smoothed Round-Trip Time (SRTT), an exponentially weighted moving average (EWMA) dependent on an endpoint’s RTT samples, in milliseconds (see msRTT);

  • Recv buffer — the time span of acknowledged packets in the receiver’s buffer, in milliseconds (see msRcvBuf);

  • TSBPD — Timestamp-Based Packet Delivery Delay value set on the socket. The value is used to apply TSBPD delay for reading the received data on the socket (see msRcvTsbPdDelay).

FEC as part of SRT:

  • Received FEC packets: <1> / (Total: <2>);

  • FEC restored packets: <3> / (Total: <4>);

  • FEC lost packets: <5> / (Total: <6>), where:

RIST:

  • peer_count — peer count;

  • cname — combined peer cnames;

  • flow_id — flow id set by senders;

  • status — flow status;

  • bandwidth — average bandwidth calculation;

  • retry_bandwidth — bandwidth dedicated to retries;

  • sent — number of sent packets;

  • received — number of received packets;

  • missing — number of missing packets, including the reordered ones;

  • reordered — number of reordered packets;

  • recovered — total number of recovered packets;

  • recovered_one_retry — packets recovered on the first retry;

  • lost — number of lost packets;

  • quality — metric for estimating the broadcast quality that is calculated by a formula 1 (click for formula);

  • min_inter_packet_spacing — minimum packet inter-arrival time, in microseconds;

  • cur_inter_packet_spacing — current packet inter-arrival time, in microseconds;

  • max_inter_packet_spacing — maximum packet inter-arrival time, in microseconds;

  • rtt — average RTT for all non-dead peers.

String

“”

readable

reconnect-timeout

Specifies the reconnection timeout (in seconds) in case the input multicast stream was not received. If enabled, NWSource will try to reconnect until the input multicast stream is received. 0 disables the reconnection timeout.

Integer

[0 – 2147483647]

0

readable, writable

rist-buffer-size

Specifies the size of the buffer which stores the most recently sent packets as part of RIST connection.

Integer

[0 – 2147483647]

1000

readable, writable

rist-profile

Specifies the profile type for RIST connection.

Enum

0 — Simple — Simple
1 — Main — Main (default)
2 — Advanced — Advanced

1

readable, writable

rist-url-parameters

Specifies additional RIST URL parameters in the following format:

parameter_name = parameter_value & parameter_name = parameter_value...

String

null

readable, writable

sap-address

Sets the multicast address for announcement broadcasting.

String

224.2.127.254

readable, writable

sap-port

Sets the multicast port for announcement broadcasting.

Integer

[0 – 65535]

9875

readable, writable

sap-timeout

Sets the timeout (in seconds) for the announcement to be considered active.

Integer

[0 – 2147483647]

30

readable, writable

sdp

Specifies Session Description Protocol (SDP) parameters. Expects either raw SDP text or a path to an SDP file. When SDP is provided, its parameters take precedence over all other configuration settings.

String

“”

readable, writable

server

Accepts data sourced from the supplied server address.

String

null

readable, writable

srt-delay

Specifies the delay for the packets to be restored at the receiver’s side during SRT broadcasting.

Integer

[0 – 2147483647]

0

readable, writable

srt-rist-encryption-type

Specifies the type of encryption for SRT or RIST connection. For RIST: Encryption is not supported for the Simple profile, also RIST doesn’t support AES-192.

Enum

0 — Disabled — No encryption
1 — AES-128 — AES-128
2 — AES-256 — AES-256
3 — AES-192 — AES-192 (SRT only)

0

readable, writable

srt-rist-passphrase

Sets the specified passphrase for SRT connection or for Main/Advanced profile encryption in case of RIST connection. The parameter is inactive when the srt-rist-encryption-type parameter equals to 0.

String

null

readable, writable

srt-stream-id

Specifies a unique name sent from Elecard NWSource in the Caller mode to the listener prior to connecting for identification purposes. The maximum length is 512 characters. If Elecard NWSource is in the Listener mode, srt-stream-id value will be ignored. You can set the SRT mode via the transport parameter.

String

null

readable, writable

ssm-enable-filtering

Enables/disables filtering of multicast data when there are several sources in the multicast group.

Enum

0 — Disable — Multicast data will be received from all sources (default)
1 — Enable — Multicast data will be received directly from the source that sent data first

0

readable, writable

status-work-ok

Specifies whether the stream is successfully received.

Integer

[0 – 1]

0

readable

transport

Transport protocol used for data transfer.

Enum

0 — udp — UDP
1 — rtp — RTP
4 — srt caller — SRT Caller Mode
5 — srt listener — SRT Listener Mode
6 — rist caller — RIST Caller Mode
7 — rist listener — RIST Listener Mode

0

readable, writable

uri

URI in the form of:

[(udp | rtp | srt)://][interface@]address[:port]

String

udp://234.5.5.5:10200

readable, writable

1

Q = (sent * 100.0) / sent + bloat_skipped + bandwidth_skipped + retransmit_skipped + retransmitted