如何从 Objective-C 以编程方式更改音量?
我发现了这个问题,Controlling OS X volume in Snow Leopard建议这样做:
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);
这对我没有任何作用,并打印出来status is 2003332927
。
我还尝试使用值2
和结构,两者0
的结果相同。address
我该如何解决这个问题并使其实际将音量降低到 50%?