2012-08-09 69 views
2

我还是在Android设备上编程的新手。我目前正在制作一个允许你玩鼓的应用。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

如果你的样品是PCM,你可以简单的写混合样品以您把它们写到AudioTrack同一时间的文件。

如果他们被压缩(aac,mp3,...),您可能需要在您的应用中对它们进行解码,然后执行与第一段中描述的相同的操作。

目前没有任何方法可以从输出设备进行录制,除了您已经尝试过的方法。