cocoa - sierra - preferencias del sistema mac no responde
Cambiar el sonido(u otras) Preferencias del sistema en Mac OS X (2)
No pienses en términos de preferencias; no existe un marco centralizado de preferencias del sistema para este tipo de cosas. Creo que lo que debe hacer es usar Core Audio para configurar las propiedades kAudioHardwarePropertyDefaultOutputDevice
y kAudioHardwarePropertyDefaultSystemOutputDevice
del AudioSystemObject
(utilizando AudioHardwareSetProperty()
).
Me gustaría poder cambiar la fuente de salida de sonido en Mac OS X sin ninguna interacción GUI.
Hay herramientas para controlar la salida de sonido, como SoundSource y un AppleScript para abrir el cuadro de diálogo de preferencias .
Lo que busco es algo que cambie la preferencia al instante, como SoundSource, pero tiene que ser secuenciable. El objetivo es cambiar entre mi salida digital y analógica con una sola pulsación de tecla. Tengo una aplicación de ayuda que lanzará un programa o AppleScript con una sola pulsación de tecla. Todo lo que necesito ahora es el AppleScript o aplicación que cambia la fuente de sonido rápidamente sin ninguna interacción del usuario.
Estoy dispuesto a escribir algo de Objective-C si eso es lo que se necesita, pero soy bastante novato en el desarrollo de Cocoa.
¿Tiene una solución de un solo clic o puede indicarme un buen tutorial sobre cómo controlar las preferencias del sistema de sonido desde una aplicación Cocoa o una línea de comando?
EDITAR : Creé una aplicación de línea de comandos para hacer exactamente esto. Puede descargarlo en http://code.google.com/p/switchaudio-osx/downloads . El código fuente está disponible en el sitio del proyecto también.
Creé una aplicación de línea de comandos para hacer exactamente esto.
Puede descargarlo en http://code.google.com/p/switchaudio-osx/downloads . El código fuente está disponible en el sitio del proyecto también.
ACTUALIZACIÓN (diciembre de 2014): el código ahora está alojado en github - https://github.com/deweller/switchaudio-osx . Y funciona bien en Yosemite.