使用文本到语音时拦截系统范围的Mac OS X SpeechSynthesizer事件

时间:2014-09-19 19:27:43

标签: objective-c macos text-to-speech

我想为Mac编写一个应用程序来拦截操作系统处理文本到语音的内置方式。它需要通过接收事件“某人已启动标准'开始说话'功能”来触发。

从阅读Speech synthesis programming guide开始,语音合成框架似乎在某种程度上是可插拔的,并且是拦截传入TTS请求的合适位置。遗憾的是,这些文件并未提供有关如何在全球范围内进行拦截的见解。我在哪里可以了解如何实施这样的拦截计划?

1 个答案:

答案 0 :(得分:1)

根据我对API的使用经验,我非常确定全局访问此信息的唯一方法是轮询NSSpeechSynthesizer的+isAnyApplicationSpeakingSpeechBusySystemWide()。你可以尝试绑定前者,但我认为我已经尝试过它并不是KVO兼容的。