科尔多瓦|从iOS上的麦克风获取直播

我正在尝试构建一个语音日历应用程序,需要使用麦克风的实时流进行语音识别.

因此,您有一个开始收听麦克风的按钮,并在用户停止讲话时自动停止.

我已经探索过Cordova Media API,它允许我将数据记录到wav文件中.这有效,但由于我需要等待录制完成,因此该过程非常缓慢.

我使用https://api.ai作为起点来构建应用程序的第一个版本,该版本运行良好.它照顾了所有“倾听”部分!

我的下一阶段是与几个不同的语音识别API集成.

对我来说主要的问题是缺乏原生开发技能,所以有没有可以帮助我做到这一点的cordova插件?

更新1 – 2016年4月1日

发现了这个https://subvisual.co/blog/posts/39-tutorial-html-audio-capture-streaming-to-node-js-no-browser-extensions
将试图通过webrtc在cordova中实现这一点.

更新2 – 2016年4月1日

安装https://github.com/eface2face/cordova-plugin-iosrtc以利用webrtc

更新3 – 2016年4月2日

Stuck at AudioContext.createMediaStreamSource不是iOS上的一个功能!
AudioContext.createMediaStreamSource alternative for iOS?

2016年4月4日至6日更新

Going Native – 学习iOS开发的时间!

最佳答案
很抱歉听到您放弃了Cordova,但如果您仍然感兴趣:我已经为iOS和Android创建了一个cordova插件,可以捕获麦克风数据并将其转发到应用程序的Web层.您可以依靠Web Audio API来处理传入的声音,也可以使用任何其他方式对原始声音数据进行编码和保存:

https://github.com/edimuj/cordova-plugin-audioinput

用法示例:

function onAudioInput( evt ) {
  // 'evt.data' is an integer array containing raw audio data
  console.log( "Audio data received: " + evt.data.length + " samples" );

  // ... do something with the evt.data array ...
}

// Listen to audioinput events
window.addEventListener( "audioinput", onAudioInput, false );

// Start capturing audio from the microphone
audioinput.start();

转载注明原文:科尔多瓦|从iOS上的麦克风获取直播 - 代码日志