#daemon config file for PipeWire version "0.3.18" ## set-prop is used to configure properties in the system # #set-prop library.name.system support/libspa-support #set-prop context.data-loop.library.name.system support/libspa-support #set-prop link.max-buffers 64 set-prop link.max-buffers 16 # version < 3 clients can't handle more #set-prop mem.allow-mlock true #set-prop log.level 2 ## Properties for the DSP configuration # #set-prop default.clock.rate 48000 #set-prop default.clock.quantum 1024 #set-prop default.clock.min-quantum 32 #set-prop default.clock.max-quantum 8192 #set-prop default.video.width 640 #set-prop default.video.height 480 #set-prop default.video.rate.num 25 #set-prop default.video.rate.denom 1 ## add-spa-lib # # used to find spa factory names. It maps an spa factory name # regular expression to a library name that should contain # that factory. # add-spa-lib audio.convert* audioconvert/libspa-audioconvert add-spa-lib api.alsa.* alsa/libspa-alsa add-spa-lib api.v4l2.* v4l2/libspa-v4l2 add-spa-lib api.libcamera.* libcamera/libspa-libcamera add-spa-lib api.bluez5.* bluez5/libspa-bluez5 add-spa-lib api.vulkan.* vulkan/libspa-vulkan add-spa-lib api.jack.* jack/libspa-jack add-spa-lib support.* support/libspa-support #add-spa-lib videotestsrc videotestsrc/libspa-videotestsrc #add-spa-lib audiotestsrc audiotestsrc/libspa-audiotestsrc ## load-module [-ifexists] [= ...] # # Loads a module with the given parameters. Normally failure is # fatal if the module is not found, unless -ifexists is given. # load-module libpipewire-module-rtkit # rt.prio=20 rt.time.soft=200000 rt.time.hard=200000 load-module libpipewire-module-protocol-native load-module libpipewire-module-profiler load-module libpipewire-module-metadata load-module libpipewire-module-spa-device-factory load-module libpipewire-module-spa-node-factory load-module libpipewire-module-client-node load-module libpipewire-module-client-device load-module libpipewire-module-portal load-module libpipewire-module-access # access.allowed=/usr/bin/pipewire-media-session access.force=flatpak load-module libpipewire-module-adapter load-module libpipewire-module-link-factory load-module libpipewire-module-session-manager ## create-object [-nofail] [= ...] # # Creates an object from a PipeWire factory with the given parameters. # If -nofail is given, errors are ignored (and no object is created) # #create-object spa-node-factory factory.name=videotestsrc node.name=videotestsrc Spa:Pod:Object:Param:Props:patternType=1 #create-object -nofail spa-device-factory factory.name=api.jack.device foo=bar #create-object spa-device-factory factory.name=api.alsa.enum.udev #create-object spa-device-factory factory.name=api.alsa.seq.bridge node.name=Internal-MIDI-Bridge #create-object adapter factory.name=audiotestsrc node.name=my-test #create-object spa-node-factory factory.name=api.vulkan.compute.source node.name=my-compute-source create-object spa-node-factory factory.name=support.node.driver node.name=Dummy priority.driver=8000 ## exec # # Execute the given program. # # Start the session manager. Run the session manager with -h for # options. # # The bluetooth module is disabled by default because it causes # conflicts with PulseAudio. If you disable PulseAudio or don't # load its bluetooth module, you can enable it here with -e bluez5 # exec /usr/bin/pipewire-media-session # # You can optionally start the pulseaudio-server here as well # but it better to start it as a systemd service. # It can be interesting to start another daemon here that listens # on another address with the -a option (eg. -a tcp:4713) # #exec /usr/bin/pipewire-pulse