通过节点将浏览器麦克风流连接到Google Speech Api

时间:2017-10-27 09:16:31

标签: node.js google-api stream getusermedia

我刚开始使用node.js,并尝试使用我的节点服务器上运行的google speech api和microphone-stream软件包将来自浏览器的生成的麦克风流连接起来。

我使用browserify成功打包了必要的模块,但现在还不知道如何继续。我还将麦克风流也用于node server(如下所述:Streaming Speech Recognition on an Audio Stream)。

我如何传输音频流?我在一个问题中阅读了有关使用websockets的内容,但在我的案例中,它是否是正确的方法。还是RPC?

现在我在服务器上使用这些软件包:

const express = require('express');
const path = require('path');
const bodyParser = require('body-parser');
const fs = require('fs');
const record = require('node-record-lpcm16');
const google = require('googleapis');
const getUserMedia = require('get-user-media-promise');
const MicrophoneStream = require('microphone-stream');

这是我第一次使用节点/服务器,所以希望这个问题不太天真。 谢谢! :)

1 个答案:

答案 0 :(得分:2)

我建造了一个游乐场来解决这个问题。它不使用任何先前的插件(节点记录16 / microphone-stream / ...),而是通过socket.io将16位音频流发送到节点服务器。

https://github.com/vin-ni/Google-Cloud-Speech-Node-Socket-Playground