1

我有以下配置的mac

MacBook Pro (Retina, 15-inch, Mid 2015)
OS: macOS Catalina
CPU: 2.5 GHz Quad-Core Intel Core i7
Memory: 16 GB 1600 MHz DDR3
Graphics: Intel Iris Pro 1536 MB

将我的操作系统从Siera 更新到 Catalina之后。苹果听写应用程序和语音识别过程(com.apple.SpeechRecognitionCore.speechrecognitiond)在笔记本电脑启动期间启动,我无法终止或停止这些应用程序和进程。我杀死了那些进程,但那些进程一次又一次地自动启动。

我也从偏好中关闭了听写并重新启动笔记本电脑,这对我也不起作用。:(

最危险的是,这些进程占用了我 50% 以上的 CPU 并给我使用 mac 的糟糕体验。

我累死。我现在该怎么办?

4

2 回答 2

5

com.apple.SpeechRecognitionCore.speechrecognitiond 是一个守护进程,它将人类语音转换为计算机可以使用的东西,然后将语音与最合适的单词进行匹配。据我所知,它启动并持续运行以支持三种不同的 OS X 功能:语音控制、听写和 Siri。

语音控制本身就是一种资源消耗,但如果您实际上并没有使用听写或主动使用语音控制或 Siri,那么该过程不应该使用那么多 CPU,当然也不应该减慢您的 MBP 到你对表现不满意的地方。通常,当存在实际的代码错误时,就会发生这种资源占用,但如果系统没有足够频繁地重新启动,就会发生这种情况。当守护程序长时间运行时,错误可能会蔓延,这不是代码缺陷的结果。相反,它们通常是读/写错误或存储损坏的结果,因为代码和数据在内存/磁盘和 CPU 本身之间来回分页。最终,错误加起来会导致进程失控或进程崩溃。

我建议大多数人每周至少通过 -重新启动... 或 -关闭来启动系统循环一次。这会触发清理所有容易导致问题的系统缓存的内务例程。

可以通过以下过程在不实际重新启动的情况下清除此特定问题:

  1. 禁用语音控制:->系统偏好设置->辅助功能->语音控制,取消选中“启用语音控制”。
  2. 禁用听写:->系统偏好设置->键盘->听写->听写:->关闭
  3. 禁用 Siri:->系统偏好设置->Siri,取消选中“启用询问 Siri”。
  4. 强制退出语音识别守护进程:启动活动监视器并选择 com.apple.SpeechRecognitionCore.speechrecognition.d,然后单击“x”按钮并在弹出的对话框中单击“强制退出”按钮。

如果您愿意,您现在可以重新启用 Siri 和/或听写而不会对性能造成任何重大影响,因为这些功能仅在您使用该功能时加载语音识别守护程序。不过,语音控制将加载守护程序并使其始终运行。因此,只有在您实际使用语音控制时才重新启用它,因为您会损失一些性能。此外,在您再次关闭语音控制后,该守护程序应该会正常运行并立即死亡。

希望这可以让您按照自己的意愿运行,帮助您识别出事情何时无法正常工作,并让您在使用语音控制和 Catalina 的其他语音识别相关功能时做出明智的决定。

干杯!

于 2020-03-20T22:49:56.690 回答
1

此脚本禁用 Siri、键盘听写、语音控制,并杀死 com.apple.SpeechRecognitionCore.speechrecognitiond 和 com.apple.SpeechRecognitionCore.brokerd 守护进程

您必须在禁用 Siri 后 2 秒内单击“关闭”按钮,因为我还没有弄清楚如何让 applescript 自动单击它。

-- TURN OFF SIRI
tell application "System Preferences"
    activate
    set current pane to pane "com.apple.preference.speech"
end tell

delay 0.5
tell application "System Events"
    tell process "System Preferences"
        -- click checkbox "Enable Ask Siri" of window "Siri"

        if value of checkbox "Enable Ask Siri" of window "Siri" is 1 then
            click checkbox "Enable Ask Siri" of window "Siri"
        end if

    end tell
    -- need to click the Enable Button
end tell

delay 5

-- TURN OFF KEYBOARD DICTATION
tell application "System Preferences"
    reveal anchor "Dictation" of pane id "com.apple.preference.keyboard"
    -- activate
end tell
delay 1
tell application "System Events" to tell radio button "Dictation" of tab group 1 of window "Keyboard" of application process "System Preferences" of application "System Events" to if exists then click
tell application "System Events" to tell radio button "Off" of radio group 1 of tab group 1 of window "Keyboard" of application process "System Preferences" of application "System Events" to if exists then click

delay 0.5
tell application "System Preferences"
    reveal anchor "Dictation" of pane id "com.apple.preference.universalaccess"
    -- activate
end tell

delay 3

-- DISABLE VOICE CONTROL
tell application "System Events"
    tell process "System Preferences"
        if value of checkbox "Enable Voice Control" of group 1 of window "Accessibility" is 1 then
            click checkbox "Enable Voice Control" of group 1 of window "Accessibility"
        end if


        --click checkbox "Enable Voice Control" of group 1 of window "Accessibility"
    end tell
end tell

-- KILL SpeechRecognitionCore Deamon
do shell script "killall -9 com.apple.SpeechRecognitionCore.speechrecognitiond"
do shell script "killall -9 com.apple.SpeechRecognitionCore.brokerd"
于 2020-05-07T01:09:47.257 回答