问题标签 [sapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows-7 - SAPI 和 Windows 7 问题
我正在尝试使用 Windows 7 识别语音,但它始终将语音识别为命令或只是说“那是什么?”。
我怎样才能得到所有的演讲?
代码:
delphi - 将 SAPI Text-To-Speech 本地化为西班牙语
通过使用以下代码,我设法在 Delphi/Lazarus 中使用 SAPI Text-To-Speech:
此代码自动选择英语标准语音。由于我需要将其本地化为西班牙语,因此我调查了我的系统(带有标准西班牙语的 Windows XP)是否有西班牙语语音或者我需要安装它,以及如何更改默认语音,但到目前为止还没有运气。因此我的问题是:
- 我如何知道我的系统是否已经安装了西班牙语语音或者我需要安装它?
- 假设我安装了我需要的语音,我怎样才能让 SAPI 使用该语音而不是标准语音?
我猜我可以通过使用以下代码获得西班牙语语音(C0A 是西班牙语的代码):
但不知道如何设置要使用的声音。
编辑:为避免混淆,我需要使其与 Delphi 和 Lazarus 兼容,这是最后一个主要开发工具。
c# - 无法在 C# 中使用 MS-SAPI 5.1 创建多个 TTS“wav”文件
问候各位!
我正在做一个项目,我将不得不使用 TTS 创建名称的 WAV 文件。
我在 Windows Server 2003 上安装了 MS-SAPI 5.1 SDK 并使用 C# 编写 TTS 程序。除了默认的 Microsoft Sam 语音外,我还在服务器上安装了来自 NeoSpeech TTS 的语音。
我遇到的问题是,该程序不会产生超过 1 个工作 WAV 文件。
更具体地说,如果我向程序发送 4 个名称,程序会创建 4 个 WAV 文件。但是,只有名字被正确转换。文件大小大于 1 kb,并且文件也在媒体播放器中播放。
其他 3 个文件已创建,但大小为 1 kb,无法在任何媒体播放器中使用。
我是 C# 和 MS-SAPI 的新手,但我相信我在创建代码方面做得不错。我花了几天的时间试图弄清楚这一点,但我现在没有精力了。
非常感谢您对此问题的任何见解。谢谢你的时间。
这是我的代码:
编辑:
我似乎注意到了一些新的行为。该代码适用于系统上的 Microsoft 语音。只有 NeoSpeech 的声音我似乎有这个问题。
这是否意味着我的代码是正确的,而声音有问题?一方面,我从客户那里得到了声音,所以我对此无能为力。其次,这些是生产就绪的声音。我很确定它们经过了很好的测试,否则我们会听到很多关于它的信息。
我仍然倾向于相信我编写的代码有问题。
还有其他可用的建议吗?我在这里得到了真正的修复,任何帮助将不胜感激。
multithreading - 我在一个线程中调用 sapi,得到一个错误代码:OLE 错误 80045006
我已经调用了 CoInitialize。我的代码是:
并且该错误仅在我选择 neospeech 语音时发生。
vb.net - 编程错误
我收到一个错误
未声明名称“SVEPhoneme”。
我如何以及在哪里声明它?
vb.net - 如何将参数传递给 BackGroundWorker
如何将 text2 传递给 vox.speak?
vb.net - 如何停止流式音频
使用 sapi 播放音频流后,如何停止它。我必须跳过整组句子吗?
编辑:一旦我暂停了音频,如何停止它。
sapi - 语音训练文件和注册表位置
我有一个语音项目,需要在代码中进行声学训练。我成功地使用 SAPI 在 Windows 7 下创建了带有成绩单及其相关注册表项的培训文件。但是,我无法确定识别引擎是否成功使用这些文件并调整其模型。我的问题如下:
通过控制面板训练 UI 进行训练时,系统将训练文件存储在“{AppData}\Local\Microsoft\Speech\Files\TrainingAudio”中。音频培训文件是否必须存储在此位置,或者只要配置文件的注册表条目反映正确的路径,我可以将它们存储在其他位置吗?
- 语音控制面板在“HKCU\Software\Microsoft\Speech\RecoProfiles\Tokens{ProfileGUID}{00000000-0000-0000-0000-0000000000000000}\Files”键中为训练音频文件创建注册表项。
a) 我的培训代码创建的注册表项是否必须放在“{00000000-0000-0000-0000-0000000000000000}\Files”中,或者我可以在 {ProfileGUID} 下创建一个新的随机 GUID?
b) 子项是否必须命名为“文件”?
c) 注册表值是否必须遵循“TrainingAudio-xxxx-xxxxxxxx-xxxxxxxx”的形式,或者我可以使用其他值吗?
d) 最后,注册表值数据的格式为“%1c%\Microsoft\Speech\Files\TrainingAudio\SP-xxx....xxx”。我可以指定绝对路径吗?
e) 文件名是否必须遵循“SP-xxx....xxx.wav”形式,或者我可以使用任何唯一的文件名吗?
谢谢。
吉里
c++ - 获取当前 TTS 语音的语言
获取 TTS 引擎将使用的当前语音的语言的最佳方法是什么?
我以为我会使用类似的东西
但我不确定如何从中提取 LangId 以确定当前语言。我见过的指南似乎都解决了改变声音的问题。我更愿意保留当前的声音,然后根据用户已经为其系统选择的声音做一些定制的事情。
speech-recognition - 使用 SAPI 进行语音识别:通过音素支持自定义语言
我有一个文本,我已经从文本转录为音素。
我现在想修改或创建一个自定义语法 XML,它将定义具有国际音素的单词的发音,并使用具有特定拼写的语法来识别,而不是其他任何东西。
我想为使用英语/德语等不同语言的某些单词添加语音识别;
使用 SAPI 可以实现吗?如何实现?谁能指出我正确的方向(使用 SpInProcRecoContext.Recognizer 和自定义语法)
所以我想使用已经存在的 ea 英语识别引擎来识别意大利语,例如通过音素定义意大利语单词,并让引擎将它们识别为英语自定义单词,从而使其也能够识别一些意大利语单词。