如何将音频从 AngularJS 流式传输到 Google Cloud Speech API
How to stream audio from AngularJS to Google Cloud Speech API
我是 HTML5 网络音频 API 和 Google 云语音 API 的新手。我正在尝试将语音识别构建到 AngularJS 应用程序中,以便用户可以使用语音到文本执行搜索,而不是使用键盘输入搜索内容。
目的是使用 getUserMedia() 从客户端捕获音频并将其流式传输到 Google Cloud Speech API,并异步接收返回结果。
Google 提供一组 client libraries 允许您从服务器端平台(如 C#、Node 和 Java 流式传输到他们的 API 但我不能找不到显示我如何执行以下任一操作的示例:
- 将音频从 AngularJS 直接流式传输到 Google Cloud Speech API
- 将音频从 AngularJS 流式传输到自定义 API,使用客户端库
将提要中继到 Google Cloud Speech API
有没有人找到将音频从 AngularJS/HTML5 客户端流式传输到 API 的方法,例如 Google Cloud Speech API?
几个选项:
流客户端sample code:
function sendBytesToSpeech (bytes, encoding, rate, callback) {
gapi.client.speech.speech.syncrecognize({
config: {
encoding: encoding,
sampleRate: rate
},
audio: {
content: bytes
}
}).execute(function (r) {
callback(r);
});
}
function sendBlobToSpeech (blob, encoding, rate) {
var speechSender = new FileReader();
speechSender.addEventListener('loadend', function () {
sendBytesToSpeech(btoa(speechSender.result), encoding, rate, uiCallback);
});
speechSender.readAsBinaryString(blob);
}
使用 Express and a WebSocket connection 或您首选语言的类似配置在服务器端流式传输。
我是 HTML5 网络音频 API 和 Google 云语音 API 的新手。我正在尝试将语音识别构建到 AngularJS 应用程序中,以便用户可以使用语音到文本执行搜索,而不是使用键盘输入搜索内容。
目的是使用 getUserMedia() 从客户端捕获音频并将其流式传输到 Google Cloud Speech API,并异步接收返回结果。
Google 提供一组 client libraries 允许您从服务器端平台(如 C#、Node 和 Java 流式传输到他们的 API 但我不能找不到显示我如何执行以下任一操作的示例:
- 将音频从 AngularJS 直接流式传输到 Google Cloud Speech API
- 将音频从 AngularJS 流式传输到自定义 API,使用客户端库 将提要中继到 Google Cloud Speech API
有没有人找到将音频从 AngularJS/HTML5 客户端流式传输到 API 的方法,例如 Google Cloud Speech API?
几个选项:
流客户端sample code:
function sendBytesToSpeech (bytes, encoding, rate, callback) { gapi.client.speech.speech.syncrecognize({ config: { encoding: encoding, sampleRate: rate }, audio: { content: bytes } }).execute(function (r) { callback(r); }); } function sendBlobToSpeech (blob, encoding, rate) { var speechSender = new FileReader(); speechSender.addEventListener('loadend', function () { sendBytesToSpeech(btoa(speechSender.result), encoding, rate, uiCallback); }); speechSender.readAsBinaryString(blob); }
使用 Express and a WebSocket connection 或您首选语言的类似配置在服务器端流式传输。