.TH "libpipewire-module-rtp-sap" 7 "1.0.7" "PipeWire" \" -*- nroff -*- .ad l .nh .SH NAME libpipewire-module-rtp-sap \- SAP Announce and create RTP streams .SH DESCRIPTION .PP The \fCrtp-sap\fP module announces RTP streams that match the rules with the announce-stream action\&. .PP It will create source RTP streams that are announced with SAP when they match the rule with the create-stream action\&. .PP If no stream\&.rules are given, it will announce all streams with sess\&.sap\&.announce = true and it will create a receiver for all announced streams\&. .PP .SH "MODULE NAME" .PP .PP \fClibpipewire-module-rtp-sap\fP .PP .SH "MODULE OPTIONS" .PP .PP Options specific to the behavior of this module .PP .IP "\(bu" 2 \fClocal\&.ifname = \fP: interface name to use .IP "\(bu" 2 \fCsap\&.ip = \fP: IP address of the SAP messages, default '224\&.0\&.0\&.56' .IP "\(bu" 2 \fCsap\&.port = \fP: port of the SAP messages, default 9875 .IP "\(bu" 2 \fCsap\&.cleanup\&.sec = \fP: cleanup interval in seconds, default 90 seconds .IP "\(bu" 2 \fCsource\&.ip =\fP: source IP address, default '0\&.0\&.0\&.0' .IP "\(bu" 2 \fCnet\&.ttl = \fP: TTL to use, default 1 .IP "\(bu" 2 \fCnet\&.loop = \fP: loopback multicast, default false .IP "\(bu" 2 \fCstream\&.rules\fP = : match rules, use create-stream and announce-stream actions .PP .PP .SH "GENERAL OPTIONS" .PP .PP Options with well-known behavior: .PP .IP "\(bu" 2 \fBremote.name\fP .PP .PP .SH "EXAMPLE CONFIGURATION" .PP .PP .PP .nf context\&.modules = [ { name = libpipewire\-module\-rtp\-sap args = { #local\&.ifname = "eth0" #sap\&.ip = "224\&.0\&.0\&.56" #sap\&.port = 9875 #sap\&.cleanup\&.sec = 5 #source\&.ip = "0\&.0\&.0\&.0" #net\&.ttl = 1 #net\&.loop = false stream\&.rules = [ { matches = [ # any of the items in matches needs to match, if one does, # actions are emited\&. { # all keys must match the value\&. ! negates\&. ~ starts regex\&. #rtp\&.origin = "wim 3883629975 0 IN IP4 0\&.0\&.0\&.0" #rtp\&.payload = "127" #rtp\&.fmt = "L16/48000/2" #rtp\&.session = "PipeWire RTP Stream on fedora" #rtp\&.ts\-offset = 0 #rtp\&.ts\-refclk = "private" sess\&.sap\&.announce = true } ] actions = { announce\-stream = { } } } { matches = [ { # all keys must match the value\&. ! negates\&. ~ starts regex\&. #rtp\&.origin = "wim 3883629975 0 IN IP4 0\&.0\&.0\&.0" #rtp\&.payload = "127" #rtp\&.fmt = "L16/48000/2" #rtp\&.session = "PipeWire RTP Stream on fedora" #rtp\&.ts\-offset = 0 #rtp\&.ts\-refclk = "private" rtp\&.session = "~\&.*" } ] actions = { create\-stream = { #sess\&.latency\&.msec = 100 #sess\&.ts\-direct = false #target\&.object = "" } } } ] } } ] .fi .PP .PP \fBSince\fP .RS 4 0\&.3\&.67 .RE .PP