2012-12-11 69 views
2

我想知道是否有任何方法获取特定应用程序的音量并对其进行更改,或者获取所有在mac中具有声音输出的应用程序。应用程序音量mac os

我想知道我是否可以使用objective-c,C或C++来做到这一点。

我已经尝试过applescripts,但是我发现很难依靠applescripts,因为并非所有的应用程序都通过applescript提供该访问,即使如此,我也无法以相同的方式处理所有应用程序,因为那样会取决于苹果是如何编写的。

我不想一个确切的答案,我只是想要一个线索或一种方法,我可以在

搜索感谢提前

+1

如果应用程序使用NSBeep,那就是声音输出。你可以说得更详细点吗? – trudyscousin

+0

是的,我的意思是每个具有声音输出的应用程序,以便我可以访问每个应用程序以控制其音量 –

+0

您可以向www.prosofteng.com询问这些人,因为他们的应用程序“听到”已经是您要求的。对于AppleScript,这无法完成,您需要C(和/或它的超集)来实现这一点。 –

回答

2

有些应用程序在他们的AppleScript字典对于它的属性。

tell application "iTunes" 
    sound volume -- 0 to 100 
end tell 

tell application "QuickTime Player" 
    audio volume of document 1 -- 0.0 to 1.0 
end tell 
+0

首先我要感谢你的回答, 但是,applescripts有一个问题,就是它们不适用于所有的应用程序,另一个问题是如何改变体积透彻的applescript(如果应用程序支持的话)会根据applescript的写法,每个应用程序都有所不同。 –

0

为什么不改变系统音量呢?以下是AppleScript的:

set volume output volume 40 
return output volume of (get volume settings) 

如果你愿意,你可以使用NSAppleScript执行这些单行,但也应该有一个直接的方式来做到这一点。

+0

我想更改特定应用程序的音量,而不是系统音量 –

+0

在这种情况下,我建议您将Lauri的答案标记为已接受,因为我不认为除AppleScript之外还有其他解决方案,并且每个新版本的OSX都会使Apple更难让应用程序彼此交互。 – Mark