我正在使用Cordova、VueJs和Onsen UI(用于VueJs)开发一个新的应用程序,现在我想使用Android或iOS设备中的麦克风录制一些音频并将其发送到Google语音到文本API。我知道如何将数据发送到API,但我的主要问题是如何从移动设备录制数据并使用它(暂时不保存到设备本身,除非没有网络连接,然后数据应该被保存,并且请求API应该排队等待稳定的网络连接)。有几件事情我需要实现:
- 可选择的比特率
- 检测设备上剩余的空间以计算最大录制长度(如果可以的话)
- 更长的录制时间(只要有足够的空间,或者如果没有(简单的)方法将其分成多个部分,则限制它)
- 能够实现自定义UI
我已经查阅了几种方法来做到这一点,但大多数教程/指南/文档都已过时,功能已弃用或具有固定的UI。我尝试了大多数推荐的Cordova插件,唯一能够工作的插件具有固定的UI,这对我来说是不可接受的,必须为我正在开发的应用程序提供自定义UI。我尝试了使用Safari开发人员工具直接在我的iPhone上使用getUserMedia(),但返回undefined。如果我错了或者错过了一些令人惊叹的本地功能或npm包/Cordova插件,请纠正我。欢迎任何建议或链接!编辑:总之,我正在寻找主流方法(对于两个平台,最好使用相同的代码)来记录音频,如果需要,暂时存储它并对其进行操作(例如将其发送到API)。编辑2:客户刚提出了一些新要求,这使得应用程序的范围发生了很大变化。客户请求更改之一(对客户而言,这是最重要的功能)是保存用户录制的音频文件,以便随时播放。不会应用于设备之间的同步。问题基本上仍然是相同的,但我确实需要保存记录的音频。