Ionic 2 - 用蓝牙耳机录音

问题描述 投票:4回答:1

我正在开发一个旨在使用蓝牙耳机麦克风录制语音的应用程序。我在这个环境中使用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 bluetooth ionic2 cordova-plugins microphone
1个回答
3
投票

没有为此目的而知道的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

© www.soinside.com 2019 - 2024. All rights reserved.