wee_Z3U.S Posted April 14 Report Share Posted April 14 Chciałbym poruszyć temat plików konfiguracyjnych pipwire / wireplumber. Mam USB DAC Fiio KA3 Urządzenie działa poprawnie i jest wykrywane ale chciałbym dokonać własnej konfiguracji: Audio ├─ Devices: │ 49. Rembrandt Radeon High Definition Audio Controller [alsa] │ 50. Family 17h/19h/1ah HD Audio Controller [alsa] │ 51. FiiO KA3 [alsa] │ 82. JBL Charge 4 [bluez5] │ ├─ Sinks: │ 44. Family 17h/19h/1ah HD Audio Controller Analog Stereo [vol: 0.40] │ 58. Rembrandt Radeon High Definition Audio Controller Digital Stereo (HDMI) [vol: 0.40] │ * 60. FiiO KA3 Analog Stereo [vol: 0.40] │ 119. JBL Charge 4 [vol: 0.15] Mam zainstalowane pipwie z wireplumber, i nie wiem gdzie i jak sforamtowany plik dodać konfiguracyjny do pipwire / wireplumber. wpctl inspect 51 id 51, type PipeWire:Interface:Device alsa.card = "2" alsa.card_name = "FiiO KA3" alsa.components = "USB2972:0053" alsa.driver_name = "snd_usb_audio" alsa.id = "KA3" alsa.long_card_name = "FiiO FiiO KA3 at usb-0000:67:00.4-1.1.4, high speed" alsa.mixer_name = "USB Mixer" api.acp.auto-port = "false" api.acp.auto-profile = "false" api.alsa.card = "2" api.alsa.card.longname = "FiiO FiiO KA3 at usb-0000:67:00.4-1.1.4, high speed" api.alsa.card.name = "FiiO KA3" api.alsa.path = "hw:2" api.alsa.split-enable = "true" api.alsa.use-acp = "true" api.dbus.ReserveDevice1 = "Audio2" api.dbus.ReserveDevice1.Priority = "-20" * client.id = "48" * device.api = "alsa" device.bus = "usb" device.bus-id = "usb-FiiO_FiiO_KA3_FiiO_KA3-00" device.bus-path = "pci-0000:67:00.4-usb-0:1.1.4:1.0" * device.description = "FiiO KA3" device.enum.api = "udev" device.icon-name = "audio-card-analog-usb" * device.name = "alsa_card.usb-FiiO_FiiO_KA3_FiiO_KA3-00" * device.nick = "FiiO KA3" device.plugged.usec = "130746107734" device.product.id = "0x0053" device.product.name = "FiiO KA3" device.serial = "FiiO_FiiO_KA3_FiiO_KA3" device.string = "2" device.subsystem = "sound" device.sysfs.path = "/devices/pci0000:00/0000:00:08.3/0000:67:00.4/usb7/7-1/7-1.1/7-1.1.4/7-1.1.4:1.0/sound/card2" device.vendor.id = "0x2972" device.vendor.name = "FiiO Electronics Technology" * factory.id = "15" * media.class = "Audio/Device" node.nick = "LALALAA" object.path = "alsa:acp:KA3" * object.serial = "51" spa.object.id = "6" Chciałbym zacząć od najprostszej rzeczy zmiany nazwy urządzenia. Próbowałem już poradników : https://davidelettieri.it/2024/02/04/fedora-pipewire-switch-channels https://bbs.archlinux.org/viewtopic.php?id=285115 https://discussion.fedoraproject.org/t/how-to-enable-hdmi-audio-output-in-wireplumber-on-fedora-41/137313 https://wiki.archlinux.org/title/PipeWire Mam Fedora 41. Dziękuje i pozraszam za moja niewiedze :( Link to comment Share on other sites More sharing options...
tomcio Posted April 15 Report Share Posted April 15 ~/.config/wireplumber/wireplumber.conf Link to comment Share on other sites More sharing options...
wee_Z3U.S Posted April 15 Author Report Share Posted April 15 Witam, Rozumiem że plik musi dokładnie się tak nazywać, a jak ma wyglądać wewnętrzna struktura konfiguracji pliku ? Link to comment Share on other sites More sharing options...
@sunrise Posted April 15 Report Share Posted April 15 Godzinę temu, wee_Z3U.S napisał: a jak ma wyglądać wewnętrzna struktura konfiguracji pliku Najlepiej zapoznać się z dokumentacją https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration.html Link to comment Share on other sites More sharing options...
wee_Z3U.S Posted April 15 Author Report Share Posted April 15 Właśnie ta konfiguracja nie działa (oparta o dokumentacje), nie wiem w czym jest problem. Ścieżki do pliku z konfiguracją, czy szkielet pliku konfiguracyjnego. Link to comment Share on other sites More sharing options...
tomcio Posted April 16 Report Share Posted April 16 Właśnie, że działa. Zmieniłem sobie testowo nazwę jednego głośniczka i poszło bez problemów. Krok po kroku: 1. Wylistowałem co w ogóle mam z komendą niżej wraz z wybranym urządzeniem do dalszych testów: $ pw-cli ls Node | awk 'BEGIN {RS="\n\tid "; ORS="\n\n"} /Sink/' 52, type PipeWire:Interface:Node/3 object.serial = "53" object.path = "alsa:acp:Generic:11:playback" factory.id = "19" client.id = "40" device.id = "46" priority.session = "736" priority.driver = "736" node.description = "Starship/Matisse HD Audio Controller Cyfrowe stereo (IEC958)" node.name = "alsa_output.pci-0000_0b_00.4.iec958-stereo" node.nick = "ALCS1200A Digital" media.class = "Audio/Sink" 2. Napisałem konfigurację - tak swoją drogą jeśli umieścisz config w ~/.config/wireplumber/wireplumber.conf to de facto będziesz musiał napisać całą konfigurację od zera, dlatego lepiej umieścić w conf.d - nazwa nie ma znaczenia, ważne by było rozszerzenie .conf - dzięki temu po prostu nadbudowujesz domyślną konfigurację swoją: $ cat .config/wireplumber/wireplumber.conf.d/wireplumber.conf monitor.alsa.rules = [ { matches = [{ node.name = "alsa_output.pci-0000_0b_00.4.iec958-stereo" }] actions = { update-props = { node.description = "Desktop Speakers" } } } ] 3. Restart pipewire: systemctl --user restart pipewire I to wszystko - działa jak powinno - urządzenie zamiast ""Starship/Matisse..." przedstawia się teraż jako "Desktop Speakers" 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now