Cambiar el volumen del sistema OS X mediante programación
¿Cómo puedo cambiar el volumen programáticamente desde Objective-C?
Encontré esta pregunta,Controlando el volumen de OS X en Snow Leopard lo que sugiere hacer:
Float32 volume = 0.5;
UInt32 size = sizeof(Float32);
AudioObjectPropertyAddress address = {
kAudioDevicePropertyVolumeScalar,
kAudioDevicePropertyScopeOutput,
1 // Use values 1 and 2 here, 0 (master) does not seem to work
};
OSStatus err;
err = AudioObjectSetPropertyData(kAudioObjectSystemObject, &address, 0, NULL, size, &volume);
NSLog(@"status is %i", err);
Esto no hace nada por mí, y se imprime.status is 2003332927
.
También intenté usar valores2
y0
en eladdress
Estructura, mismo resultado para ambos.
¿Cómo puedo solucionar esto y hacer que realmente disminuya el volumen al 50%?