mirror of
				https://gitea.blesmrt.net/mikaela/shell-things.git
				synced 2025-10-31 01:17:20 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			136 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # ALSA monitor config file for PipeWire version "0.3.28" #
 | |
| 
 | |
| # saivert on #pipewire made this 2021-05-23 around 15 Z
 | |
| # based on pw-cli dump short node && pw-cli dump short device
 | |
| # save as ~/.config/pipewire/media-session.d/alsa-monitor.conf
 | |
| # then restart pipewire and pipewire-pulse like so: systemctl --user restart pipewire pipewire-pulse
 | |
| 
 | |
| properties = {
 | |
| 	# Create a JACK device. This is not enabled by default because
 | |
| 	# it requires that the PipeWire JACK replacement libraries are
 | |
| 	# not used by the session manager, in order to be able to
 | |
| 	# connect to the real JACK server.
 | |
| 	#alsa.jack-device = false
 | |
| 
 | |
| 	# Reserve devices.
 | |
| 	#alsa.reserve = true
 | |
| }
 | |
| 
 | |
| rules = [
 | |
| 	# An array of matches/actions to evaluate.
 | |
| 	{
 | |
| 		# Rules for matching a device or node. It is an array of
 | |
| 		# properties that all need to match the regexp. If any of the
 | |
| 		# matches work, the actions are executed for the object.
 | |
| 		matches = [
 | |
| 			{
 | |
| 				# This matches all cards. These are regular expressions
 | |
| 				# so "." matches one character and ".*" matches many.
 | |
| 				device.name = "~alsa_card.*"
 | |
| 			}
 | |
| 		]
 | |
| 		actions = {
 | |
| 			# Actions can update properties on the matched object.
 | |
| 			update-props = {
 | |
| 				# Use ALSA-Card-Profile devices. They use UCM or
 | |
| 				# the profile configuration to configure the device
 | |
| 				# and mixer settings.
 | |
| 				api.alsa.use-acp = true
 | |
| 
 | |
| 				# Use UCM instead of profile when available. Can be
 | |
| 				# disabled to skip trying to use the UCM profile.
 | |
| 				#api.alsa.use-ucm = true
 | |
| 
 | |
| 				# Don't use the hardware mixer for volume control. It
 | |
| 				# will only use software volume. The mixer is still used
 | |
| 				# to mute unused paths based on the selected port.
 | |
| 				#api.alsa.soft-mixer = false
 | |
| 
 | |
| 				# Ignore decibel settings of the driver. Can be used to
 | |
| 				# work around buggy drivers that report wrong values.
 | |
| 				#api.alsa.ignore-dB = false
 | |
| 
 | |
| 				# The profile set to use for the device. Usually this is
 | |
| 				# "default.conf" but can be changed with a udev rule
 | |
| 				# or here.
 | |
| 				#device.profile-set = "profileset-name.conf"
 | |
| 
 | |
| 				# The default active profile. Is by default set to "Off".
 | |
| 				#device.profile = "default profile name"
 | |
| 
 | |
| 				# Automatically select the best profile. This is the
 | |
| 				# highest priority available profile. This is disabled
 | |
| 				# here and instead implemented in the session manager
 | |
| 				# where it can save and load previous preferences.
 | |
| 				api.acp.auto-profile = false
 | |
| 
 | |
| 				# Automatically switch to the highest priority available
 | |
| 				# port. This is disabled here and implemented in the
 | |
| 				# session manager instead.
 | |
| 				api.acp.auto-port = false
 | |
| 
 | |
| 				# Other properties can be set here.
 | |
| 				#device.nick = "My Device"
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| # Begin customized config section
 | |
| 
 | |
| 	{
 | |
| 		matches = [
 | |
| 			{
 | |
| 				# This matches your USB headset
 | |
| 				device.name = "alsa_card.usb-Logitech_Logitech_USB_Headset-00"
 | |
| 			}
 | |
| 		]
 | |
| 		actions = {
 | |
| 			# Actions can update properties on the matched object.
 | |
| 			update-props = {
 | |
| 				api.alsa.soft-mixer = true
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| #End customized config section
 | |
| 
 | |
| 	{
 | |
| 		matches = [
 | |
| 			{
 | |
| 				# Matches all sources. These are regular expressions
 | |
| 				# so "." matches one character and ".*" matches many.
 | |
| 				node.name = "~alsa_input.*"
 | |
| 			}
 | |
| 			{
 | |
| 				# Matches all sinks.
 | |
| 				node.name = "~alsa_output.*"
 | |
| 			}
 | |
| 		]
 | |
| 		actions = {
 | |
| 			update-props = {
 | |
| 				#node.nick				= "My Node"
 | |
| 				#node.nick				= null
 | |
| 				#priority.driver		= 100
 | |
| 				#priority.session		= 100
 | |
| 				node.pause-on-idle		= false
 | |
| 				#resample.quality		= 4
 | |
| 				#channelmix.normalize	= false
 | |
| 				#channelmix.mix-lfe		= false
 | |
| 				#audio.channels			= 2
 | |
| 				#audio.format			= "S16LE"
 | |
| 				#audio.rate				= 44100
 | |
| 				#audio.position			= "FL,FR"
 | |
| 				#session.suspend-timeout-seconds = 5		# 0 disables suspend
 | |
| 				#monitor.channel-volumes = false
 | |
| 
 | |
| 				#api.alsa.period-size	= 1024
 | |
| 				#api.alsa.headroom		= 0
 | |
| 				#api.alsa.start-delay	= 0
 | |
| 				#api.alsa.disable-mmap	= false
 | |
| 				#api.alsa.disable-batch = false
 | |
| 				#api.alsa.use-chmap		= false
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| ]
 |