我正在关注this文章以捕获Android上的音频。我觉得这很容易,但是有问题。这是代码:
File dir = activity.getDir("recordings", Context.MODE_PRIVATE);
File file = new File(dir, "testaudio.mpeg4");
FileUtil fileUtil = new FileUtil();
File parent = file.getParentFile();
if(!parent.exists()){
Log.i(TAG, "Creating non-existent path:" + parent.getAbsolutePath());
parent.mkdirs();
}
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
try{
recorder.setOutputFile(file.getAbsolutePath());
recorder.prepare();
recorder.start();
}catch(IOException e){
//more code
}
因此,它确实在/data/data/com.myapp/app_recordings/文件夹下创建了一个testaudio.mpeg4文件。但是,在将文件传输到Mac(使用adb pull)后,它无法播放。我在Mac上,我尝试了一些音频格式(例如MP3,MPEG,3GP等),但似乎没有任何工作。任何帮助/指导将不胜感激。
答案 0 :(得分:0)
使用此
File dir = new File(Environment
.getExternalStorageDirectory().getAbsolutePath() + "/recording/");
答案 1 :(得分:0)
这似乎是Mac问题,代码或设备没有任何问题。我可以听到设备上的音频。