图像缩略图

speech2text

自动语音到文本转换

103个下载

更新2020年2月27日

查看许可证

自动化标签和语音录音标注,评估DSP管道的性能语音和语音增强,语音录音运行文本分析等。

此项使您可以作为MATLAB载体采样的语音记录转换为使用一个函数调用的字符串。从MATLAB释放R2019b开始,这也使您以交互方式使用音频贴标应用程序来执行语音转录。

您需要的音频工具箱,互联网连接,并激活订阅许可证到您所选择的语音到文本服务 - 谷歌™云语音到文本API,IBM™沃森语音到文本API,或Microsoft™Azure的语音服务API。

关于如何开始详细的说明请查看示例标签。

另请参阅:自动文本到语音合成(text2speech)//www.tatmou.com/matlabcentral/fileexchange/73326-text2speech

引用作为

MathWorks的音频工具箱队(2020年)。speech2text(//www.tatmou.com/matlabcentral/fileexchange/65266-speech2text),MATLAB中央文件交换。检索

评论和评分(64

藤本亮

@Adam Pautsch,
我也跑speech2text(版本1.2.5)与R2020a,和同样的问题发生。
然后我跑speech2text(版本1.2.5)与R2019a,和它的工作好!
似乎有大约struct2table功能有一定的不同。
请您尝试一下。

jibrahim

@Adam Pautsch,

我刚刚创建了一个新的IBM客户尝试了这一点。似乎工作。

什么网址使用您的IBM_Credentials_Speech2text.json?它是这一个?

https://stream.watsonplatform.net/speech-to-text/api

使用IBM沃森API时,我得到一个错误。我跑R2020a,我已经安装了音频工具箱。我下载speech2text版本1.2.5作为一个zip文件并运行setup.m脚本。我创建了一个语音到文本的服务与IBM和复制的凭据JSON文件。的语音到文本按钮显示在我的音频贴标应用程序。当我虽然音频采样运行它,我得到错误“输入结构必须是一个标量结构,或有一列或一行的结构阵列”。

我使用的音频是wav文件,1个信道,44.1千赫12秒,未压缩的,16比特/采样。一切(除了长度)是一样的,在实施例的文件。

我还试图通过命令行来运行,使用实施例中文件确切的代码。我得到一个类似的错误:
使用struct2table误差(第30行)
输入结构必须是标量结构,或与一成或一行的结构阵列。
错误IBMSpeechClient / parseRecognizeResponse
错误BaseSpeechClient /识别
错误BaseSpeechClient / speechToText
误差在speech2text(线47)
tableOut = connection.speechToText(Y,FS,超时);

这是speech2text代码中的错误,或者是有一些关于我的struct2table功能有什么不同?

徐汇杨

嗨亚历杭德罗,可惜LongRunningRecognize或流语音识别不是由speech2text包在这一点上的支持。金宝app正如加布里埃尔前面指出的,“在某些情况下(例如破碎的句子上使用某种VAD的蝇)使段speech2text仍可得到可接受的结果”。如果不适合你,你可以尝试与谷歌提供的客户端库(Java或Python)的一个接口您的MATLAB代码。如果你碰巧走这条路,请在这里发表您的发现,所以可能是其他人谁具有同样的问题非常有用。下面的链接可能是你一个很好的起点:

谷歌客户端库:https://cloud.google.com/speech-to-text/docs/reference/libraries
MATLAB接口为其他语言://www.tatmou.com/help/matlab/external-language-interfaces.html

希望这可以帮助。谢谢。
-Raja

嗨拉贾,
当使用谷歌的语音识别API,我得到这个错误:“同步输入太长。对于音频长于1分钟使用LongRunningRecognize与“URI”参数“。但它不是从文档如何建立speechObject为LongRunningRecognize和URI参数清晰。另外,我想使用其他功能和API的版本,以及。以下是使用从云壳牌API(成功)的示例:
gcloud阿尔法毫升语音识别,长时间运行GS://bucket/movie01.wav --language码= EN-US --async --enable-自动标点--encoding = linear16 --include字信心 --include字的时偏移--max替代品= 0 --sample率= 44100 --audio-主题= “电影” --interaction型=专业制作--microphone距离=近场
如何设置speechObject这个例子吗?非常感谢你。

嗨,
我的问题得到了与IBM沃森语音到文本的服务解决。
我认为在与谷歌语音服务代码中的一些问题。代码的作者应该考虑的问题,并修改代码。
感谢您的支持。金宝app

嗨拉贾,你有没有发现这个错误的任何解决方案。

您好我在Matlab中已经安装了音频工具箱,当我给音频版本,现在我得到
>>音频版本
-----------------------------------------------------------------------------------------------------
MATLAB版本:9.4.0.813654(R2018a)
操作系统:微软的Windows 10家单语言版本10.0
Java版本:爪哇1.8.0_144-B01与Oracle公司的Java的HotSpot(TM)64位服务器VM混合模式
-----------------------------------------------------------------------------------------------------
音频系统工具箱版本1.4(R2018a)

现在,当我运行程序我得到的,
使用附加错误(线38)
错数量的用于过时的基于矩阵的语法输入参数。

错误GoogleSpeechClient / getRecognizeURL

错误BaseSpeechClient /识别

错误BaseSpeechClient / speechToText

误差在speech2text(线45)
tableOut = connection.speechToText(Y,FS,超时);

如何解决这个

拉贾嗨,对不起延迟。
这些是您提出以下信息,
这speech2text
C:\用户\ vaksh \文档\ MATLAB \加载项\工具箱\ speech2text.m,它指向哪里下载的位置。
音频版本
MATLAB版本:9.4.0.813654(R2018a)
操作系统:微软的Windows 10家单语言版本10.0
Java版本:爪哇1.8.0_144-B01与Oracle公司的Java的HotSpot(TM)64位服务器VM混合模式
-----------------------------------------------------------------------------------------------------
警告:不正确格式化Contents.m文件被发现的“声音”。

嗨Akshatha,我试图重现你所面对的错误。能否请您做到以下几点:
1.运行“这speech2text”在您的MATLAB会话,并确保它指向你从这个页面下载最新的文件的位置。告诉我你发现了什么。
2.给我的“VER音频”显示的输出在MATLAB会话。请删除MATLAB许可证编号或任何个人信息,你送我的结果之前。

谢谢,
拉贾

亚当·丹茨

@ MathWorks的音频工具箱团队,请查看该对话在提供以帮助解决问题的链接//www.tatmou.com/matlabcentral/answers/495157-error-using-speech2text

你好
当我下载了这一点,并试图运行我收到以下错误:
输出参数“tableOut”(其它)调用期间未分配
“BaseSpeechClient / speechToText”。

误差在speech2text(线45)
tableOut = connection.speechToText(Y,FS,超时)

误差在STT(第7行)
outInfo = speech2text(speechObject,样品,FS, 'HTTPTimeOut',25)

即时帮助需要

嗨拉贾,
一个细节,speechTranscriber是我这么叫我的脚本。我曾尝试将其重命名(letsSee.m),但仍收到了同样的错误。但现在的错误读取:

输出参数“tableOut”(其它)调用“BaseSpeechClient / speechToText”期间未分配。

误差在speech2text(线45)
tableOut = connection.speechToText(Y,FS,超时);

误差在letsSee(线19)
转录= speech2text(抄录,Y,FS)

很遗憾听到这个克里斯托弗。SpeechTranscriber(如发现自己的错误堆栈)不是speech2text包的一部分了。我不知道如果新文件(版本1.2.3)在某种程度上阴影。对不起,我无法在这里解决您的问题。请联系MathWorks公司的技术支持,他们也许能够帮助你:金宝app//www.tatmou.com/金宝appsupport/contact_us.html

嗨拉贾,

首先,非常感谢你的帮助!我卸载了,重新启动,重新安装(1.2.3版本,从这个友情链接),重新启动MATLAB和公正的良好措施整个计算机和我收到了同样的错误。

嗨克里斯托弗。感谢您将错误堆栈。你的错误堆栈看来你可能会使用speech2text较旧版本的建议。
能否请你删除旧版本speech2text,再下载,运行安装程序,重新启动MATLAB,并尝试相同的命令?

我正在MATLAB_R2017B。我想今天与谷歌客户端运行它,看它是否是一台IBM的问题,这是不是和我收到了同样的错误。

我所用的谷歌代码基本上是一字的例子包含在文档(我试图运行它没有speechContext和maxAlternatives领域以及和这些都不是错误的来源):

[Y,FS] = audioread( '/ filelocation / FILENAME.WAV');

%谷歌
抄录= speechClient( '谷歌', '语言代码', '的en-US', 'maxAlternatives',3 'speechContexts',[{speechcontext}]);
转录= speech2text(抄录,Y,FS)

当我运行IBM版本时收到它返回相同的错误:

输出参数“tableOut”(其它)调用“BaseSpeechClient / speechToText”期间未分配。

误差在speech2text(线45)
tableOut = connection.speechToText(Y,FS,超时);

误差在SpeechTranscriber(线19)
转录= speech2text(抄录,Y,FS)

我所用的谷歌代码基本上是一字的例子包含在文档(我试图运行它没有speechContext和maxAlternatives领域以及和这些都不是错误的来源):

[Y,FS] = audioread( '/ filelocation / FILENAME.WAV');

%谷歌
抄录= speechClient( '谷歌', '语言代码', '的en-US', 'maxAlternatives',3 'speechContexts',[{speechcontext}]);
转录= speech2text(抄录,Y,FS)

当我运行IBM版本时收到它返回相同的错误:

输出参数“tableOut”(其它)调用“BaseSpeechClient / speechToText”期间未分配。

误差在speech2text(线45)
tableOut = connection.speechToText(Y,FS,超时);

误差在SpeechTranscriber(线19)
转录= speech2text(抄录,Y,FS)

嗨克里斯托弗,我无法重现你的失败。哪个版本speech2text和MATLAB您使用的是?

请帮助!当我运行下面的代码我得到的错误:

输出参数“tableOut”(其它)调用“BaseSpeechClient / speechToText”期间未分配。

码:
speechObjectIBM = speechClient( 'IBM', '关键字', “汤姆,雌鸟,RJ,安迪,杰森,杰夫”, 'keywords_threshold',0.5);
speechObjectIBM.Options

抄录= speechClient( 'IBM', '语言代码', '烯US');
转录= speech2text(抄录,Y,FS);

是什么导致这个有什么想法?

嗨丹,提升工作正常,我有v1p1beta1版本。请尝试不同的音频文件和/或搜索结果与谷歌从的Web应用比较:https://cloud.google.com/speech-to-text/
另外,请记住,所有3个云服务提供商必须对同步请求的音频文件的长度是有限的。谷歌限制为约1分钟:https://cloud.google.com/speech-to-text/quotas
如果仍无法解决,MathWorks公司介绍技术支持也许能够帮助你:金宝app//www.tatmou.com/金宝appsupport/contact_us.html

丹Waisel

拉贾你好,谢谢,我现在v1p1beta1版本工作。
不过“升压”不给我想要的结果,我不知道为什么还没有。

丹Waisel

嗨拉贾,感谢您对本信息!
当支持升压,什么是正确的方法金宝app来设置它的价值呢?不像其他的属性,它是一个子再次提交财产“speechContext”的。提供 'speechContext' 用JSON字符串如下:speechClient( '谷歌', 'speechContexts',[{ “短语”: “天气热”], “提升”:2}])在Matlab工作(只有当你?增加对本金宝app课程的支持)
期待您的答复,并获得更好的理解这个强大的功能和API的。

丹嗨,有趣的问题!感谢这里发布您的问题。
“提升”是谷歌云语音到文本API的v1p1beta1版本的新特性,并且不受speech2text被支持。金宝appspeech2text目前使用API​​ v1版本。这可能是为什么服务忽略了“助推”选项。我们很可能会增加对公测版本发布后,才新的A金宝appPI支持。

在这里看到这两个API之间的差异:
https://cloud.google.com/speech-to-text/docs/reference/rest/v1/RecognitionConfig
https://cloud.google.com/speech-to-text/docs/reference/rest/v1p1beta1/RecognitionConfig

如果这种道歉没有解决您当前使用情况。

丹Waisel

你好,

我使用谷歌的语音客户端,并试图在请求中设置选项:
speechClient( '谷歌', '语言代码', '他-IL', 'enableWordTimeOffsets',真正的 'speechContexts',[ '短语',known_transcript, '升压',20]);
如我预料此行是行不通的。在“语言代码”,“他-IL”,“enableWordTimeOffsets”,真正的选项工作正常,但它似乎忽略了“助推”选项是“speechContexts”的子属性,如谷歌的API解释说:
“配置”:{
“编码”: “LINEAR16”,
“sampleRateHertz”:8000,
“语言代码”: “EN-US”
“speechContexts”:[{
“短语”:[“天气热”],
“提升”:2
}]
}

我将不胜感激,如果有人可以解释这个选项应该如何进行设置。
问候,
丹Waisel
特拉维夫大学

张雄

你好约翰,好问题。我如果他不是100%有用的都没有详细审查这个呢,所以道歉。我似乎记得,除非你指定一个不同的位置,该文​​件默认保存在C:\ Users \ <用户名> \应用程序数据\漫游\ gcloud。如果客户是谷歌,文件名应该是Google_Credentials_Speech2text.json。您也可以尝试在MATLAB以下>>这Google_Credentials_Speech2text.json

约翰

如何更新JSON文件?我用我的初始运行错误的文件时,程序提拔我,现在,它不会让我改变JSON文件的位置。

非常感谢加布里埃莱!
我想我会去一个C#接口,以谷歌和流极有可能会导入一些MATLAB技能到该应用程序。

嗨丹妮,很遗憾,我们无法做出speech2text可用的源代码,在这一点上。在任何情况下,修改,支持流媒体语音到文本界面不会是微不足道的。金宝app如果您想尝试开发自己的MATLAB包装为特定的基于Web的服务,首先要仔细查看该服务的发布的Web API,你有兴趣。要执行脚本以及自动使用MATLAB,关键构建模块的要求将MATLAB的HTTP(//www.tatmou.com/help/matlab/http-interface.html)和JSON(//www.tatmou.com/help/matlab/json-format.html)接口。祝好运!

非常感谢加布里埃莱,清晰。是否有机会得到一个想法有关的speech2text,这样我可以将它修改为工作流模式的引擎盖下?非常感谢丹尼

嗨丹妮,speech2text本身没有设计成支持流媒体使用,它没有利用从所提供的云服务的任何特制的金宝app流媒体接口。在一些情况下使所述段speech2text仍可能产生可接受的结果(例如在飞行中使用某种VAD的分手句子)。然而,除了增加的等待时间,云服务将录制在隔离每个段。

加布里埃莱嗨,是否有可能使用speech2text环境下运行的蒸模型的谷歌API?从麦克风到谷歌的意思传递样品和在实时接收回来的结果?

喜的Piyush,请参阅本页面的“实例”选项卡 - 应该已经包括所有的详细步骤和代码示例“语音到文本使用第三方语音API的执行”。如果你觉得有什么缺失,我们将不胜感激,如果你能详细告诉我们那是什么。提前致谢!

PIYUSH生主

谁能告诉分步进行,如何创建reqyuired对象和JSON文件使用谷歌语音API?
所以,我可以使用speech2text?

非凡佳

嗨阿德南,
请看看提供的主要例子。除了关于如何获取安装的东西,根据指令“执行语音到文本转”,你会发现代码,演示如何从文件加载一个预先录制的语音片段,以及如何使用speech2text得到转录。

如何在MATLAB中第一次使用Speech2text算法?可以回答,请尽快
我有一个音频文件,但我想它翻译成文本的任何想法,请

没关系,我已经意识到我的错误并纠正它。我需要的路径添加到下载speec2text文件夹,而不是编译对象。
非常感谢。:)

您好加布里埃莱,感谢您的快速回复。
我曾尝试手动添加文件以下拉贾的职位,但是无论是我没有理解,或者没有工作的遗体问题。我都尝试:
“让addpath( 'C:\ Program Files文件\ MATLAB \ R2019a \工具箱\音频\音频\编译\')” 和
“让addpath(genpath'C:\ Program Files文件\ MATLAB \ R2019a \工具箱\音频\音频\编译\'))”。我有没有误解的东西吗?

奥利弗您好,感谢您与我们联系。
我们已经确定了与附加安装,防止提交的文件夹被添加到MATLAB的搜索路径的问题。
我们将致力于解决这个问题在即将到来的更新。在此期间,请手动将所有提交文件夹添加到MATLAB路径(添加顶层文件夹,包括所有子文件夹)。你可以参考拉贾的帖子在这里下面有关此主题的更多信息。
谢谢。

我试图使用speech2text但不断收到以下错误。
使用speechClient“错误
无法访问speech2text。请确保该文件
安装。转到文件交换来下载。欲了解更多
信息,请点击这里。”
我已确认所安装的speech2text加和“这speech2text”返回明智的答案“C:\ Program Files文件\ MATLAB \ R2019a \工具箱\音频\音频\编译\ speech2text.p”。有没有人有这是为什么不工作的任何想法?

你好..我不断收到一个错误..我使用的是谷歌的语音识别API,但每次我尝试运行它,我得到这个错误信息:
使用coder.internal.error误差(第14行)
无法访问speech2text。请确保该文件
安装。转到文件交换来下载。欲了解更多
信息,请点击这里。

错误speechClient

误差在speechtest(线1)
speechObject =
speechClient( '谷歌', '语言代码', 'EN-US');

你好格雷森,

下载的文件speech2text可能不是你的MATLAB的搜索路径(//www.tatmou.com/help/matlab/matlab_env/what-is-the-matlab-search-path.html

请让addpath您下载speech2text文件夹(//www.tatmou.com/help/matlab/ref/addpath.html)或CD它运行speech2text命令之前。

希望这可以帮助。

嗨,您好,
我想使用谷歌的语音识别API,但每一次我尝试做一个speechClient我得到这个错误:
使用coder.internal.error误差(第14行)
无法访问speech2text。确保文件安装。转到文件交换来下载。欲了解更多信息,请点击此处。

错误speechClient

我检查了多次,speech2text肯定是安装。我也确实有安装音频系统工具箱。任何想法,我做错了吗?
提前致谢。

您好奥利弗,

它看起来像您正在使用的“语言代码”传递的型号名称为IBM,但你需要使用“模式”,像传递给它:

抄录= speechClient( 'IBM', '模型', 'ES-ES_NarrowbandModel');

这是预期的名称 - 值作为IBM文档中提到 -https://www.ibm.com/watson/developercloud/speech-to-text/api/v1/curl.html?curl#recognize

希望这可以帮助!

奥利弗卖

你好,

我使用的是IBM沃森语音API。当我运行这个功能,我得到以下错误:

“错误的请求” 400“这个8000HZ的音频输入需要一个窄带模式。看到的是https:// 可用的型号列表/ V1 /模型”

我想“EN-US_NarrowbandModel”作为“语言代码”,但它仍然无法正常工作。如何传递变量'模型“EN-US_NarrowbandModel”或更改模型?

先感谢您。

你好,我收到以下错误,当我运行:
[Y,FS] = audioread( '您选择 - 上的右-track.wav');
speechObject = speechClient( '微软', '识别', '互动', '语言', 'EN-US');
tableOut = speech2text(speechObject,Y,FS)

输出参数“tableOut”(其它)调用“speechClient / speechTotext”期间未分配。

错误speech2text

误差在sampleTesting(第4行)
tableOut = speech2text(speechObject,Y,FS)

我使用的是微软的Azure API兵
是否有人可以帮助我吗?

@Sumit蒙达尔 - 感谢您报告这一点。它看起来像这样的错误是由于缺乏对音响系统工具箱,这是由speech2text需要许可证的触发。缺乏实际的错误信息的透明度将被固定在即将到来的更新。

这些错误我在尝试运行speech2text()函数时,有以下几种:
无法找到消息键“noAudio”目录中的“信号:sigtools”。

错误speechClient.checkoutASTLicense

错误speechClient / speechTotext

错误speech2text

有谁知道是什么问题 ?

有没有什么办法,使单词的时间开始及偏移的谷歌API吗?看到:https://cloud.google.com/speech-to-text/docs/async-time-offsets#speech-async-recognize-gcs-python

森纳aytan

On the frequently encountered error "Expected input to be a vector" - Please note that the second input argument y of the speech2text function needs to be either a column or a row vector, i.e. an array having one of its dimensions equal to 1. It is very common for audio recordings to be stored in stereo format, so you may want to check the size of your audio array before using speech2text, for example by looking at your MATLAB workspace. If your audio array has multiple channels (typically resulting in a number of columns greater than 1), you need to select only one of them. Good options for stereo signals include either the left channel, i.e. y = readAudio(:,1), the right channel, i.e. y = readAudio(:,2), or their average across channels, i.e. y = mean(readAudio,2)

森纳aytan

谢谢你,我已经通过电子邮件通知您@gabriele

@Sunaina Aytan - 感谢您对您取得联系。请把你所得到的是错误的详细信息,包括完整的再现步骤,使用//www.tatmou.com/下载188bet金宝搏products/audio-system/expert-contact.html

森纳aytan

您好我不断收到此错误,请帮助

错误使用speechClient / speechTotext
预期输入是一个矢量。

错误speech2text

山姆,你是不正确保存JSON文件。JSON文件对IBM的内容应该只包含从IBM Speech API的帐户获得的“用户名”和“密码”。另外,不要忘记,包括括号 - “{”开头和“}”在您的JSON文件的末尾。

在下载的文件夹,你会看到“writing_IBM_JSON.png”的HTML子文件夹内。此图片将帮助你编写JSON文件为IBM API。

希望这可以帮助!

当创建一个使用IBM的以.json文件,我得到它正在读救人第一的文件的信息在jsondecode功能的错误:

使用jsondecode错误
JSON语法错误位于第1行,第1列(字符1):预期值,但发现“MATLAB”。

打开我的JSON文件在MATLAB给出这个作为我的第一行:

MATLAB 5.0 MAT文件,平台:MACI64,创建于:星期三

难道我救了我的JSON错误?

khcy82dyc

ARH我想通了。发生这种情况时,谷歌API无法检测到任何言语..

khcy82dyc

你好,当我跑我得到这个错误:

[样品,FS] = audioread( 'handel.wav');
speechObject = speechClient( '谷歌', '语言代码', 'EN-US');
tableOut = speech2text(speechObject,样品,FS)

参考不存在的领域“结果”。

错误speechClient / showOutput

错误speechClient / googleAPI

错误speechClient / speechTotext

错误speech2text

误差在speech2textconvert(第8行)
tableOut = speech2text(speechObject,样品,FS)

更新

1.2.5

添加了指向text2speech

1.2.4

当音频工具箱许可证不可用更好的错误处理

1.2.3

允许指定自定义URL识别为谷歌的客户。这提供了一种使用谷歌云语音到文本API的测试版本。

1.2.2

防止将安装脚本,以MATLAB路径

1.2.1

错字修复

1.2.0

在MATLA金宝appB发布R2019b使用音频贴标交互式语音新增支持文本转

1.1.5.0

中老年MATLAB版本解决兼容性问题(R2017a和R2017b)

1.1.4.0

增加了新的认金宝app证计划为IBM和微软API的支持。

1.1.3.0

上安装修正路径更新

1.1.2.0

改进的错误处理和使用微软API时缺乏反应数据。

1.1.1.0

更新更改到IBM API

1.1.0.0

在文件/ EN添加的文件启用P编码的文件CMD在线帮助。

1.1.0.0

新增HTTPTimeOut选项允许使用更长的讲话录音。
添加了错误信息,更好地处理这样一个场景,一个HTTP请求是成功的,但API不返回任何转录数据

MATLAB版本兼容性
创建与R2019b
与R2017a兼容任何版本
平台兼容性
视窗 苹果系统 Linux的