Skip to content

Automatic language switching does not work for SAPI 5 voices #17146

@gexgd0419

Description

@gexgd0419

Steps to reproduce:

Make sure Automatic language switching is enabled, and you have multiple SAPI 5 voices in different languages.

Select a SAPI 5 voice. Then, go to a webpage with proper language attributes, where the language is different from your current voice language.

Actual behavior:

The voice is not switched.

Expected behavior:

The voice should be switched to another SAPI 5 voice in the corresponding language, just like when using OneCore voices.

NVDA logs, crash dumps and other attachments:

Several log lines similar to the following:

DEBUGWARNING - synthDrivers.sapi5.SynthDriver.speak - MainThread:
Unsupported speech command: LangChangeCommand

System configuration

NVDA installed/portable/running from source:

Installed

NVDA version:

2024.1

Windows version:

Windows 11 23H2

Name and version of other software in use when reproducing the issue:

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

Have you tried any other versions of NVDA? If so, please report their behaviors.

No

If NVDA add-ons are disabled, is your problem still occurring?

Yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?


Automatic language switching is implemented for OneCore voices, but not for SAPI 5 voices.

SAPI 5 also supports some XML tags to switch between languages/voices, such as <voice> and <lang>.

Metadata

Metadata

Assignees

No one assigned

    Labels

    component/speech-synth-driversneeds-technical-investigationA technical investigation is required to progress the issue.p4https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#prioritytriagedHas been triaged, issue is waiting for implementation.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions