Почему мой аудио (звук) выход не работает?


58

Я не могу включить звук. Я ничего не слышу и не могу играть.

Есть ли решение для включения звука?


7
Пожалуйста, добавьте больше информации, чтобы сделать этот вопрос более полезным на будущее, даже если на него уже был дан ответ.
Рамблинджан

Требуется тег Distro. Как и какой аудио выход вы пытаетесь использовать.
Jivings

1
Рекомендации: stackoverflow.com/questions/how-to-ask К счастью, текущий лучший ответ достаточно широк, чтобы охватить ваш вопрос. Тем не менее, для будущих пользователей сайта будет лучше, если вы дадите конкретную настройку, позволяющую получить конкретный ответ.
Рамблинян

Моя проблема была в низкой громкости для мастер-вывода.

Ответы:


66

Звук не работает с монитором HDMI

Это вызвано тем, что некоторые компьютерные мониторы выбирают режим DVI, даже если подключен кабель HDMI. Это исправление может понадобиться, даже если другие устройства HDMI отлично работают на одном мониторе (или телевизоре)! Отредактируйте файл конфигурации - см. Инструкции в файле конфигурации Raspberry-Pi .
Добавьте следующую строку в файл конфигурации:

hdmi_drive=2

Звук не работает вообще или в некоторых приложениях

По умолчанию звук отключен, потому что звуковой драйвер ALSA по-прежнему "альфа" (не полностью протестирован) на R-Pi. Чтобы проверить звук, в командной строке перед «startx» введите

 sudo apt-get install alsa-utils
 sudo modprobe snd_bcm2835
 sudo aplay /usr/share/sounds/alsa/Front_Center.wav

По умолчанию вывод будет автоматическим (HDMI, если HDMI поддерживает аудио, в противном случае аналоговый). Вы можете заставить это с:

sudo amixer -c 0 cset numid=3 <n>

где n = 0 = авто, 1 = наушники, 2 = HDMI. ( источник ) Если вы используете Debian, попробуйте

cd /opt/vc/src/hello_pi
 make -C libs/ilclient
 make -C libs/vgfont
cd hello_audio
 make
 ./hello_audio.bin

проверить аналоговый выход. И проверить HDMI.

./hello_audio.bin 1

Также обратите внимание, что вам, возможно, придется добавить своего пользователя в группу «audio», чтобы получить разрешение на доступ к звуковой карте.

Делать изменения постоянными

sudo apt-get install alsa-utilsявляется постоянным, но sudo modprobe snd_bcm2835только инициализирует драйвер для текущего сеанса. Чтобы убедиться, что модуль инициализируется при загрузке, добавьте snd_bcm2835в /etc/modules( источник ).


4
aplay -l также полезная команда для перечисления, если существуют какие-либо устройства ALSA.
stsquad

2
Это устаревшая информация по состоянию на январь 2013 года. Alsa-utils установлена ​​по умолчанию, и lsmod показывает, что snd_bcm2835 находится там без необходимости что-либо делать.
CaptSaltyJack

Может быть и так, но проблема все еще может возникать на старых устройствах и некоторых дистрибутивах
Итай Грудев

1
Я был snd-bcm2835в, /etc/modulesкогда это должно было быть snd_bcm2835. Как только я изменил это, это сработало.
daviewales

1
Вам также может потребоваться изменить громкость микшера, если он не работает в среде рабочего стола с графическим интерфейсом для него. Я не знаю, был ли это просто мой пи, или это общая проблема, но мой уровень громкости был установлен на -25 дБ, что практически не слышно. amixer cset numid=1 0устанавливает его обратно на разумный уровень.
Жюль

9

Я думаю, что у меня есть способ решить вашу проблему, попробуйте набрать omxplayer -o local xxx.mp3(для mp3-файла) или omxplayer -o local xxx.mp4(для mp4-файла), чтобы услышать звук от raspi через наушники. И вы также можете напечатать omxplayer --helpдля большего использования о omxplayer.


