Skip to main content
Topic: help understanding pipewire config (Read 519 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

help understanding pipewire config

my sound dac  has 2 entries

alsa_output.usb-Creative_Technology_Ltd_Sound_BlasterX_G5_AB006147521-00.analog-stereo

alsa_input,.usb-Creative_Technology_Ltd_Sound_BlasterX_G5_AB006147521-00.analog-stereo





,how would i put that, in this, config

# ALSA monitor config file for PipeWire version "0.3.28" #

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   = 2
                #api.alsa.headroom      = 0
                #api.alsa.start-delay   = 0
                #api.alsa.disable-mmap  = false
                #api.alsa.disable-batch = false
                #api.alsa.use-chmap     = false
            }
        }
    }
]