问题
In my application playing music, the user should say at this time into the microphone. Can you please tell me how to make a record? Music and top path from the microphone. I looked through MediaRecorder, but there is not, in my opinion, an appropriate recording source.
回答1:
For Recording Through Mic
Start and stop recording through Mic....
Start Recording
static MediaRecorder recorder = new MediaRecorder();
static String path, filename, time;
static int duration;
public void startRecording() {
try {
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.RAW_AMR);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
System.currentTimeMillis();
filename = ListenCallState.number + "_" + time + ".amr";
File f = new File(getBaseURL());
f.mkdirs();
path = getBaseURL() + filename;
recorder.setOutputFile(path);
recorder.prepare();
recorder.start();
} catch (Exception {
}
}
Stop Recording
public static void stopRecording() {
recorder.stop();
recorder.release();
try {
MediaPlayer p = new MediaPlayer();
p.setDataSource(path);
p.prepare();
duration = p.getDuration();
} catch (Exception e) {
}
}
来源:https://stackoverflow.com/questions/39292272/android-how-to-record-the-microphone-over-audio-stream