2012-05-14 85 views
0

我正在开发Android中的音频捕捉。我刚才提到Android:录制音频 - 停止录制后获取结果

How to Make custome record view Meter?

这里走出来的媒体后,我可以得到结果。但是我想要停止记录后的结果。有没有任何选择?

我的代码:

MediaRecorder recorder; 
    public static int RECORD_REOUEST = 0; 


@Override 

    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     Intent intt = new Intent(Media.RECORD_SOUND_ACTION); 
     startActivityForResult(intt, RECORD_REOUEST); 
    } 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
    if (resultCode == RESULT_OK && requestCode == RECORD_REOUEST) 
    { 
     Uri recordedAudioPath = data.getData();   
    } 
} 

注:问题仅与设备。

回答

0

可以使用android.media.MediaRecorder由具有启动(做到这一点)和stop()方法

import android.media.MediaRecorder; 
final MediaRecorder recorder = new MediaRecorder(); 

public void start() { 
    recorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
    recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
    recorder.setOutputFile(path); 
    recorder.prepare(); 
    recorder.start(); 
} 
    public void stop() { 
    recorder.stop(); 
    recorder.release(); 
} 

看看这个类似的帖子Stackoverflow Record Audio一个完整的例子。它会将录制内容保存到停止录制时可以达到的外部存储设备。

+0

感谢您的回复。我想在OnActivityResult方法中得到结果。 – Ponmalar

+0

嗯没关系。当你按下“完成”时,OnActivityResult被触发并且路径被保存在Uri recordingAudioPath中。你想要完成什么?你有正确的路径:“content:// media/external/audio/media/...”,当你从Intent返回(“android.provider.MediaStore.RECORD_SOUND”)时可以使用路径。 – Priebe

+0

请检查我的编辑代码,录制后没有任何选项,如“完成”。 – Ponmalar