.TH "libpipewire-module-vban-recv" 7 "1.4.9" "PipeWire" \" -*- nroff -*-
.ad l
.nh
.SH NAME
libpipewire-module-vban-recv \- VBAN receiver 
The \fCvban-recv\fP module creates a PipeWire source that receives audio and midi \fCVBAN\fP packets\&.
.PP
The receive will listen on a specific port (6980) and create a stream for each VBAN stream received on the port\&.
.PP
.SH "MODULE NAME"
.PP
.PP
\fClibpipewire-module-vban-recv\fP
.PP
.SH "MODULE OPTIONS"
.PP
.PP
Options specific to the behavior of this module
.PP
.IP "\(bu" 2
\fClocal\&.ifname = <str>\fP: interface name to use
.IP "\(bu" 2
\fCsource\&.ip = <str>\fP: the source ip address to listen on, default 127\&.0\&.0\&.1
.IP "\(bu" 2
\fCsource\&.port = <int>\fP: the source port to listen on, default 6980
.IP "\(bu" 2
\fCnode\&.always-process = <bool>\fP: true to receive even when not running
.IP "\(bu" 2
\fCsess\&.latency\&.msec = <str>\fP: target network latency in milliseconds, default 100
.IP "\(bu" 2
\fCstream\&.props = {}\fP: properties to be passed to all the stream
.IP "\(bu" 2
\fCstream\&.rules\fP = <rules>: match rules, use create-stream actions\&.
.PP
.PP
.SS "stream\&.rules matches"
.PP
.IP "\(bu" 2
\fCvban\&.ip\fP: the IP address of the VBAN sender
.IP "\(bu" 2
\fCvban\&.port\fP: the port of the VBAN sender
.IP "\(bu" 2
\fCsess\&.name\fP: the name of the VBAN stream
.PP
.PP
.SS "stream\&.rules create-stream"
.PP
In addition to all the properties that can be passed to a stream, you can also set:
.PP
.IP "\(bu" 2
\fCsess\&.latency\&.msec = <str>\fP: target network latency in milliseconds, default 100
.PP
.PP
.SH "GENERAL OPTIONS"
.PP
.PP
Options with well-known behavior:
.PP
.IP "\(bu" 2
\fBremote.name\fP
.IP "\(bu" 2
\fBaudio.position\fP
.IP "\(bu" 2
\fBmedia.name\fP
.IP "\(bu" 2
\fBmedia.class\fP
.IP "\(bu" 2
\fBnode.name\fP
.IP "\(bu" 2
\fBnode.description\fP
.IP "\(bu" 2
\fBnode.group\fP
.IP "\(bu" 2
\fBnode.latency\fP
.IP "\(bu" 2
\fBnode.virtual\fP
.PP
.PP
.SH "EXAMPLE CONFIGURATION"
.PP
.PP
.PP
.nf
# ~/\&.config/pipewire/pipewire\&.conf\&.d/my-vban-recv\&.conf

context\&.modules = [
{   name = libpipewire-module-vban-recv
    args = {
        #local\&.ifname = eth0
        #source\&.ip = 127\&.0\&.0\&.1
        #source\&.port = 6980
        sess\&.latency\&.msec = 100
        #node\&.always-process = false
        #audio\&.position = [ FL FR ]
        stream\&.props = {
           #media\&.class = "Audio/Source"
           #node\&.name = "vban-receiver"
        }
        stream\&.rules = [
            {   matches = [
                    {    sess\&.name = "~\&.*"
                         #sess\&.media = "audio" | "midi"
                         #vban\&.ip = ""
                         #vban\&.port = 1000
                         #audio\&.channels = 2
                         #audio\&.format = "U8" | "S16LE" | "S24LE" | "S32LE" | "F32LE" | "F64LE"
                         #audio\&.rate = 44100
                    }
                ]
                actions = {
                    create-stream = {
                        stream\&.props = {
                            #sess\&.latency\&.msec = 100
                            #target\&.object = ""
                            #audio\&.position = [ FL FR ]
                            #media\&.class = "Audio/Source"
                            #node\&.name = "vban-receiver"
                        }
                    }
                }
            }
        ]
    }
}
]
.fi
.PP
.PP
\fBSince\fP
.RS 4
0\&.3\&.76 
.RE
.PP


