本例设备:
小米note3
MIUI 12.0.1
Android 9
相关词:回放、蓝牙、耳机、录音。
android中支持的音频输出设备类型:
AudioDeviceInfo[] devices = audoManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS);
AudioDeviceInfo info;
int type = info.getType();
0 TYPE_UNKNOWN 与未知或未初始化设备关联的设备类型
1 TYPE_BUILTIN_EARPIECE 所连接耳机扬声器的设备类型
2 TYPE_BUILTIN_SPEAKER 内置扬声器系统(即单声道扬声器或立体声扬声器)的设备类型
3 TYPE_WIRED_HEADSET 耳机的设备类型,它是耳机和麦克风的组合
4 TYPE_WIRED_HEADPHONES 一对有线耳机的设备类型
5 TYPE_LINE_ANALOG 模拟线路级连接的设备类型。
6 TYPE_LINE_DIGITAL 数字线路连接的设备类型(如SPDIF)
7 TYPE_BLUETOOTH_SCO 通常用于电话的蓝牙设备的设备类型。
8 TYPE_BLUETOOTH_A2DP 支持A2DP配置文件的蓝牙设备的设备类型。
9 TYPE_HDMI HDMI连接的设备类型。
10 TYPE_HDMI_ARC HDMI连接的音频返回通道的设备类型。
11 TYPE_USB_DEVICE USB音频设备的设备类型。
12 TYPE_USB_ACCESSORY 处于附件模式的USB音频设备的设备类型
13 TYPE_DOCK 与驳接关联的音频设备的设备类型
14 TYPE_FM 与通过FM传输音频信号有关的一种设备类型。
15 TYPE_BUILTIN_MIC 设备内置麦克风的设备类型。
16 TYPE_FM_TUNER 用于访问通过FM传输的音频内容的设备类型。
17 TYPE_TV_TUNER 用于访问通过电视调谐器系统传输的音频内容的设备类型。
18 TYPE_TELEPHONY 通过电话网络传输音频信号的一种设备类型。
19 TYPE_AUX_LINE 辅助线路电平连接器的设备类型。
20 TYPE_IP 通过IP连接的设备类型。
21 TYPE_BUS 一种类型无关(type-agnostic)的设备,用于与外部音频系统通信
22 TYPE_USB_HEADSET USB音频耳机的设备类型
23 TYPE_HEARING_AID 助听器的设备类型。
24 TYPE_SPEAKER_SAFE 描述内置在设备中的扬声器系统(即单声道扬声器或立体声扬声器)的一种设备类型,专门针对输出通知和警报之类的声音(即用户不一定能预料到的声音)进行调整。请注意,此物理音频设备可能与{TYPE_BUILTIN_SPEAKER}相同,但驱动方式不同,以安全适应不同的用例。
25 TYPE_REMOTE_SUBMIX 隐藏的系统api。hide、SystemApi,在Android框架内,在混音和系统应用程序之间重新路由音频的设备类型。通常是在使用{android.media.audiopolicy.audiopolicy}进行使用{android.media.audiopolicy.AudioMix#ROUTE_FLAG_RENDER}标志创建的混音时创建的。
通过AudioRecord录制,AudioTrack播放。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
audioRecord.startRecording(); while (!isDestroy) { byte[] buffer = new byte[bufferSize]; // 录制 int readCount = audioRecord.read(buffer, 0, bufferSize); if (playbackable) { // 使用手机Mic录制喇叭播放,会带有哨音。本例设为使用耳机。 if (readCount == AudioTrack.ERROR_INVALID_OPERATION || readCount == AudioTrack.ERROR_BAD_VALUE) { continue; } if (readCount != 0 && readCount != -1) { audioTrack.play(); audioTrack.write(buffer, 0, readCount); } } } audioRecord.stop(); audioRecord.release(); audioTrack.stop(); audioTrack.release(); |
git地址: https://gitee.com/vigiles/headsetplayback
- end
本文由崔维友 威格灵 cuiweiyou vigiles cuiweiyou 原创,转载请注明出处:http://www.gaohaiyan.com/2896.html
承接App定制、企业web站点、办公系统软件 设计开发,外包项目,毕设