Activation de la sonnerie / bip sonore du terminal sur une respiration sifflante

8

J'essaie d'activer une sonnerie / un bip de terminal audible via la sortie audio mini-rca 1/8 "(prise casque) sur debian wheezy avec le modèle rapsberry pi b. L'audio normal fonctionne comme prévu, lors de la lecture d'un fichier shockwave dans Midori avec grincer par exemple.

Je me suis tourné la cloche sonore mise en LXTerminal préférences ON , et essayé ce qui suit:

$ xkbbell (pas de son)

$ xkbbell -dev 0 (X Erreur d'échec de la demande: 146)

$ beepet $ beep -f 500 -l 700après l'avoir installé avec apt (pas de son)

Cela dit, tout cela dans une tentative d'entendre le son de la cloche déclenché par PuTTY , lorsque l' action se produisant lorsqu'une cloche se déclenche est définie sur Faire un son d'alerte système par défaut . Il n'y a pas d'option, comme dans la version Windows de PuTTY, pour lire un fichier son personnalisé lorsqu'une cloche se produit.

J'ai lu que l'exécution # modprobe snd_hda_intelsur d'autres machines Linux peut rediriger la sortie audio destinée au haut-parleur PC (qui manque à la framboise) vers ALSA. L'exécution de cette commande m'indique que ce module est introuvable. Je ne sais pas comment l'acquérir avec apt.

J'espère vraiment que quelqu'un a un aperçu ... Je suis étourdi de googler!

humbolight
la source
Juste pour clarifier, vous voulez entendre la cloche émise par le Raspberry Pi seule ou lorsque vous y connectez SSH?
syb0rg
Je veux entendre la cloche émise par le Raspberry Pi seule. J'ai pensé que cela pourrait prêter à confusion.
humbolight

Réponses:

4

J'ai pu obtenir les résultats souhaités en utilisant un programme appelé softbeep .

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

J'avais besoin d'obtenir les packages de développement libncurses5 et libX11 pour le compiler.

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

Après avoir compilé ( make), j'avais besoin d'éditer le sb-beepfichier pour (1) pointer vers un fichier son disponible sur le pi et (2) jouer le son avec aplayplutôt esdplayqu'avant d'installer ( make install).

A fonctionné comme un charme! Merci Lennart Poettering (auteur de softbeep).

humbolight
la source
4

J'ai trouvé que vous pouviez charger les pilotes audio et d'autres choses sur Raspbian avec:

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

La première commande charge le module du pilote audio, la seconde, je pense, définit la sortie audio sur la prise 3,5 mm.

Vous pouvez ensuite utiliser alsamixerpour régler le volume et speaker-test -c2 -t sinepour tester les haut-parleurs

Vous pouvez également utiliser l' speaker-testutil pour produire des sons différents, en utilisant le -c1mono, c2pour basculer entre chaque canal de stéréo et -fpour faire différentes fréquences de bruit - speaker-test --helpdonne beaucoup plus d'options:

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

Donc, pour générer un bip de 2 secondes, cela a bien fonctionné:

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

Pour un meilleur bip, j'ai généré un fichier de bip de 0,25 seconde dans Audacity (créé une nouvelle piste audio, généré un son de 440 Hz, amplifié par 11) , puis copié sur mon Pi - je pouvais ensuite le jouer avec aplay beep.wav. J'ai ensuite copié ~/.localet créé ce script bash sur ~/.local/bin/beep(j'ai exécuté en mkdir ~/.local/binpremier):

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

J'ai ensuite créé ces lignes dans ~/.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

puis j'ai couru ce qui suit

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

et je pourrais simplement courir beeppour faire un bip

Wilf
la source
+1 pour l'échantillon de code paste and go pour un bip de 2 secondes avec test de haut-parleurspeaker-test -c1 -t sine -f 800 -P 2 -p 0.4 -l 1
domih
1

Il est possible de faire un son plus court en utilisant:

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

Cela envoie un signal après 0,09 s (mais plus en raison de la surcharge) pour s'arrêter. Le temps le plus court qui a émis un son sur mon système (Raspbian Stretch sur Raspberry Pi 3) était de 0,06 s. Je redirige toutes les sorties vers / dev / null pour qu'elles ressemblent à une commande normale. Voir man speaker-testpour l'explication des options.

mobluse
la source