是否可以在Android上访问/录制内部音频?

时间:2017-05-03 03:56:35

标签: android audio

我已经对此进行了一些研究,我发现的唯一答案只是将我引导到那些有点做的应用程序,并且总是会有一些问题,例如它只适用于三星手机等。没有什么真正与发展相关。我所说的内部音频是来自系统的音频,例如游戏产生的音频。 那么录制内部音频可能吗?如果是这样,我将如何实施呢? 感谢!!!

1 个答案:

答案 0 :(得分:0)

可以录制内部音频,类型..

Android's  API具有允许录制麦克风音频的MediaRecorder,因此如果内部音频足够响亮并且用户同意录制音频,那么这是可能的。但是没有直接的方法通过Android的API来做到这一点。以下是他们的一些示例code的片段,用于实现此目的。

    `private void startRecording() {

         mRecorder = new MediaRecorder();
         mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
         mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
         mRecorder.setOutputFile(mFileName);
         mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

         try {
            mRecorder.prepare();
         } catch (IOException e) {
           Log.e(LOG_TAG, "prepare() failed");
         }
         mRecorder.start();
     }`

Apple有他们的iPhone录音版本AVAudioRecorder。但是,默认情况下,至少没有内置音频用于捕获内部音频,至少在他们的API中。

录制音频的另一种方法是从应用程序本身找到声音文件。但是,我们不建议使用extracting the resources of an app,这很可能违反了您的用户协议。 APK基本上是Android中所有应用程序资源的zip文件。这些资源包括声音。例如,如你在问题中所说的那样“由游戏产生的音频”。

我希望这有帮助!