Obtenga el nombre del dispositivo de salida de sonido con AppleScript

1

¿Cómo puedo obtener el nombre del dispositivo de salida de sonido actual con AppleScript?

Por ejemplo, en mi panel Preferencias del sistema: Sonido "Altavoces internos" está seleccionado actualmente. Todo lo que debo hacer es recuperar el nombre del dispositivo, "Altavoces internos" o "Auriculares" o "Altavoces con Bluetooth", el que esté actualmente en uso.

(No necesito un conmutador / cambiador para otro dispositivo).

    
pregunta schmelding 18.08.2014 - 19:37

3 respuestas

0

SwitchAudioSource enlace es una utilidad de línea de comandos que funciona bajo Lion y Mtn Lion (no saber sobre nuevas versiones de OS X). Si funciona para usted, entonces puede usarlo en un AppleScript, de la siguiente manera:

on run

    set theSwitch to "path_to_SwitchAudioSource"
    set theLine to "Current audio output device is:"

    do shell script theSwitch & " -c"
    display dialog theLine & return & return & result buttons {"OK"}

end run
    
respondido por el Alepsis 12.11.2014 - 04:29
1

Solo para ayudar un poco más:

En su directorio de usuario principal / home // cree un directorio llamado 'bin' y coloque SwitchAudioSource allí.

Aquí hay algunos AppleScript que alternan entre dos fuentes, la salida mini jack predeterminada para "auriculares" en la parte posterior de mi Mac Mini (una computadora portátil debería ser diferente) y mi Sennheiser USB headsest.

Llámame 'Capitán Obvio', pero aquí tienes:

'en ejecución

set theSwitch to "~/bin/SwitchAudioSource"
set theSource to do shell script theSwitch & " -c"

if theSource = "Built-in Output" then
    do shell script theSwitch & " -s \"Sennheiser USB headset\""
else
    do shell script theSwitch & " -s \"Built-in Output\""
end if

end run '

    
respondido por el CareyB 07.01.2015 - 16:59
0

Algo como esto.

tell application "System Preferences"
    reveal pane id "com.apple.preference.sound"
end tell

tell application "System Events"
    tell application process "System Preferences"
        tell tab group 1 of window "Sound"
            click radio button "Output"
            tell table 1 of scroll area 1
                set selected_row to (first UI element whose selected is true)
                set currentOutput to value of text field 1 of selected_row as text
                display dialog currentOutput
            end tell
        end tell
    end tell
end tell

if application "System Preferences" is running then
    tell application "System Preferences" to quit
end if
    
respondido por el Alistair McMillan 19.08.2014 - 01:22

Lea otras preguntas en las etiquetas