Ionic 2 - 用蓝牙耳机录音

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ionic 2 - 用蓝牙耳机录音相关的知识,希望对你有一定的参考价值。

我正在开发一个旨在使用蓝牙耳机麦克风录制语音的应用程序。我在这个环境中使用Ionic 2:

@ionic/cli-utils : 1.4.0
Cordova CLI      : 7.0.1
Ionic CLI        : 3.4.0
local packages:

@ionic/app-scripts              : 1.1.4
@ionic/cli-plugin-cordova       : 1.4.0
@ionic/cli-plugin-ionic-angular : 1.3.1
Cordova Platforms               : android 6.1.2
Ionic Framework                 : ionic-angular 2.2.0
System:

Node       : v6.10.0
OS         : Windows 10
npm        : 3.10.10

我正在使用cordova-plugin-audioinput来录制音频。我试图将配置的音频输入源类型更改为VOICE_COMMUNICATION,MIC和DEFAULT。但是,它仍然使用设备的麦克风录制。

在Android上,我看到使用了MediaRecorder。我在尝试读取it后尝试将audioinput源设置为VOICE_CALL,但应用程序崩溃了。

最后,我发现了这个link。我想知道是否有任何cordova插件可以做到这一点?有没有办法使用Ionic 2录制蓝牙耳机麦克风的音频?

提前致谢

答案

没有为此目的而知道的cordova包装纸。您可以做的是直接通过AT命令控制设备。基本上,如果你遵循这个文档,Android会做什么:

https://developer.android.com/reference/android/bluetooth/BluetoothHeadset.html

通过串行通信向耳机发送AT命令。您可以使用https://github.com/don/BluetoothSerial从蓝牙耳机发送和读取RAW缓冲区。例如,你可以发送一个AT命令,它将启动耳机上的麦克风录音,然后从收到的缓冲区中获取RAW音频,然后在其他库的帮助下将RAW数据转换为mp3。

如果您想了解更多关于蓝牙串行通信的信息,特别是AT命令:http://www.spezial.cz/pdf/Serial_Port_Adapter_AT_Commands.pdf

以上是关于Ionic 2 - 用蓝牙耳机录音的主要内容,如果未能解决你的问题,请参考以下文章

录音时候音频的外放

ios 内置麦克风录音只有一个声道声音

Ionic - 如何检查蓝牙状态变化

使用蓝牙耳机在奥利奥录音问题

贴吧语音贴不能用蓝牙耳机吗

Python中的录音