Por lo que puedo decir, el script funciona como se esperaba, el problema está en el código de entrada de audio del OS X. Cuando lo ejecuto, el control deslizante pasa al 0%, verificado al pasar el mouse sobre el control deslizante hasta que aparezca la información sobre herramientas:
Estoeslomismoquesiarrastroelcontroldeslizantedevolumenmanualmente.
Elproblemapareceserque"0%" en realidad no significa apagado , sino un umbral muy bajo. En algunas pruebas rápidas, pude grabar el sonido de mi toque con el dedo en la carcasa de mi MacBook Pro cerca del micrófono (en la mayoría de las máquinas, creo que está alrededor de la rejilla del altavoz derecho) cuando el volumen se estableció en 0 . Podría replicarlo independientemente de si configuro el control deslizante manualmente o mediante AppleScript. Parecía ser lo suficientemente bajo como para que prácticamente no se detecte ningún otro sonido, pero claramente el micrófono no está realmente apagado.
Por lo que puedo decir, no hay manera de silenciar adecuadamente el micrófono incorporado. Lo mejor que puedo sugerir es cambiar la entrada de audio para usar la línea, si su Mac está equipada con una línea en el puerto . Desafortunadamente, hacer eso a través de AppleScript requiere algunas secuencias de comandos GUI, pero esto debería hacerlo ( fuente ):
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 tiene más de las dos entradas de audio estándar (Mic y Line In), es posible que deba cambiar el número en row 2
según sea apropiado, de acuerdo con el orden en sus preferencias de entrada.