Android记录内部设备声音

时间:2012-08-09 09:37:09

标签: java android audio record mediarecorder

我还是Android设备编程新手。我正在制作一个允许你演奏鼓的应用程序。

我想录制用户播放的声音。

我用这种方式录制声音:

recorder = new MediaRecorder();
        recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
        recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
        recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
        recorder.setOutputFile(audiofile.getAbsolutePath());
        recorder.prepare();
        recorder.start();

在阅读文档并在SO和其他网站上搜索后,我发现我的审讯一无所获。实际上,我可以录制声音并将其存储在内存中,但它使用设备的外部麦克风(因此存在干扰,当耳机插入时,我什么也听不见)。

有没有办法记录设备的内部声音?

谢谢

1 个答案:

答案 0 :(得分:2)

如果您的样本是PCM,您可以在将它们写入AudioTrack的同时将混合样本简单地写入文件。

如果它们被压缩(aac,mp3,...),你可能需要在你的应用程序中解码它们,然后执行我在第一段中描述的相同内容。

除了你已经尝试过的方法之外,目前无法从输出设备录制。