9

Я также столкнулся с той же проблемой с моим Raspberry Pi 2. Я подключил свой Pi к телевизору высокой четкости через кабель HDMI. Мое решение:

Установите вывод звука с помощью следующей команды:

amixer cset numid=3 2

Я проверил вывод звука с помощью следующей команды, но звука не было слышно:

speaker-test -c2 -t wav

Чтобы включить звук HDMI, я следовал инструкциям, найденным здесь

sudo [your favourite editor] /boot/config.txt

Раскомментировать строку #hdmi_drive=2

Перезагрузите Pi, используя следующую команду:

sudo shutdown -r 0

Мне не нужно было делать первые два шага, и я не уверен, что они даже должны быть в ответе, но остальные сработали для меня с Raspberry Pi 2.
Джеймс Скемп,

4

Это распространенная ошибка. Я думаю, что ломает ALSA это PulseAudio. Если вы хотите использовать ALSA (по умолчанию, рекомендуется Tux), используйтеsudo apt-get remove PulseAudio

Для других исправлений попробуйте вики. Все это зависит. Попробуйте сначала (так как это наиболее распространенный)


На какую ошибку вы ссылаетесь? У вас есть ссылка?
bzeaman

Это исправило это для меня. Я использую PuleAudio для воспроизведения звука на Bluetooth-гарнитуру. Когда я попытался использовать аналоговый аудиопорт, я не смог заставить его работать, и все в моей конфигурации было правильно. Я удалил PulseAudio, и аналоговый аудио порт работает. Жаль, что я должен удалить и переустановить пакет, чтобы переключиться между Bluetooth и 3,5 мм разъемом.
MidnightJava

4

Я использую OSMC, на котором работает Debian, и мне удалось воспроизвести звук через динамики телевизора, подключенные через HDMI. https://youtu.be/p2ljmTE67gs

Если это то, что вы пытаетесь сделать, попробуйте добавить dtparam=audio=onв/boot/config.txt

Оригинальное решение размещено здесь: https://discourse.osmc.tv/t/alsa-doesnt-work-after-last-update/10600


Этот ответ будет особенно уместным для людей, которые обновляют старые установки до чего-то более современного.
Сэм Хартман

2

Моя текущая рабочая гипотеза заключается в том, что, по крайней мере, для меня звук зависит от среды рабочего стола. У меня Raspberry Pi 2 под управлением Raspbian, установленный из NOOBS. Я вытер его и переустановил Raspbian десятки раз. Звук работает при первой установке Raspbian. Следующее, что я обычно делаю, это удаляю среду рабочего стола LXDE и заменяю ее средой рабочего стола XFCE, и через некоторое время я замечаю, что звук перестал работать. Переключение окружения рабочего стола, должно быть, ломает мой звук Я не знаю, удаляет ли это LXDE или устанавливает XFCE.

Возможно, прав тот, кто предположил, что виновником является PulseAudio, а при установке XFCE устанавливается PulseAudio. Прямо сейчас "lxde" установлен, "xfce4" не установлен, "pulseaudio" не установлен, и звук работает.


1

Я столкнулся с проблемой, когда звук не работал или воспроизводился статический звук вместо моей записи. Но это была проблема с моим подходом, а не с самим Пи. Я использую Raspbian 3.6.11 (2013-02-09-wheezy-raspbian).

