FMX在OS X中更改和静音主音量

时间:2015-04-11 16:10:24

标签: macos delphi firemonkey volume

我编写了一个FMX(FireMonkey)应用程序,我想在OS X中更改(增加/减少)和静音/取消静音主卷输出。无论是在Delphi还是C ++ Builder中。或者,我会通过模拟键盘特定键的按键来实现。

对于Windows,可以通过使用SendInput()模拟按键,或者使用keybd_event()更轻松地模拟按键。

这就是我在Windows上的工作方式:

// vkVolumeUp / vkVolumeDown / vkVolumeMute
// VK_VOLUME_UP / VK_VOLUME_DOWN / VK_VOLUME_MUTE
keybd_event(vkVolumeUp, 1, 0, 0);
keybd_event(vkVolumeUp, 1, KEYEVENTF_KEYUP, 0);

但我无法为OS X编译它,因为IDE告诉我它不知道这个函数。如果可能的话,改变音量的直接方式会更好。

1 个答案:

答案 0 :(得分:2)

这可能是一种冗长,低效的方式,但你可以像这样从终端静音音量:

osascript -e 'set volume with output muted'

并将它增加20个像这样的

osascript -e 'set volume output volume ((output volume of (get volume settings)) + 20)'

我认为您可以使用system()命令来执行这些命令,直到有人告诉您更好的方式。