Android音频捕获
我在下面的文章中捕捉Android上的音频。我以为这很容易,但有个问题。代码如下:Android音频捕获,android,audio,media,audio-recording,Android,Audio,Media,Audio Recording,我在下面的文章中捕捉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(!
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等),但似乎都不起作用。任何帮助/指导都将不胜感激。请使用此功能
File dir = new File(Environment
.getExternalStorageDirectory().getAbsolutePath() + "/recording/");
这似乎是Mac的问题,代码或设备没有问题。我可以听到设备上的音频。但是,我不想写入外部存储器。activity.getDir(“recordings”,Context.MODE_PRIVATE)允许我私下向应用程序写入内容。