libpipewire-module-rtp-session(7)

NAME
libpipewire-module-rtp-session - RTP session

DESCRIPTION

The rtp-session module creates a media session that is announced with avahi/mDNS/Bonjour.

Other machines on the network that run a compatible session will see each other and will be able to send audio/midi between each other.

The session setup is based on apple-midi and is compatible with apple-midi when the session is using midi.

MODULE NAME

libpipewire-module-rtp-session

MODULE OPTIONS

Options specific to the behavior of this module

•   local.ifname = <str>: interface name to use

•   control.ip =<str>: control IP address, default "0.0.0.0"

•   control.port =<int>: control port, default "0"

•   net.mtu = <int>: MTU to use, default 1280

•   net.ttl = <int>: TTL to use, default 1

•   net.loop = <bool>: loopback multicast, default false sess.discover-local: discover local services as well, default false

•   sess.min-ptime = <int>: minimum packet time in milliseconds, default 2

•   sess.max-ptime = <int>: maximum packet time in milliseconds, default 20

•   sess.latency.msec = <int>: receiver latency in milliseconds, default 100

•   sess.name = <str>: a session name

•   sess.ts-offset = <int>: an offset to apply to the timestamp, default -1 = random offset

•   sess.ts-refclk = <string>: the name of a reference clock

•   sess.media = <string>: the media type audio|midi|opus, default midi

•   stream.props = {}: properties to be passed to the stream

GENERAL OPTIONS

Options with well-known behavior:

•   remote.name

•   audio.format

•   audio.rate

•   audio.channels

•   audio.position

•   node.name

•   node.description

•   media.name

•   node.group

•   node.latency

•   node.virtual

•   media.class

EXAMPLE CONFIGURATION

 # ~/.config/pipewire/pipewire.conf.d/my-rtp-session.conf
 context.modules = [
 {   name = libpipewire-module-rtp-session
     args = {
         #local.ifname = "eth0"
         #control.ip = "0.0.0.0"
         #control.port = 0
         #net.mtu = 1280
         #net.ttl = 1
         #net.loop = false
         #sess.discover-local = false
         #sess.min-ptime = 2
         #sess.max-ptime = 20
         #sess.name = "PipeWire RTP stream"
         #sess.media = "audio"
         stream.props = {
             node.name = "rtp-sink"
             #audio.format = "S16BE"
             #audio.rate = 48000
             #audio.channels = 2
             #audio.position = [ FL FR ]
         }
     }
}
]

Since
    0.3.60