源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

android AudioRecorder简单心得分享

  • 时间:2020-12-20 20:27 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:android AudioRecorder简单心得分享
1.如何创建一个有效的AudioRecorder实例 Android各种设备的采样频率不同,输入的声道数也不同,如果采用固定的采样频率和声道数,那么得到的AudioRecorder不一定能够正常初始化。 为了正常使用,需要尝试各种不同的参数,得到在此设备上可以用的AudioRecorder实例。代码如下:
[u]复制代码[/u] 代码如下:
private void createAudioRecord() {              for (int sampleRate : new int[]{44100, 8000, 11025, 16000, 22050, 32000,               47250, 48000}) {           for (short audioFormat : new short[]{                   AudioFormat.ENCODING_PCM_16BIT,                   AudioFormat.ENCODING_PCM_8BIT}) {               for (short channelConfig : new short[]{                       AudioFormat.CHANNEL_IN_MONO,                       AudioFormat.CHANNEL_IN_STEREO}) {                   // Try to initialize                   try {                       recBufSize = AudioRecord.getMinBufferSize(sampleRate,                               channelConfig, audioFormat);                       if (recBufSize < 0) {                           continue;                       }                       audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC,                               sampleRate, channelConfig, audioFormat,                               recBufSize * 2);                       if (audioRecord.getState() == AudioRecord.STATE_INITIALIZED) {                           return;                       }                       audioRecord.release();                       audioRecord = null;                   } catch (Exception e) {                       // Do nothing                   }               }           }       }       throw new IllegalStateException(               "getInstance() failed : no suitable audio configurations on this device.");   }
2.常见错误 1.有些设备上面,即使你得到了有效的AudioRecorder实例,在audioRecord.startRecording()的时候还会报ERROR_BAD_VALUE错误。 这有可能是你使用了AudioManager而没有释放导致的。 其他错误都可以在网络上找到答案。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部