PipeWire: RTP source

PipeWire 1.4.7

Loading...
Searching...
No Matches
RTP source

The rtp-source module creates a PipeWire source that receives audio and midi RTP packets.

This module is usually loaded from the SAP Announce and create RTP streams so that the source.ip and source.port and format parameters matches that of the sender.

# Module Name

libpipewire-module-rtp-source

# Module Options

Options specific to the behavior of this module

- local.ifname = <str>: interface name to use
- source.ip = <str>: the source ip address, default 224.0.0.56. Set this to the IP address you want to receive packets from or 0.0.0.0 to receive from any source address.
- source.port = <int>: the source port
- node.always-process = <bool>: true to receive even when not running
- sess.latency.msec = <float>: target network latency in milliseconds, default 100
- sess.ignore-ssrc = <bool>: ignore SSRC, default false
- sess.media = <string>: the media type audio|midi|opus, default audio
- stream.may-pause = <bool>: pause the stream when no data is reveived, default false
- stream.props = {}: properties to be passed to the stream

# General options

Options with well-known behavior:

- PW_KEY_REMOTE_NAME
- PW_KEY_AUDIO_FORMAT
- PW_KEY_AUDIO_RATE
- PW_KEY_AUDIO_CHANNELS
- SPA_KEY_AUDIO_POSITION
- PW_KEY_MEDIA_NAME
- PW_KEY_MEDIA_CLASS
- PW_KEY_NODE_NAME
- PW_KEY_NODE_DESCRIPTION
- PW_KEY_NODE_GROUP
- PW_KEY_NODE_LATENCY
- PW_KEY_NODE_VIRTUAL

# Example configuration

# ~/.config/pipewire/pipewire.conf.d/my-rtp-source.conf
context.modules = [
{ name = libpipewire-module-rtp-source
args = {
#local.ifname = eth0
#source.ip = 224.0.0.56
#source.port = 0
sess.latency.msec = 100
#sess.ignore-ssrc = false
#node.always-process = false
#sess.media = "audio"
#audio.format = "S16BE"
#audio.rate = 48000
#audio.channels = 2
#audio.position = [ FL FR ]
stream.props = {
#media.class = "Audio/Source"
node.name = "rtp-source"
}
}
}
]

Since
  0.3.60