Pour autant que je puisse dire, le script fonctionne comme prévu, le problème est dans le code d'entrée audio OS X. Lorsque je l'exécute, le curseur passe à 0%, vérifié en passant la souris sur le curseur jusqu'à ce que l'infobulle apparaisse :
C'est la même chose que si je fais glisser le curseur du volume manuellement.
Le problème est apparemment que "0%" ne signifie pas réellement off mais plutôt un seuil très bas. Lors d'un test rapide, j'ai pu enregistrer le son de mon doigt tapant sur le boîtier de mon MacBook Pro près du micro (sur la plupart des machines, je crois que c'est autour de la grille du haut-parleur droit). lorsque le volume était réglé sur 0 . J'ai pu reproduire ce phénomène, que je règle le curseur manuellement ou via AppleScript. Il semblait être suffisamment bas pour que pratiquement aucun autre son ne soit capté, mais il est clair que le microphone n'est pas vraiment éteint.
Pour autant que je sache, il n'y a aucun moyen de couper correctement le micro intégré. Le mieux que je puisse suggérer est de changer l'entrée audio pour utiliser l'entrée ligne, si votre Mac est équipé d'un port d'entrée de ligne . Faire cela via AppleScript nécessite malheureusement un script GUI, mais cela devrait le faire ( source ) :
tell application "System Preferences"
activate
set current pane to pane id "com.apple.preference.sound"
end tell
tell application "System Events"
tell process "System Preferences"
set frontmost to true
--get properties of UI element of tab group of window "Sound"
click radio button "input" of tab group of window "Sound"
tell row 2 of table 1 of scroll area 1 of tab group 1 of window "Sound" to set selected to true
end tell
end tell
Si vous disposez de plus que les deux entrées audio standard (Mic et Line In), vous devrez peut-être modifier le nombre dans le champ row 2
à celui qui est approprié, selon l'ordre de vos préférences de saisie.