蓝牙录音

// 录音

<span style="white-space:pre">	</span>private static int frequency = 16000;
<span style="white-space:pre">	</span>private static int channelConfiguration = AudioFormat.CHANNEL_IN_MONO;// 单声道
<span style="white-space:pre">	</span>private static int EncodingBitRate = AudioFormat.ENCODING_PCM_16BIT; // 音频数据格式:脉冲编码调制(PCM)每个样品16位
	public synchronized void startRecording() {

		isRecoder = true;
		mFileName = Environment.getExternalStorageDirectory().getAbsolutePath();

		if (mAudioManager == null) {
			
			mAudioManager = (AudioManager) this.context
					.getSystemService(Context.AUDIO_SERVICE);
		}
		if (audioRecord != null) {
			stopAudioRecord();
			

		}
		// // 获得文件保存路径。记得添加android.permission.WRITE_EXTERNAL_STORAGE权限

		mFileName += "/" + java.lang.System.currentTimeMillis() + ".wav";

		recBufSize = AudioRecord.getMinBufferSize(frequency,
				channelConfiguration, EncodingBitRate);

		audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, frequency,
				channelConfiguration, EncodingBitRate, recBufSize);

		if (Utils.isBlueToothHeadsetConnected()) {
			if (!mAudioManager.isBluetoothScoAvailableOffCall()) {
				Toast.makeText(context, "当前手机不支持蓝牙录音", 0).show();
				Log.e("Kavenir", "当前手机不支持蓝牙录音");
				return;
			} else {
				if (mAudioManager.isBluetoothScoOn()) {
					mAudioManager.setBluetoothScoOn(false);
					mAudioManager.stopBluetoothSco();
					Log.e("mRecorder", "关闭sco通道");
				}
				// 注册sco通道广播接收
				RegisterScoBlueToothBroadcast();
				// 启动SCO连接
				mAudioManager.startBluetoothSco();
			}

		} else {
			// audioRecord.startRecording();
			startAudioRecord()
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值