android– 使用Motorola Moto G(或Moto X)录制立体声音频

android– 使用Motorola Moto G(或Moto X)录制立体声音频,第1张

概述我希望有人可以帮我解决这个问题.前段时间我开发了一个应用程序,以便同时录制前置麦克风和后置麦克风在智能手机中捕获的声音.基本上,我做下一个这样的对象:AudioRecordaudioRecord=newAudioRecord(MediaRecorder.AudioSource.CAMCORDER,frequency,AudioFormat.CHANNEL_

我希望有人可以帮我解决这个问题.@H_419_1@

前段时间我开发了一个应用程序,以便同时录制前置麦克风和后置麦克风在智能手机中捕获的声音.基本上,我做下一个这样的对象:@H_419_1@

@H_419_1@

AudioRecord audioRecord = new AudioRecord(MediaRecorder.AudioSource.CAMCORDER, frequency, AudioFormat.CHANNEL_IN_STEREO, audio enCoding, buffer size);@H_419_1@

它适用于索尼Xperia Neo V,但不适用于摩托罗拉Moto G(或者我认为是Moto X).看一下我在CAMCORDER标志下看到的文档:@H_419_1@

@H_419_1@

Microphone audio source with same orIEntation as camera if available, the main device microphone otherwise.@H_419_1@

摩托罗拉Moto G没有相机麦克风,但顶部有一个(索尼Xperia后面有一个麦克风或相机麦克风).事实上,有了Moto G,我得到了两次相同的信号(由前麦克风捕获的信号)两次,这根据文档是正确的.@H_419_1@

有谁能够帮我?@H_419_1@

解决方法:@H_419_1@

我有同样的问题,我使用48000赫兹的采样率让它工作.我认为它可以工作,因为使用默认相机应用程序制作的视频录制工作立体声并具有此采样率.使用函数getMinBufferSize()时也必须考虑此频率.@H_419_1@

这是我的设置:@H_419_1@

@H_419_1@

private static final int RECORDER_BPP = 16;private static final int RECORDER_SAMPLERATE = 48000;private static final int RECORDER_CHANNELS = AudioFormat.CHANNEL_IN_STEREO;private static final int RECORDER_AUdio_ENCoding = AudioFormat.ENCoding_PCM_16BIT;

然后我创建AudioRecord对象:@H_419_1@

@H_419_1@

recorder = new AudioRecord(MediaRecorder.AudioSource.CAMCORDER,                                            RECORDER_SAMPLERATE, RECORDER_CHANNELS,RECORDER_AUdio_ENCoding, bufferSize);

我正在使用Moto G,安装了KitKat.@H_419_1@ 总结

以上是内存溢出为你收集整理的android – 使用Motorola Moto G(或Moto X)录制立体声音频全部内容,希望文章能够帮你解决android – 使用Motorola Moto G(或Moto X)录制立体声音频所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1117880.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存