Включение звукового сигнала терминала / звукового сигнала на wheezy

8

Я пытаюсь включить звуковой сигнал терминала / звуковой сигнал через 1/8 "mini-rca аудио выход (разъем для наушников) на debian wheezy с моделью rapsberry pi B. Обычное аудио работает, как и ожидалось, при воспроизведении файла ударной волны в Midori с скрежет к примеру.

Я повернул Audible колокола настройки в LXTerminal предпочтениях ON , и попытался следующее:

$ xkbbell (без звука)

$ xkbbell -dev 0 (X Ошибка неудачного запроса: 146)

$ beepи $ beep -f 500 -l 700после установки его с помощью apt (без звука)

Тем не менее, это все в попытке услышать звук звонка, запускаемого PuTTY , когда для параметра Действие, которое происходит при звонке, установлено значение Сделать звуковой сигнал системы по умолчанию . Как и в версии PuTTY для Windows, при воспроизведении звонка нет возможности воспроизводить пользовательский звуковой файл.

Я читал, что при работе # modprobe snd_hda_intelна других машинах Linux можно перенаправить вывод звука, предназначенный для динамика ПК (которого нет у малины), в ALSA. Запуск этой команды говорит мне, что этот модуль не найден. Я не знаю, как приобрести его с apt.

Я действительно надеюсь, что у кого-то есть понимание ... У меня кружится голова от Google!

humbolight
источник
Просто чтобы уточнить, вы хотите услышать звонок, выпущенный от Raspberry Pi, сам по себе, или когда вы включаете SSH?
syb0rg
Я хочу услышать звонок, выпущенный от Raspberry Pi сам по себе. Я думал, что это может сбить с толку.
хумболайт

Ответы:

4

Я смог получить желаемый результат, используя программу под названием softbeep .

http://0pointer.de/lennart/projects/softbeep/softbeep-0.3.tar.gz

Мне нужно было получить пакеты разработки libncurses5 и libX11 для его компиляции.

sudo apt-get update
sudo apt-get install libncurses5-dev libX11-dev

После компиляции ( make) мне нужно было отредактировать sb-beepфайл так, чтобы (1) указывал на доступный звуковой файл на пи и (2) воспроизводил звук, aplayа не esdplayперед установкой ( make install).

Работал как шарм! Спасибо Леннарту Поэтерингу (автор софтбипа).

humbolight
источник
4

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

sudo modprobe snd_bcm2835 && sudo amixer cset numid=3 1

Первая команда загружает модуль звукового драйвера, вторая, я думаю, устанавливает вывод звука на разъем 3,5 мм.

Затем вы можете использовать alsamixerдля регулировки громкости, а также speaker-test -c2 -t sineдля проверки динамиков

Вы также можете использовать speaker-testутилиту для создания различных звуков, используя -c1для моно, c2переключаться между каждым каналом стерео и -fделать разные частоты шума - speaker-test --helpдает много дополнительных возможностей:

speaker-test 1.0.25

Usage: speaker-test [OPTION]... 
-h,--help   help
-D,--device playback device
-r,--rate   stream rate in Hz
-c,--channels   count of channels in stream
-f,--frequency  sine wave frequency in Hz
-F,--format sample format
-b,--buffer ring buffer size in us
-p,--period period size in us
-P,--nperiods   number of periods
-t,--test   pink=use pink noise, sine=use sine wave, wav=WAV file
-l,--nloops specify number of loops to test, 0 = infinite
-s,--speaker    single speaker test. Values 1=Left, 2=right, etc
-w,--wavfile    Use the given WAV file as a test sound
-W,--wavdir Specify the directory containing WAV files

Recognized sample formats are: S8 S16_LE S16_BE FLOAT_LE S32_LE S32_BE

Таким образом, для генерации 2-секундного звукового сигнала это работало нормально:

speaker-test -c1 -t sine -f 800 -P 2 -p 0.4 -l 1

Для лучшего звукового сигнала я сгенерировал 0,25-секундный звуковой файл в Audacity (создал новую звуковую дорожку, сгенерировал тональный сигнал 440 Гц, усилил ее на 11) , затем скопировал ее на свой Pi - затем я мог воспроизвести его aplay beep.wav. Затем я скопировал ~/.localи создал скрипт bash в ~/.local/bin/beep(я запустил mkdir ~/.local/binпервым):

#!/bin/bash
aplay -q $HOME/.local/beep.wav
exit

Затем я создал эти строки в ~/.bash_profile:

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games:$HOME/.local/bin:$HOME/bin

export PATH

а потом я запустил следующее

chmod +x ~/.local/bin/beep
source ~/.bash_profile

и тогда я мог просто бежать, beepчтобы издать звуковой сигнал

Уилф
источник
+1 для примера кода вставки и вставки для 2-секундного звукового сигнала с тестом динамикаspeaker-test -c1 -t sine -f 800 -P 2 -p 0.4 -l 1
domih
1

Можно сделать более короткий звук, используя:

( speaker-test -t sine -c 2 -s 2 -f 800 & TASK_PID=$! ; sleep 0.09 ; kill -s SIGINT $TASK_PID ) > /dev/null

Это посылает сигнал после 0,09 с (но дольше из-за служебной нагрузки) для остановки. Самое короткое время, которое давало звук в моей системе (Raspbian Stretch на Raspberry Pi 3), составляло 0,06 с. Я перенаправляю весь вывод в / dev / null, чтобы он выглядел как обычная команда. Смотрите man speaker-testдля объяснения вариантов.

mobluse
источник