0

我正在尝试在我的应用程序中执行一个功能来记录录音,然后在获得录音后进行一些声音分析。

我想使用 MediaRecorder 库,因为我需要声音文件,它似乎是一个更简单的选择。

但是,我似乎无法根据http://developer.android.com/reference/android/media/MediaRecorder.html开始录制。编辑:感谢@faz15,我可以录制音频而不会崩溃。但是,我无法停止录制,因此无法获取声音片段。我的代码如下:

package helloworld.app;


import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.support.v4.app.NavUtils;


import java.io.File;
import java.io.IOException;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.widget.Button;


public class StartRecording extends Activity {
    final AudioRecorder recorder = new AudioRecorder("/audiometer/temp"); 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.start_recording);
        //startRecording();
        try {
            recorder.start();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
    }
    public void stopRecording(View view) {
        try {
            recorder.stop();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        Intent intent = new Intent(this, next_page.class);
        startActivity(intent);
    }
}
4

3 回答 3

1

您是否在 Android 清单中添加了适当的权限?

于 2012-08-03T08:33:18.077 回答
0

以防万一,在

android.permission.RECORD_AUDIO

也许您的虚拟设备需要音频录制和播放支持?编辑您的 AVD,并将其添加到硬件中。

于 2012-08-03T08:34:45.237 回答
0

我不确定您所说的“您无法停止录制”是什么意思。

但是,如果它对任何人有帮助,则recorder.release()应该在之后调用,stop()并且如果您完成了该对象,则必须将记录器设置为 null。

于 2016-04-01T03:06:45.933 回答