web-dev-qa-db-fra.com

Comment faire retentir le bip de matériel dans Mac OS X 10.6

Je veux simplement que Mac OS X 10.6 émette un bip matériel comme dans les distributions Open suse et autres. J'ai essayé de suivre les approches

Terminal -> beep = -bash: bip: commande non trouvée

Terminal -> dites bip = la voix prononce un bip (pas un bip matériel mais génial;))

applescript -> bip = cloche Macintosh (je veux un bip matériel!)

Est-ce que quelqu'un sait comment faire sonner le matériel dans bin/bash ou applescript?

166
elhombre

Il n'y a pas de "bip matériel" dans macOS.

La fonctionnalité à laquelle vous songez est un artefact de très vieux matériel compatible PC d’IBM (avant les années 1990). Avant que la plupart des ordinateurs aient des cartes son, la plupart des machines avaient un petit haut-parleur ou une sonnerie piézo connectée à l'un des canaux d'une puce de minuterie. Cela pourrait être utilisé pour générer des tonalités simples ou des bips sonores. Même après l’inclusion de cartes son par de nombreux ordinateurs, il était courant que les ordinateurs acheminent cette sortie vers un haut-parleur interne séparé. Plus récemment, de nombreux ordinateurs, notamment les ordinateurs portables, ont intégré cette fonctionnalité dans la carte son intégrée.

(Si vous souhaitez en savoir plus sur le fonctionnement technique de l'interface des haut-parleurs du PC, il y a plus de détails ici .)

Ce matériel n’a jamais existé sur les ordinateurs Apple. La seule sortie audio disponible est celle de la carte son. Le seul bip système dans macOS est le son d’alerte de l’utilisateur.

22
duskwuff

tput bel fonctionne dans la plupart des coquillages.

Sous OS X, cette commande (et toute autre commande faisant sonner la cloche) vous permet également d'obtenir un badge si la commande est exécutée alors que Terminal n'était pas au premier plan:

254
broofa

Impression \a n'a pas toujours fonctionné pour moi (MBA, 10.7.4). J'utilise ceci à la place:

say "beep"
133
Andrei

En effet, ce qui suit est efficace et quelque peu mélodique:

say -v Bells "dong dong dong"

[Mise à jour] Malheureusement, Bells n'est plus inclus dans le dernier OS X. Essayez:

say -v Victoria Do your homework!

Utilisez ce qui suit pour explorer les voix:

say -v \?
96
k00ka

écrire echo ^G dans la bash. pour créer le ^G presse ctrl+v puis ctrl+g.

55
mxhaack

Cela va parcourir toutes les voix (fonctionne sur Yosemite):

say -v '?' | awk '{print $1}' | while read voice; do printf "using $voice...\n"; say -v $voice "hello, this is me using the $voice voice"; sleep 1; done
27
Jason Ryan Taylor

Dans le type de terminal:

echo -e "\ a"

Le paramètre -e indique à echo de traiter les caractères échappés. Comme\n est le nouveau caractère de la ligne, le\a est celui de la cloche (identique à Ctrl + G).

26
Zaphod

Jouez une alerte sonore arbitraire avec afplay

Je suis surpris que personne n'ait mentionné afplay: c'est le programme en ligne de commande qui lit les fichiers sonores arbitraires. Il existe depuis les versions originales d'OS X (et NeXTSTEP, si votre mémoire est aussi longue).

Par exemple, vous pouvez l'exécuter à partir de la ligne de commande ou l'insérer dans un script:

$ afplay /System/Library/Sounds/Ping.aiff

Vous n'êtes pas limité aux sons du système; L’un des avantages de afplay est que vous pouvez choisir votre propre fichier son comme alerte. Par exemple, vous pouvez télécharger n de ces fichiers son et choisir votre favori.

(Points supplémentaires si vous pouvez trouver un enregistrement d’une sonnerie Teletype Modèle 33!)

17
fearless_fool

Sous OS X, exécutez la commande: osascript -e 'beep'

Utilisation de la technologie OSA (Open Script Architecture) pour indiquer à AppleScript d’exécuter la commande beep.

13
Albert
printf "\a"

Si vous regardez man printf, il vous donne une liste des caractères échappés, y compris \a:

\a      Write a <bell> character.
10
Alex Coplan

printf "\a" fonctionne également dans un terminal et joue le son d'alerte défini.

7
Oantby

Si vous avez besoin de quelque chose, cela sonne comme "important"

vous pouvez utiliser

tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s

:)

7
Nedudi

sous MacOS X, l'option "alerte sonore" (Terminal/Préférences) doit être activée pour obtenir un son.

1
MaxF

osascript -e 'indique à l'application "Événements système" d'émettre un bip'

0
noah

Si vous avez installé XCODE, vous pouvez émettre un bip/sonnerie. Je n'ai pas pensé pouvoir faire le printf "\a" travail de personnage en C.

Il existe un moyen de faire en sorte que la tonalité fonctionne pendant l'exécution du programme: démarrez XCODE, menu déroulant sous XCODE, Préférences, Comportements, cochez la première case JOUER LE SON, choisissez dans la liste ou ajoutez un son.

C’est une façon de le faire, mais je crois que ce n’est que pendant le déroulement du programme.

0
Stewart Scott