В первую очередь я пытался воспроизвести файл MP3 aplay, который поддерживает только WAV. Кроме того, некоторые из файлов MP3, которые я использовал, возможно, не были созданы с совместимым кодеком. Чтобы проверить вывод звука на вашем Pi, я нашел лучший пример для аудиофайлов, поставляемых с Raspbian OS. Также убедитесь, что вы используете плеер, подходящий для аудио формата. Например:

  • Используйте aplayдля файлов .wav. Например: aplay /usr/share/scratch/Media/Sounds/Vocals/Singer2.wav(в / usr / share / scratch / Media / Sounds есть много примеров аудиофайлов).
  • Используйте omxplayerили mpg123для .mp3 файлов. Например: использовать omxplayer /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3или альтернативно mpg123 /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3(если у вас его еще нет mpg123, вы сможете установить его с помощью команды sudo apt-get install mpg123).
  • Используйте amixerдля управления уровнем громкости. Например: amixer cset numid=1 50%устанавливает выходной уровень громкости наушников на пятьдесят процентов.

Для получения дополнительной информации о командах аудиовыхода я нашел следующий веб-сайт полезным: http://blog.scphillips.com/2013/01/sound-configuration-on-raspberry-pi-with-alsa

Что бы это ни стоило, я также испытывал хлопающий звук, вызванный скачком напряжения, когда звук запускается и останавливается . Эта проблема теперь исправлена ​​в прошивке Pi.


Кстати, эта ошибка должна была быть исправлена ​​в одном из обновлений аудиодрайвера ...
Итай Грудев

1
Вы правы. Возможно, я просто делал это неправильно, но у других может быть та же проблема, поэтому я обновил свой пост своими выводами. Спасибо Итехнология!
Стив ХХХ

1

На моем Raspberry Pi «тест-динамик» работал без добавления какого-либо дополнительного оборудования. Затем я добавил несколько веб-камер. Устройство по умолчанию изменилось, и я нашел этот вопрос. Как заставить Alsa автоматически выбрать предпочитаемое звуковое устройство? из которого решение № 1 сработало для меня.

... создать /etc/asound.confсо следующим: ...

Замените «карточка 1» на номер вашей карточки, определенный выше.


1

У меня были проблемы с аналоговым аудиовыходом. Пришел к этой теме среди других, чтобы попытаться решить. В итоге оказывается, что мне нужно было только щелкнуть правой кнопкой мыши значок аудио на панели инструментов и изменить выбор с HDMI на Analog. Это, вероятно, не решит вашу проблему, но может помочь кому-то, кто не слышит аудио и пропустил это простое решение.



0

Я столкнулся с этой проблемой, пытаясь заставить Amazon Voice Services работать на Raspberry Pi 3/3 +. Я убедился, что был выбран аналоговый звук. Также с помощью aplay работал.

Оказывается, AVS использует элемент autoaudiosink, который в свою очередь выбирал элемент omxhdmiaudiosink, который имел более высокий приоритет, чем элемент alsasink. В файле /etc/xdg/gstomx-rpi.conf есть раздел для omxhdmiaudiosink, который я просто закомментировал. После этого AVS работал нормально (по большей части - ответы укорачивались примерно на ~ 0,25 секунды).

Полагаю, я мог бы также изменить приоритет.


-1

Если вы хотите простой ответ, есть 3 варианта:

  1. HDMI: omxplayer -o hdmi filename.mp4
  2. обе: omxplayer -o both filename.mp4
  3. местный: omxplayer -o local filename.mp4

Если вы хотите, чтобы он воспроизводился через ваш монитор

omxplayer -o hdmi

Если вы хотите и то и другое

omxplayer -o both

Если у вас есть наушники, и вы хотите подключить их к Raspberry, сделайте

omxplayer -o local

и затем добавьте свое имя файла и там вы идете; это так просто


Если вы прочитали принятый ответ, проблема заключается в том, что звук не включен на уровне платы, поэтому настройка конкретной программы не будет работать. Во-вторых, что общего у omxplayer с исходным вопросом?
Стив Робиллард

Это сработало для меня, я смог воспроизвести файл wav, но mp3 не работал с командой omxplayer. Я поставил на -o местный флаг, это сработало. Все еще выясняю, почему ... потому что я уже настроил свой выход на наушники и перепробовал все остальное
Taran J
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.