.TH "libpipewire-module-example-filter" 7 "1.0.6" "PipeWire" \" -*- nroff -*- .ad l .nh .SH NAME libpipewire-module-example-filter \- Example Filter .SH DESCRIPTION .PP The example filter is a good starting point for writing a custom filter\&. We refer to the source code for more information\&. .PP .SH "MODULE NAME" .PP .PP \fRlibpipewire-module-example-filter\fP .PP .SH "MODULE OPTIONS" .PP .PP .IP "\(bu" 2 \fRnode\&.description\fP: a human readable name for the filter streams .IP "\(bu" 2 \fRcapture\&.props = {}\fP: properties to be passed to the input stream .IP "\(bu" 2 \fRplayback\&.props = {}\fP: properties to be passed to the output stream .PP .PP .SH "GENERAL OPTIONS" .PP .PP Options with well-known behavior\&. Most options can be added to the global configuration or the individual streams: .PP .IP "\(bu" 2 \fBremote.name\fP .IP "\(bu" 2 \fBaudio.rate\fP .IP "\(bu" 2 \fBaudio.channels\fP .IP "\(bu" 2 \fBaudio.position\fP .IP "\(bu" 2 \fBmedia.name\fP .IP "\(bu" 2 \fBnode.latency\fP .IP "\(bu" 2 \fBnode.description\fP .IP "\(bu" 2 \fBnode.group\fP .IP "\(bu" 2 \fBnode.link.group\fP .IP "\(bu" 2 \fBnode.virtual\fP .IP "\(bu" 2 \fBnode.name:\fP See notes below\&. If not specified, defaults to 'filter--'\&. .PP .PP Stream only properties: .PP .IP "\(bu" 2 \fBmedia.class\fP .IP "\(bu" 2 \fBnode.name:\fP if not given per stream, the global node\&.name will be prefixed with 'input\&.' and 'output\&.' to generate a capture and playback stream node\&.name respectively\&. .PP .PP .SH "EXAMPLE CONFIGURATION OF A VIRTUAL SOURCE" .PP .PP .PP .nf context\&.modules = [ { name = libpipewire\-module\-example\-filter args = { node\&.description = "Example Filter" capture\&.props = { audio\&.position = [ FL FR ] node\&.passive = true } playback\&.props = { node\&.name = "Example Filter" media\&.class = "Audio/Source" audio\&.position = [ FL FR ] } } } ] .fi .PP .PP .PP .nf pw\-cli \-m lm libpipewire\-module\-example\-filter '{ audio\&.position=[FL FR] }' .fi .PP