nmossrc
NMOS Receiver wrapper element backed by nvnmosd
Hierarchy
GObject
╰──GInitiallyUnowned
╰──GstObject
╰──GstElement
╰──GstBin
╰──nmossrc
Implemented interfaces
GstChildProxy
Factory details
Authors: – NVIDIA Corporation
Classification: – Source/Network/NMOS
Rank – none
Plugin – nmos
Package – gst-nmos-rs
Pad Templates
src
ANY
Presence – always
Direction – src
Object type – GstPad
Properties
auto-activate
“auto-activate” gboolean
When true, swap in the real transport sink or source (instead of the fake chain) once the configuring transport file has been resolved at NULL→READY (or READY→PAUSED for deferred senders), and call SyncResourceState so IS-04/IS-05 show active without an IS-05 PATCH. Does not force PLAYING — child state still follows the bin. Default false: add via AddSender / AddReceiver (visible on IS-04) but keep the fake chain until an external IS-05 controller activates the resource.
Flags : Read / Write
Default value : false
caps
“caps” GstCaps*
Essence caps for this Receiver. Required when transport-file* is unset; synthesises the configuring transport file (MXL flow_def or SDP depending on transport). On transport=mxl, requires mxl-flow-id (media-type structure name picks the matching mxlsrc flow-id slot); supported shapes: v210 video, F32LE audio, meta/x-st-2038 data. On RTP transports, requires the relevant IS-05 endpoint properties. When transport-file* is also set, the file wins and caps are cross-checked against it — mismatch is a hard error.
Flags : Read / Write
daemon-uri
“daemon-uri” gchararray
gRPC endpoint for nvnmosd. Only unix:/path/to/sock URIs are currently supported.
Flags : Read / Write
Default value : unix:/tmp/nvnmosd.sock
depay-properties
“depay-properties” GstStructure*
Overrides applied to the inner RTP depayloader every time the UDP receiver chain is built. Same GstStructure syntax as transport-properties; ignored on non-UDP transports (a warning is logged if non-empty). Takes effect on the next chain build.
Flags : Read / Write
description
“description” gchararray
NMOS description for the Receiver. Optional. Overrides the transport file when both are supplied (top-level description in an MXL flow_def; SDP i= line for RTP/UDP).
Flags : Read / Write
destination-port
“destination-port” guint
IS-05 receiver transport_params destination_port: local listen port (becomes udpsrc.port and the SDP m= port slot). 0 (the default) = unset; falls back to the transport file's m= port if present, else to the canonical RTP default 5004 (nmos-cpp auto_rtp_port). Honoured only on the RTP transports; ignored on mxl.
Flags : Read / Write
Default value : 0
domain
“domain” gchararray
DNS domain for NMOS network services (network_services.domain). Use local to force mDNS. Empty (the default) leaves libnvnmos on automatic discovery. Not to be confused with mxl-domain-id / mxl-domain-path, which identify an MXL shared-memory Domain. Honoured only by the OpenSession that creates the Node.
Flags : Read / Write
format-bit-rate
“format-bit-rate” guint64
Coded essence (Flow) bit rate in kilobits per second (1000 bits/s), matching NMOS Flow bit_rate and SDP fmtp x-nvnmos-format-bit-rate. On JPEG XS RTP transports, synthesises the configuring SDP a=fmtp:… x-nvnmos-format-bit-rate= attribute and b=AS: (via the derived transport rate) and sets rtpjxsvpay max-codestream-bitrate to this value times 1000 (bit/s) unless pay-properties already supplies it. 0 (the default) = unset. When only one of format-bit-rate and transport-bit-rate is set, the other is derived using the same overhead factor as nvnmosd (AMWA BCP-006-01 / VSF TR-08 style). With a supplied transport-file*, cross-checks when both sides declare a rate and splices when the file omits it. Ignored on transport=mxl.
Flags : Read / Write
Default value : 0
group-hint
“group-hint” gchararray
NMOS group hint for the Receiver (the urn:x-nmos:tag:grouphint/v1.0 tag), e.g. "SDI 1:Video". Becomes the x-nvnmos-group-hint session-level SDP attribute on RTP/UDP or the grouphint tag in an MXL flow_def. Overrides the transport file when both are supplied. Optional. Omitted when unset.
Flags : Read / Write
host-name
“host-name” gchararray
NMOS Node host name (node_config.host_name). Empty (the default) leaves libnvnmos to autodetect. Honoured only by the OpenSession that actually creates the Node; ignored when attaching to a pre-existing Node with the same node-seed.
Flags : Read / Write
http-port
“http-port” guint
TCP port libnvnmos serves the NMOS HTTP APIs on (node_config.http_port). 0 (the default) asks nvnmosd to allocate from NVNMOSD_HTTP_PORT_MIN..NVNMOSD_HTTP_PORT_MAX. Non-zero selects an explicit port (rejected when unavailable). Honoured only by the OpenSession that actually creates the Node — when attaching to a pre-existing Node (e.g. another nmossink / nmossrc opened first with the same node-seed) this property is ignored. The effective port is returned in OpenSessionResponse.http_port.
Flags : Read / Write
Default value : 0
interface-ip
“interface-ip” gchararray
IS-05 receiver transport_params interface_ip: local NIC IP used for the IGMP join. Resolved to an interface name and fed into udpsrc.multicast-iface on the RTP transports. Also emitted in the configuring SDP as a=x-nvnmos-iface-ip:. Empty = unset (let the kernel pick). Honoured only on the RTP transports; ignored on mxl.
Flags : Read / Write
label
“label” gchararray
NMOS label for the Receiver. Optional. Overrides the transport file when both are supplied (top-level label in an MXL flow_def; SDP s= line for RTP/UDP).
Flags : Read / Write
multicast-ip
“multicast-ip” gchararray
IS-05 receiver transport_params multicast_ip: multicast group to join. Becomes udpsrc.address and the SDP c= line address on the RTP transports. Empty = unset (unicast reception). Honoured only on the RTP transports; ignored on mxl.
Flags : Read / Write
mxl-domain-id
“mxl-domain-id” gchararray
MXL Domain identifier (UUID) included as urn:x-nvnmos:tag:mxl-domain-id in the transport file. Optional when transport=mxl: the path's domain_def.json id supplies it when present (for a caps-synthesised file; a supplied transport-file* keeps its own tag, cross-checked at activation); otherwise the tag is left application-resolved ([""]) and the data plane uses mxl-domain-path locally. When supplied, overrides the transport file's tag. Cross-checked against domain_def.json when both are supplied (mismatch is an error). On nmossrc, set before NULL→READY; on nmossink it may also be set in READY for deferred AddSender.
Flags : Read / Write
mxl-domain-path
“mxl-domain-path” gchararray
Local filesystem path identifying the MXL Domain on this host. If the directory contains a domain_def.json (AMWA BCP-007-03 WIP) its id is used to populate mxl-domain-id (or cross-checked against it when both are set). Without domain_def.json, an unset mxl-domain-id leaves the NMOS tag application-resolved while the data plane still uses this path. Fed into the inner mxlsrc domain= property when the real inner chain is installed (after IS-05 activation, or at startup when auto-activate=true).
Flags : Read / Write
mxl-flow-id
“mxl-flow-id” gchararray
MXL flow id (UUID) the inner mxlsrc should pull. An NMOS Receiver is normally configured by IS-05 PATCH activation, so this is mainly a development convenience: combined with auto-activate=true (plus caps and mxl-domain-path) the receiver starts up pre-bound to a known flow without an external controller. Overrides the transport file's top-level id when both are supplied.
Flags : Read / Write
node-seed
“node-seed” gchararray
NvNmos Node seed (node_config.seed). Required. Sessions sharing this seed contribute to the same NMOS Node.
Flags : Read / Write
receiver-caps-mode
“receiver-caps-mode” GstNmosCapsMode*
Whether the Receiver advertises BCP-004-01 Receiver Caps on IS-04 (narrow) or none (wide). On MXL, wide is encoded via urn:x-nvnmos:tag:caps; on RTP/UDP via media-level a=x-nvnmos-caps:. auto (default) leaves the marker untouched in the spliced transport file — narrow when absent (or with no transport file), wide when present. narrow strips it; wide ensures it is present (libnvnmos: present + non-empty = wide).
Flags : Read / Write
Default value : auto (0)
receiver-name
“receiver-name” gchararray
Name for this Receiver within the Node (becomes the x-nvnmos-name SDP attribute or the urn:x-nvnmos:tag:name flow-def tag in the transport file). Unique across Receivers on the Node; a Sender on the same Node may share the same name (the daemon scopes names by side). Required unless the name is already carried in transport-file*. Overrides the transport file's value when both are supplied. The Receiver's IS-04 id is derived from the name and the element's node-seed.
Flags : Read / Write
registration-url
“registration-url” gchararray
Fixed IS-04 Registration API URL. Format: http://host[:port]/x-nmos/registration/v<X.Y>[/]. Parsed into network_services.registration_*; invalid URLs are logged and ignored. Empty (the default) leaves libnvnmos on DNS-SD discovery based on host-name. Honoured only by the OpenSession that creates the Node.
Flags : Read / Write
source-ip
“source-ip” gchararray
IS-05 receiver transport_params source_ip: SSM include-source — the remote sender's IP. Drives the configuring SDP a=source-filter: include-source. On the udp2 (gst-plugins-rs udpsrc2) variant this translates to source-filter; on the udp (gst-plugins-good udpsrc) variant it translates to multicast-source. Empty = unset (any-source multicast / unicast). Honoured only on the RTP transports; ignored on mxl.
Flags : Read / Write
system-url
“system-url” gchararray
Fixed IS-09 System API URL. Format: http://host[:port]/x-nmos/system/v<X.Y>[/]. Parsed into network_services.system_*; invalid URLs are logged and ignored. Honoured only when registration-url is also set (libnvnmos ignores a standalone System API). Honoured only by the OpenSession that creates the Node.
Flags : Read / Write
transport
“transport” GstNmosTransport*
Inner data path family. mxl: MXL shared-memory transport (mxlsrc / mxlsink). udp: ST 2110 over RTP/UDP via gst-plugins-good (udpsrc / udpsink + the rtpvrawpay / rtpL24pay / rtpsmpte291pay family). udp2: ST 2110 over RTP/UDP via gst-plugins-rs (udpsrc2 + the *pay2 / *depay2 family where available, falling back to gst-plugins-good per-element). nvdsudp: ST 2110 via DeepStream's nvdsudpsrc / nvdsudpsink (Rivermax kernel-bypass, built-in RTP (de)payload, Mode 3). Requires ConnectX-5+ and the Rivermax SDK.
Flags : Read / Write
Default value : mxl (0)
transport-bit-rate
“transport-bit-rate” guint64
Transport (Sender) bit rate in kilobits per second (1000 bits/s), including RTP/UDP/IP overhead, matching NMOS Sender bit_rate, SDP b=AS:, and fmtp x-nvnmos-transport-bit-rate. On JPEG XS RTP transports, synthesises the configuring SDP b=AS: bandwidth line and a=fmtp:… x-nvnmos-transport-bit-rate= attribute. 0 (the default) = unset. When only one of format-bit-rate and transport-bit-rate is set, the other is derived using the same overhead factor as nvnmosd. With a supplied transport-file*, cross-checks when both sides declare a rate and splices when the file omits it. Ignored on transport=mxl.
Flags : Read / Write
Default value : 0
transport-caps
“transport-caps” GstCaps*
Per-transport overrides (SDP fmtp-style). Typically empty for MXL.
Flags : Read / Write
transport-file
“transport-file” gchararray
Literal contents of the NvNmos transport file: MXL flow_def JSON for transport=mxl, SDP text for transport=udp / udp2 / nvdsudp. The daemon adds the Receiver via AddReceiver and re-publishes the transport file on IS-05 activation. Pass the text, not a path. Convenient for programmatic callers; from gst-launch use transport-file-path instead. Mutually exclusive with transport-file-path. Required unless caps is provided.
Flags : Read / Write
transport-file-path
“transport-file-path” gchararray
Filesystem path read at NULL→READY into transport-file. Convenience for gst-launch; mutually exclusive with transport-file.
Flags : Read / Write
transport-properties
“transport-properties” GstStructure*
Overrides applied to the inner source or sink (udpsrc, udpsink, nvdsudpsrc, nvdsudpsink, mxlsrc, or mxlsink) every time the data-path chain is built. Pass a GstStructure whose fields are GObject property names on that inner source or sink — for example properties,buffer-size=26214400. The structure name is not interpreted. Takes effect on the next chain build, not immediately on the one currently in the chain.
Flags : Read / Write
The results of the search are