Dodaj więcej informacji, aby uczynić to pytanie bardziej przydatnym na przyszłość, nawet jeśli już na nie udzielono odpowiedzi.
ramblinjan
Wymagany tag Distro. Jak również wyjście audio, którego próbujesz użyć.
Jivings
1
Wytyczne: stackoverflow.com/questions/how-to-ask Na szczęście obecna najlepsza odpowiedź jest wystarczająco szeroka, aby pokryć twoje pytanie. Jednak dla przyszłych użytkowników witryny lepiej jest, jeśli podasz konkretną konfigurację, aby umożliwić konkretną odpowiedź.
ramblinjan
Moim problemem był niski poziom głośności na wyjściu głównym.
Odpowiedzi:
66
Dźwięk nie działa z monitorem HDMI
Jest to spowodowane niektórymi monitorami komputerowymi, które wybierają tryb DVI, nawet jeśli podłączony jest kabel HDMI. Ta poprawka może być konieczna, nawet jeśli inne urządzenia HDMI działają idealnie na tym samym monitorze (lub telewizorze)! Edytuj plik konfiguracyjny - patrz instrukcje w pliku konfiguracyjnym Raspberry-Pi .
Dodaj następujący wiersz do pliku konfiguracyjnego:
hdmi_drive=2
Dźwięk w ogóle nie działa lub w niektórych aplikacjach
Dźwięk jest domyślnie wyłączony, ponieważ sterownik dźwięku ALSA jest nadal „alfa” (nie w pełni przetestowany) na R-Pi. Aby wypróbować dźwięk, w wierszu polecenia przed „startx” wpisz
Domyślnie wyjście będzie automatyczne (hdmi, jeśli hdmi obsługuje audio, w przeciwnym razie analogowe). Możesz to wymusić za pomocą:
sudo amixer -c 0 cset numid=3 <n>
gdzie n wynosi 0 = auto, 1 = słuchawki, 2 = hdmi. ( źródło ) Jeśli używasz Debiana, spróbuj
cd /opt/vc/src/hello_pi
make -C libs/ilclient
make -C libs/vgfont
cd hello_audio
make
./hello_audio.bin
do testowania wyjścia analogowego. I przetestować HDMI.
./hello_audio.bin 1
Pamiętaj też, że może być konieczne dodanie użytkownika do grupy „audio”, aby uzyskać pozwolenie na dostęp do karty dźwiękowej.
Wprowadzanie zmian na stałe
sudo apt-get install alsa-utilsjest stały, ale sudo modprobe snd_bcm2835tylko inicjuje sterownik dla bieżącej sesji. Aby upewnić się, że moduł został zainicjowany podczas rozruchu, dodaj snd_bcm2835do /etc/modules( źródło ).
aplay -l to także przydatne polecenie do wyliczenia, czy istnieją jakieś urządzenia ALSA.
stsquad
2
To są nieaktualne informacje z stycznia 2013 r. Alsa-utils jest instalowane domyślnie, a lsmod pokazuje, że snd_bcm2835 jest tam bez konieczności robienia czegokolwiek.
CaptSaltyJack
Może i tak, ale problem może nadal występować na starych urządzeniach i niektórych dystrybucjach
Itay Grudev
1
Miałem snd-bcm2835w /etc/modulesktórym powinny być snd_bcm2835. Kiedy to zmieniłem, zadziałało.
daviewales
1
Może być również konieczna zmiana głośności miksera, jeśli nie działa w środowisku pulpitu z kontrolką GUI. Nie wiem, czy to była tylko moja pi, czy też jest to powszechny problem, ale moja głośność została ustawiona na -25 dB, co jest praktycznie niesłyszalne. amixer cset numid=1 0przywraca rozsądny poziom.
Jules
9
Myślę, że mam sposób na rozwiązanie twojego problemu, spróbuj wpisać omxplayer -o local xxx.mp3(dla pliku mp3) lub omxplayer -o local xxx.mp4(dla pliku mp4), aby usłyszeć dźwięk z raspi na słuchawkach. Możesz także wpisać omxplayer --helpwięcej informacji na temat omxplayera.
Nie musiałem robić pierwszych dwóch kroków i nie jestem pewien, czy w ogóle muszą znaleźć odpowiedź, ale reszta pracowała dla mnie z Raspberry Pi 2.
James Skemp
4
To jest powszechny błąd. Myślę, że tym, co łamie ALSA, jest PulseAudio. Jeśli chcesz użyć ALSA (domyślnie, zalecane przez Tux) użyjsudo apt-get remove PulseAudio
Aby uzyskać inne poprawki, wypróbuj wiki. To wszystko zależy. Spróbuj tego najpierw (ponieważ jest to najczęściej)
Naprawiłem to dla mnie. Używam PuleAudio do odtwarzania dźwięku z zestawu słuchawkowego Bluetooth. Kiedy próbowałem użyć analogowego portu audio, nie mogłem go uruchomić i wszystko w mojej konfiguracji było prawidłowe. Usunąłem PulseAudio i działa analogowy port audio. Szkoda, że muszę odinstalować i ponownie zainstalować pakiet, aby przełączyć między Bluetooth a gniazdem 3,5 mm.
MidnightJava
4
Używam OSMC, na którym działa Debian, i mam dźwięk do odtwarzania przez głośniki telewizora, które są podłączone przez HDMI. https://youtu.be/p2ljmTE67gs
Jeśli to, co próbujesz zrobić, spróbuj dodać dtparam=audio=ondo/boot/config.txt
Ta odpowiedź będzie szczególnie odpowiednia dla osób uaktualniających starsze instalacje do czegoś bardziej nowoczesnego.
Sam Hartman,
2
Moja obecna hipoteza robocza jest taka, że przynajmniej dla mnie dźwięk zależy w jakiś sposób od środowiska pulpitu. Mam Raspberry Pi 2 z systemem Raspbian, zainstalowany z NOOBS. Wyczyściłem go kilkakrotnie i ponownie zainstalowałem Raspbian. Dźwięk działa, gdy po raz pierwszy instaluję Raspbian. Następną rzeczą, którą zwykle robię, jest usunięcie środowiska pulpitu LXDE i zastąpienie go środowiskiem graficznym XFCE, a potem zauważyłem, że dźwięk przestał działać. Przełączanie środowisk pulpitu musi zepsuć mój dźwięk. Nie wiem, czy usuwa LXDE, czy instaluje XFCE, który go psuje.
Być może osoba ma rację, która zasugerowała, że winowajcą jest PulseAudio, a instalacja XFCE powoduje zainstalowanie PulseAudio. Obecnie „lxde” jest zainstalowany, „xfce4” nie jest zainstalowany, „pulseaudio” nie jest zainstalowany, a dźwięk działa.
Wystąpił problem polegający na tym, że dźwięk nie działał lub odtwarzany był dźwięk statyczny zamiast nagrania. Ale to był problem z moim podejściem, nie samym Pi. Używam Raspbian 3.6.11 (2013-02-09-wheezy-raspbian).
Przede wszystkim próbowałem odtworzyć plik MP3 aplay, który wydaje się obsługiwać tylko pliki WAV. Ponadto niektóre pliki MP3, których użyłem, mogły nie zostać utworzone za pomocą kompatybilnego kodeka. Aby przetestować wyjście dźwięku na swoim Pi, najlepiej było, gdy próbowałem pliki audio dostarczane z systemem operacyjnym Raspbian. Upewnij się także, że używasz odtwarzacza odpowiedniego dla formatu audio. Na przykład:
Użyj aplaydo plików .wav. Na przykład: aplay /usr/share/scratch/Media/Sounds/Vocals/Singer2.wav(istnieje wiele przykładowych plików audio w / usr / share / scratch / Media / Sounds).
Użyj omxplayerlub mpg123dla plików .mp3. Na przykład: użyj omxplayer /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3lub alternatywnie mpg123 /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3(jeśli jeszcze tego nie masz mpg123, powinieneś być w stanie zainstalować go za pomocą polecenia sudo apt-get install mpg123).
Służy amixerdo sterowania poziomem głośności. Na przykład: amixer cset numid=1 50%ustawia głośność wyjścia słuchawkowego na pięćdziesiąt procent.
Sam miałem problemy z analogowym wyjściem audio. Przyszedł do tego wątku między innymi, aby spróbować rozwiązać. W końcu okazuje się, że wystarczy kliknąć prawym przyciskiem myszy ikonę audio na pasku narzędzi i zmienić wybór z HDMI na Analogowy. Prawdopodobnie nie rozwiązuje to problemu, ale może pomóc komuś, kto nie słyszy dźwięku i który przegapił to łatwe rozwiązanie.
Natknąłem się na ten problem, próbując zmusić Amazon Voice Services do pracy na Raspberry Pi 3/3 +. Upewniłem się, że wybrano dźwięk analogowy. Działa również przy użyciu aplay.
Okazuje się, że AVS korzysta z elementu autoaudiosink, który z kolei wybrał element omxhdmiaudiosink, który miał wyższy priorytet niż element alsasink. W pliku /etc/xdg/gstomx-rpi.conf znajduje się sekcja omxhdmiaudiosink, którą po prostu skomentowałem. Po wykonaniu tej czynności system AVS działał dobrze (w większości przypadków odpowiedzi skracano o około ~ 0,25 sekundy).
Przypuszczam, że mógłbym również zmienić priorytet.
Jeśli przeczytasz zaakceptowaną odpowiedź, problem polega na tym, że dźwięk nie jest włączony na poziomie płyty, więc ustawienie specyficzne dla programu nie będzie działać. Po drugie, co omxplayer ma wspólnego z pierwotnym pytaniem?
Steve Robillard
To działało dla mnie, byłem w stanie odtworzyć plik wav, ale mp3 nie działało z poleceniem omxplayer. Nałożyłem -o lokalną flagę, która działała. Wciąż zastanawiam się, dlaczego ... bo już ustawiłem wyjście na słuchawki i próbowałem wszystkich innych rzeczy
Odpowiedzi:
Dźwięk nie działa z monitorem HDMI
Jest to spowodowane niektórymi monitorami komputerowymi, które wybierają tryb DVI, nawet jeśli podłączony jest kabel HDMI. Ta poprawka może być konieczna, nawet jeśli inne urządzenia HDMI działają idealnie na tym samym monitorze (lub telewizorze)! Edytuj plik konfiguracyjny - patrz instrukcje w pliku konfiguracyjnym Raspberry-Pi .
Dodaj następujący wiersz do pliku konfiguracyjnego:
Dźwięk w ogóle nie działa lub w niektórych aplikacjach
Dźwięk jest domyślnie wyłączony, ponieważ sterownik dźwięku ALSA jest nadal „alfa” (nie w pełni przetestowany) na R-Pi. Aby wypróbować dźwięk, w wierszu polecenia przed „startx” wpisz
Domyślnie wyjście będzie automatyczne (hdmi, jeśli hdmi obsługuje audio, w przeciwnym razie analogowe). Możesz to wymusić za pomocą:
gdzie n wynosi 0 = auto, 1 = słuchawki, 2 = hdmi. ( źródło ) Jeśli używasz Debiana, spróbuj
do testowania wyjścia analogowego. I przetestować HDMI.
Pamiętaj też, że może być konieczne dodanie użytkownika do grupy „audio”, aby uzyskać pozwolenie na dostęp do karty dźwiękowej.
Wprowadzanie zmian na stałe
sudo apt-get install alsa-utils
jest stały, alesudo modprobe snd_bcm2835
tylko inicjuje sterownik dla bieżącej sesji. Aby upewnić się, że moduł został zainicjowany podczas rozruchu, dodajsnd_bcm2835
do/etc/modules
( źródło ).źródło
snd-bcm2835
w/etc/modules
którym powinny byćsnd_bcm2835
. Kiedy to zmieniłem, zadziałało.amixer cset numid=1 0
przywraca rozsądny poziom.Myślę, że mam sposób na rozwiązanie twojego problemu, spróbuj wpisać
omxplayer -o local xxx.mp3
(dla pliku mp3) lubomxplayer -o local xxx.mp4
(dla pliku mp4), aby usłyszeć dźwięk z raspi na słuchawkach. Możesz także wpisaćomxplayer --help
więcej informacji na temat omxplayera.źródło
Miałem też ten sam problem z moim Raspberry Pi 2. Podłączyłem Pi do telewizora HD za pomocą kabla HDMI. Moje rozwiązanie:
Ustaw wyjście audio za pomocą następującego polecenia:
Przetestowałem wyjście dźwięku za pomocą następującego polecenia, ale nie słychać dźwięku:
Aby włączyć dźwięk HDMI, postępowałem zgodnie ze wskazówkami tutaj
Linia komentowania
#hdmi_drive=2
Uruchom ponownie Pi za pomocą następującego polecenia:
źródło
To jest powszechny błąd. Myślę, że tym, co łamie ALSA, jest PulseAudio. Jeśli chcesz użyć ALSA (domyślnie, zalecane przez Tux) użyj
sudo apt-get remove PulseAudio
Aby uzyskać inne poprawki, wypróbuj wiki. To wszystko zależy. Spróbuj tego najpierw (ponieważ jest to najczęściej)
źródło
Używam OSMC, na którym działa Debian, i mam dźwięk do odtwarzania przez głośniki telewizora, które są podłączone przez HDMI. https://youtu.be/p2ljmTE67gs
Jeśli to, co próbujesz zrobić, spróbuj dodać
dtparam=audio=on
do/boot/config.txt
Oryginalne rozwiązanie opublikowane tutaj: https://discourse.osmc.tv/t/alsa-doesnt-work-after-last-update/10600
źródło
Moja obecna hipoteza robocza jest taka, że przynajmniej dla mnie dźwięk zależy w jakiś sposób od środowiska pulpitu. Mam Raspberry Pi 2 z systemem Raspbian, zainstalowany z NOOBS. Wyczyściłem go kilkakrotnie i ponownie zainstalowałem Raspbian. Dźwięk działa, gdy po raz pierwszy instaluję Raspbian. Następną rzeczą, którą zwykle robię, jest usunięcie środowiska pulpitu LXDE i zastąpienie go środowiskiem graficznym XFCE, a potem zauważyłem, że dźwięk przestał działać. Przełączanie środowisk pulpitu musi zepsuć mój dźwięk. Nie wiem, czy usuwa LXDE, czy instaluje XFCE, który go psuje.
Być może osoba ma rację, która zasugerowała, że winowajcą jest PulseAudio, a instalacja XFCE powoduje zainstalowanie PulseAudio. Obecnie „lxde” jest zainstalowany, „xfce4” nie jest zainstalowany, „pulseaudio” nie jest zainstalowany, a dźwięk działa.
źródło
Wystąpił problem polegający na tym, że dźwięk nie działał lub odtwarzany był dźwięk statyczny zamiast nagrania. Ale to był problem z moim podejściem, nie samym Pi. Używam Raspbian 3.6.11 (2013-02-09-wheezy-raspbian).
Przede wszystkim próbowałem odtworzyć plik MP3
aplay
, który wydaje się obsługiwać tylko pliki WAV. Ponadto niektóre pliki MP3, których użyłem, mogły nie zostać utworzone za pomocą kompatybilnego kodeka. Aby przetestować wyjście dźwięku na swoim Pi, najlepiej było, gdy próbowałem pliki audio dostarczane z systemem operacyjnym Raspbian. Upewnij się także, że używasz odtwarzacza odpowiedniego dla formatu audio. Na przykład:aplay
do plików .wav. Na przykład:aplay /usr/share/scratch/Media/Sounds/Vocals/Singer2.wav
(istnieje wiele przykładowych plików audio w / usr / share / scratch / Media / Sounds).omxplayer
lubmpg123
dla plików .mp3. Na przykład: użyjomxplayer /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3
lub alternatywniempg123 /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3
(jeśli jeszcze tego nie maszmpg123
, powinieneś być w stanie zainstalować go za pomocą poleceniasudo apt-get install mpg123
).amixer
do sterowania poziomem głośności. Na przykład:amixer cset numid=1 50%
ustawia głośność wyjścia słuchawkowego na pięćdziesiąt procent.Aby uzyskać więcej informacji na temat poleceń wyjścia audio, znalazłem następującą witrynę internetową: http://blog.scphillips.com/2013/01/sound-configuration-on-raspberry-pi-with-alsa
Za to, co jest tego warte, słyszałem również trzaskający dźwięk spowodowany skokiem napięcia, gdy dźwięk zaczyna się i kończy . Ten problem został teraz rozwiązany w oprogramowaniu Pi.
źródło
Na moim Raspberry Pi „test głośników” działał bez dodatkowego sprzętu. Potem dodałem kilka kamer. Domyślne urządzenie uległo zmianie i znalazłem to pytanie Jak sprawić, by Alsa automatycznie wybrał preferowane urządzenie dźwiękowe? z którego rozwiązania # 1 działało dla mnie.
źródło
Sam miałem problemy z analogowym wyjściem audio. Przyszedł do tego wątku między innymi, aby spróbować rozwiązać. W końcu okazuje się, że wystarczy kliknąć prawym przyciskiem myszy ikonę audio na pasku narzędzi i zmienić wybór z HDMI na Analogowy. Prawdopodobnie nie rozwiązuje to problemu, ale może pomóc komuś, kto nie słyszy dźwięku i który przegapił to łatwe rozwiązanie.
źródło
Moje rozwiązanie pochodzi z tej strony:
[ https://www.raspberrypi-spy.co.uk/2013/06/raspberry-pi-command-line-audio/][1]
I było to:
źródło
Natknąłem się na ten problem, próbując zmusić Amazon Voice Services do pracy na Raspberry Pi 3/3 +. Upewniłem się, że wybrano dźwięk analogowy. Działa również przy użyciu aplay.
Okazuje się, że AVS korzysta z elementu autoaudiosink, który z kolei wybrał element omxhdmiaudiosink, który miał wyższy priorytet niż element alsasink. W pliku /etc/xdg/gstomx-rpi.conf znajduje się sekcja omxhdmiaudiosink, którą po prostu skomentowałem. Po wykonaniu tej czynności system AVS działał dobrze (w większości przypadków odpowiedzi skracano o około ~ 0,25 sekundy).
Przypuszczam, że mógłbym również zmienić priorytet.
źródło
Jeśli chcesz prostej odpowiedzi, masz 3 opcje:
omxplayer -o hdmi filename.mp4
omxplayer -o both filename.mp4
omxplayer -o local filename.mp4
Jeśli chcesz, żeby gra była odtwarzana przez Twój monitor
Jeśli chcesz jedno i drugie, zrób to
Jeśli masz słuchawki i chcesz podłączyć je do Raspberry, zrób to
a następnie dodaj swoją nazwę pliku i gotowe; to jest takie proste
źródło