1
我打算在Android手機中獲取正在播放的歌曲 的解碼PCM數據。我們可以從應用程序層做到嗎? 同時,如果你們中的任何一個都可以建議我在java中使用一個音頻解碼器,那麼這將非常有幫助。獲取Android手機中當前正在播放的歌曲的PCM數據
問候 阿爾賓
我打算在Android手機中獲取正在播放的歌曲 的解碼PCM數據。我們可以從應用程序層做到嗎? 同時,如果你們中的任何一個都可以建議我在java中使用一個音頻解碼器,那麼這將非常有幫助。獲取Android手機中當前正在播放的歌曲的PCM數據
問候 阿爾賓
試試這個。它將幫助您獲取當前正在播放的歌曲的PCM數據:
mVisualizer = new Visualizer(mPlayer.getAudioSessionId());
mVisualizer.setCaptureSize(Visualizer.getCaptureSizeRange()[1]);
Visualizer.OnDataCaptureListener captureListener = new Visualizer.OnDataCaptureListener()
{
@Override
public void onWaveFormDataCapture(Visualizer visualizer, byte[] bytes,
int samplingRate)
{
//PCM DATA
}
@Override
public void onFftDataCapture(Visualizer visualizer, byte[] bytes,
int samplingRate)
{
}
};
mVisualizer.setDataCaptureListener(captureListener,
Visualizer.getMaxCaptureRate()/2, true, false);
// Enabled Visualizer and disable when we're done with the stream
mVisualizer.setEnabled(true);
mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener()
{
@Override
public void onCompletion(MediaPlayer mediaPlayer)
{
mVisualizer.setEnabled(false);
}
});