Kupiłem kartę dźwiękową USB. Chciałbym skonfigurować mój pulpit z Linuksem, aby preferował urządzenie USB, jeśli jest podłączony i automatycznie przełącza się, gdy urządzenie jest (nie) podłączone. Czy to możliwe i jak?
linux
usb
sound-card
alsa
debian-wheezy
Petr Pudlák
źródło
źródło
Odpowiedzi:
Znajdź swoją kartę za pomocą
Aby uzyskać prawidłowe nazwy kart ALSA, użyj
aplay
:a następnie utwórz za
/etc/asound.conf
pomocą:Zamień „kartę 1” na numer lub nazwę karty określoną powyżej.
Alternatywnie możesz zmienić kolejność kart, aby karta USB była kartą 0 i działała bez edycji
asound.conf
.źródło
defaults.pcm.card 1 defaults.ctl.card 1
forum.palemoon.org/viewtopic.php?t=9661#p66016jest to metoda wyboru domyślnej karty dźwiękowej w Alsa. Jeśli chcesz korzystać z Pulse Audio, możesz zainstalować Alsa.
wyświetli listę modułów dźwiękowych. Wyjście polecenia będzie takie (np.):
możesz z łatwością zrozumieć, która karta dźwiękowa USB jest z góry.
edytuj ten plik alsa-base.conf w taki sposób, aby twoja preferowana karta miała indeks = -2 / 0, a druga karta miała indeks = -1/1 (trzymaj się -2 i -1)
w tym przypadku urządzenie USB jest preferowanym urządzeniem.
jeśli masz dwie różne karty o tej samej nazwie na wyjściu, to tak:
wydaj to polecenie, aby dowiedzieć się, które:
następnie edytuj moduły w ten sposób:
konieczne może być ponowne uruchomienie komputera. więc może być konieczne ręczne przełączenie kart dźwiękowych.
źródło
Nie mogłem również uzyskać danych wyjściowych z mojego urządzenia USB. Moje
cat /proc/asound/modules
wyniki to:Próbowałem obu opisanych tutaj odpowiedzi, które nie pomogły (wiele kombinacji indeksu i wiele restartów). Myślę, że problemem było zainicjowanie urządzenia USB po uruchomieniu. Cokolwiek, więc moje działające rozwiązanie umieszcza na czarnej liście inne urządzenie dźwiękowe, aktualizując
/etc/modprobe.d/blacklist.conf
jako:źródło
Odpowiedź Matija Nalis tylko dla mnie zadziałała (alsamixer zmienił domyślnie, ale inne rzeczy, takie jak aplay i firefox, uparcie utknęły w niewłaściwym domyślnym ustawieniu). Ten przykład z wiki debian działał dla mnie (na laptopie CentOS-6):
Dla przypomnienia: ALSA jest słabo udokumentowane, a szczególnie to bardzo proste rzeczy, takie jak wybór karty, która jest zbyt trudna. Co gorsza, wydaje się zmieniać między systemami. Ponadto dostałem ten tag „Generic_1” z aplay -l, gdzie pojawia się jako „karta 1” na liście. Wydawało się, że inni go używają, więc zrobiłem to samo ... co to znaczy, że nie mogę powiedzieć.
źródło
Chociaż możesz zmienić domyślną kartę alsa, edytując .asoundrc lub system asound.conf, istnieje kilka istotnych problemów z tym podejściem.
Jest delikatny i wymaga uznania aplikacji ponownie.
Jeśli chcesz przełączać karty w locie, naprawdę musisz użyć serwera dźwięku, który poprawnie oddziela aplikacje od karty dźwiękowej, takie jak pulseaudio.
źródło
Oto wariant odpowiedzi Matija Nalis i Tel. Oto, co zadziałało dla mnie:
~ / .asoundrc
(Odroid C0, Debian Jessie, HDMI audio jako karta 0 i USB Sound Card jako karta 1 zgodnie z aplay -l)
Uwaga: inne metody nie działały dla mnie, ponieważ / proc / asound / modules nie istnieje i nie ma modułu audio HDMI do czarnej listy lub o niskim priorytecie, jest on osadzony w jądrze. Wygląda na to, że musiałbym ponownie skompilować jądro bez obsługi audio HDMI, aby całkowicie je wyłączyć.
źródło