Czy karta dźwiękowa zaimplementowana w głośnikach ID 4c4a:4155 Jieli Technology UACDemoV1.0 mogą może być przyczyną, że ca pomocą polecenia
amixer -D plughw:0,0 sset Master 20%
ALSA lib control.c:1528:(snd_ctl_open_noupdate) Invalid CTL plughw:0,0
amixer: Mixer attach plughw:0,0 error: No such file or directory
nie da się zmienić poziomu głośności ?
Numer karty i urządzenia mam ustawione poprawnie:
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: UACDemoV10 [UACDemoV1.0], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
ChatGPT
Błąd, który widzisz, sugeruje, że nie udało się poprawnie otworzyć kontrolera dźwięku ALSA przy użyciu polecenia amixer. Problem może wynikać z niewłaściwego ustawienia parametrów urządzenia dźwiękowego w poleceniu lub z problemów z samym urządzeniem.
Spróbuj użyć poniższego polecenia, aby ustawić poziom głośności za pomocą amixer:
bash
Copy code
amixer -c 0 sset Master 20%
Opcja -c 0 wskazuje, że chcesz użyć karty dźwiękowej o numerze 0. Jeśli to nie zadziała, możesz spróbować również:
amixer -c UACDemoV1.0 sset Master 20%
Wprowadź to polecenie, a następnie sprawdź, czy poziom głośności został zmieniony. Jeśli to nadal nie działa, mogą występować problemy z obsługą ALSA dla tego konkretnego urządzenia. W takim przypadku warto sprawdzić dostępność aktualizacji sterowników lub poszukać w sieci informacji od innych użytkowników tego konkretnego modelu karty dźwiękowej.
User
Otrzymałem odpowiedź:
# amixer -c 0 sset Master 20%
amixer: Unable to find simple control 'Master',0"
ChatGPT
Otrzymując komunikat "Unable to find simple control 'Master',0", oznacza to, że kontrola o nazwie "Master" nie jest dostępna dla twojej karty dźwiękowej. W takim przypadku warto sprawdzić dostępne kontrolki dźwięku, aby ustawić głośność.
Aby to zrobić, możesz użyć poniższego polecenia, aby zobaczyć dostępne kontrolki dla twojej karty:
Odpowiedź powinna zawierać listę dostępnych kontrolerów dźwięku. Sprawdź, czy wśród nich widnieje odpowiedni kontroler głośności, a następnie użyj go w poleceniu amixer. Na przykład, jeśli widzisz kontroler o nazwie "Playback Volume", możesz użyć poniższego polecenia:
amixer -c 0 sset "Playback Volume" 20%
Upewnij się, że używasz dokładnej nazwy kontrolera, jaką uzyskałeś z poprzedniego polecenia amixer -c 0 controls. Jeśli jednak nie znajdziesz odpowiedniego kontrolera, może to oznaczać, że sterownik ALSA dla twojego urządzenia nie obsługuje pełnej funkcji kontroli głośności. W takim przypadku możesz rozważyć inne metody ustawiania głośności, takie jak użycie narzędzi dostarczanych przez środowisko pulpitu lub innych narzędzi zarządzających dźwiękiem.
User
Otrzymałem odpowiedź
# amixer -c 0 controls
numid=4,iface=CARD,name='Keep Interface'
numid=2,iface=MIXER,name='PCM Playback Switch'
numid=3,iface=MIXER,name='PCM Playback Volume'
numid=1,iface=PCM,name='Playback Channel Map'"
ChatGPT
Dziękuję za dostarczenie informacji o dostępnych kontrolkach. W tym przypadku widoczne są dwie istotne kontrolki związane z głośnością:
PCM Playback Switch
PCM Playback Volume
Możesz spróbować dostosować głośność za pomocą tej drugiej kontrolki. Oto jak to zrobić:
amixer -c 0 sset "PCM Playback Volume" 20%
Jeśli powyższe polecenie nie działa, sprawdź, czy kontrolka PCM Playback Switch jest ustawiona na "on". Jeśli nie, możesz włączyć ją za pomocą poniższego polecenia:
amixer -c 0 sset "PCM Playback Switch" on
Następnie spróbuj ponownie dostosować głośność poleceniem dotyczącym PCM Playback Volume.
Upewnij się, że używasz dokładnych nazw kontrolerów, tak jak je uzyskałeś z polecenia amixer -c 0 controls. Jeśli to również nie działa, może to oznaczać, że sterownik ALSA dla twojego urządzenia nie obsługuje pełnej funkcji kontroli głośności, i wtedy warto byłoby rozważyć inne metody zarządzania głośnością, takie jak użycie narzędzi dostarczanych przez środowisko pulpitu lub innych narzędzi zarządzających dźwiękiem.
User
Dostałem odpowiedzi:
# amixer -c 0 sset "PCM Playback Volume" 20%
amixer: Unable to find simple control 'PCM Playback Volume',0
# amixer -c 0 sset "PCM Playback Switch" on
amixer: Unable to find simple control 'PCM Playback Switch',0"
ChatGPT
Wygląda na to, że kontrolki PCM Playback Volume i PCM Playback Switch nie są dostępne w sposób, w jaki się spodziewamy. To może być wynik specyfiki sterowników lub konkretnego modelu karty dźwiękowej.
W takim przypadku, zamiast korzystać z amixer, możesz spróbować narzędzi dostarczonych przez środowisko pulpitu lub inne narzędzia do zarządzania dźwiękiem dostępne na twoim systemie. Przykładowo, dla środowiska pulpitu GNOME można skorzystać z poniższego polecenia:
gnome-control-center sound
Jeśli używasz innego środowiska pulpitu, istnieją odpowiedniki dla różnych menedżerów dźwięku. Próbuj dostosowywać głośność przy użyciu narzędzi dostępnych w interfejsie graficznym systemu operacyjnego.
Jeśli z jakiegoś powodu konieczne jest korzystanie z linii poleceń, a amixer nie działa, możesz również rozważyć użycie innego narzędzia, takiego jak alsamixer. Zainstaluj go, jeśli nie jest zainstalowane, a następnie uruchom komendę:
W alsamixer możesz używać strzałek do góry i w dół, aby dostosować poziom głośności, a klawisz "M" do włączania/wyłączania mute. Po dostosowaniu poziomu głośności, naciśnij klawisz "Esc", aby wyjść z alsamixer.
W przypadku dalszych problemów, zalecam również sprawdzenie dokumentacji systemu operacyjnego oraz forów internetowych, aby znaleźć informacje specyficzne dla Twojej karty dźwiękowej i systemu.
User
To jest router na Openwrt, tu nie ma pulpitu. Ale alsamixer zadziałało
ChatGPT
Dobrze, cieszę się, że alsamixer zadziałało dla Ciebie. W przypadku routerów z systemem OpenWrt, które zazwyczaj nie mają środowiska pulpitu, narzędzia tekstowe takie jak alsamixer są przydatne do zarządzania ustawieniami dźwięku.
Jeśli będziesz musiał utrzymać ustawienia głośności w późniejszym czasie, możesz skorzystać z alsactl do zapisania i przywrócenia konfiguracji ALSA. Na przykład, aby zapisać bieżące ustawienia dźwięku:
Aby później przywrócić te ustawienia:
Dziękuję za cierpliwość, i jeśli masz jakiekolwiek inne pytania, śmiało pytaj!
User
Dostałem odpowiedź
# alsactl store
alsactl: save_state:1652: Cannot open /var/lib/alsa/asound.state for writing: No such file or directory
ChatGPT
Wygląda na to, że alsactl nie może zapisać stanu, ponieważ nie może znaleźć lub utworzyć katalogu /var/lib/alsa/ lub pliku /var/lib/alsa/asound.state. W przypadku systemów OpenWrt może to wynikać z faktu, że system plików jest dostępny tylko do odczytu w trybie "read-only" lub brak odpowiednich uprawnień.
Aby obejść ten problem, możesz użyć innego katalogu, w którym masz uprawnienia do zapisu. Na przykład, możesz użyć katalogu /tmp:
alsactl --file /tmp/asound.state store
To polecenie zapisze bieżący stan dźwięku do pliku /tmp/asound.state. Następnie, gdy będziesz chciał przywrócić te ustawienia, użyj:
alsactl --file /tmp/asound.state restore
Pamiętaj, że plik ten będzie utracony po restarcie systemu, więc jeśli chcesz, aby ustawienia były trwałe, będziesz musiał znaleźć sposób na zapisanie ich w trwałym miejscu. W systemach OpenWrt możesz to osiągnąć poprzez dostosowanie konfiguracji, jednak procedury te mogą się różnić w zależności od wersji OpenWrt i używanego sprzętu. Warto sprawdzić oficjalną dokumentację OpenWrt oraz forów społeczności, aby uzyskać bardziej szczegółowe informacje na temat dostosowywania konfiguracji ALSA.