Cordova / Javascript录音

我一直在使用Cordova,VueJs和Onsen UI(针对VueJs)开发新应用程序,现在我想使用 Android或iOS设备中的麦克风实现录制一些音频并将其发送到Google Speech to Text API.

我知道如何将数据发送到API,但我的主要问题是如何从移动设备记录数据并使用它(暂时,不保存到设备本身,除非没有网络连接,然后数据应该保存,并且对API的请求应该排队,直到有稳定的网络连接).

我需要实现几件事:
  – 可选比特率
  – 检测设备上剩余的空间以计算最大记录长度(很高兴)
  – 更长的录制时间(只要基本上有空间,或者如果没有(简单)方法将其切割成多个片段,则限制它)
  – 能够实现自定义UI

我已经找到了几种方法来做到这一点,但大多数教程/指南/文档已经过时,功能已弃用的功能/方法或具有设置的UI.

我尝试了大多数推荐的Cordova插件,唯一一个做过工作的插件有一个设置用户界面,这对我来说是不行的,我正在处理的应用程序需要一个自定义UI.我尝试的东西列表中的getUserMedia(),直接在我的iPhone上使用Safari开发工具,返回undefined.

如果我错了,请纠正我,并错过了一些惊人的原生功能或一些npm包/ Cordova插件.

欢迎任何建议或链接!

编辑:
总结一下,我正在寻找主流方式(对于两个平台,最好使用相同的代码)来录制音频,如果需要临时存储它并用它做事(比如将它发送到API).

编辑2:
客户端刚刚提出了一些新请求,这改变了应用程序的范围.所请求的更改之一(对于客户端,这是最重要的功能)是我保存用户录制的音频文件,因此可以随时播放.不会应用设备之间的同步.
问题仍然大致相同,但我确实需要保存录制的音频.

解决方法

对于一个非常简单的用法,您尝试过标准插件吗?我知道你已经说过你已经测试了一些插件,但我已经在一些旧的宠物项目中使用过它,所以也许这是一个调用插件的问题:

https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-media/index.html#mediastartrecord

这很简单,如果你需要更多的控制,我担心你必须使用本机代码创建一个自定义插件.我们已经做了类似的事情来访问Android均衡器和其他功能.

相关文章

公司前端界面用的是vue,我要嵌入到Android中生成App第一步:...
Q:我用cordova开发项目,想在app内跳转外部链接,安装了cord...
我正在使用https://github.com/arnesson/cordova-plugin-fir...
一、Cordova的基础点在混合式应用中,我们通过现有的Cordova...
cordova自定义插件注意:存放自定义cordova插件目录不能有空...
一、问题VueAPP中有一个文件下载功能,用了各种方法来实现下...