展会信息港展会大全

如何使用音频传感器进行录音
来源:互联网   发布日期:2016-01-14 11:34:02   浏览:1401次  

导读:MediaRecorder mrec ; File audiofile = null; private void startRecording() throws IOException { mrec.setAudioSource(MediaRecorder.AudioSource.MIC); mrec.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); mrec.setAudioEncoder(MediaRecord...

MediaRecorder mrec ;

File audiofile = null;

private void startRecording() throws IOException

{

mrec.setAudioSource(MediaRecorder.AudioSource.MIC);

mrec.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);

mrec.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

if (audiofile == null)

{

File sampleDir = Environment.getExternalStorageDirectory();

try

{

audiofile = File.createTempFile("ibm", ".3gp", sampleDir);

}

catch (IOException e)

{

e.printStackTrace();

return;

}

}

mrec.setOutputFile(audiofile.getAbsolutePath());

mrec.prepare();

mrec.start();

}

private void stopRecording()

{

mrec.stop();

mrec.release();

processAudioFile();

}

//设置处理音频文件

private void processAudioFile()

{

ContentValues values = new ContentValues(3);

long current = System.currentTimeMillis();

values.put(MediaStore.Audio.Media.TITLE, "audio" + audiofile.getName());

values.put(MediaStore.Audio.Media.DATE_ADDED, (int) (current / 1000));

values.put(MediaStore.Audio.Media.MIME_TYPE, "audio/3gpp");

values.put(MediaStore.Audio.Media.DATA, audiofile.getAbsolutePath());

ContentResolver contentResolver = getContentResolver();

Uri base = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;

Uri newUri = contentResolver.insert(base, values);

sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, newUri));

}

赞助本站

人工智能实验室

相关热词: android开发 android教程

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港