https://developer.android.com/reference/android/media/audiofx/Visualizer

Visualizer

현재 재생중인 오디오를 시각화 하기 위해 제공되는 클래스

특징

AudioSessionId

Visualizer는 특정 오디오 세션ID를 받아 해당 오디오에 대해 시각화 할 수 있는 데이터를 제공함

MediaPlayer, ExoPlayer 또는 다른 오디오 세션 객체에서 ID를 가져올 수 있다.

오디오 데이터

현재 재생중인 오디오의 데이터를 캡처할 수 있음

  1. Waveform data

    오디오의 진폭을 시간축에 따라 표현한 데이터

    Visualizer의 onWaveFormDataCapture 에서 전달되는 ByteArray 는 시간 순으로 오디오 진폭이 -128에서 127 사이의 값

  2. FFT

    오디오 신호의 주파수 성분을 분석한 데이터 Visualizer의 onFftDataCapture에서 전달되는 ByteArray 는 주파수 별 진폭을 나타냄

메소드

getCaptureSize / setCaptureSize

캡처할 오디오 데이터의 크기를 설정

크기는 Visualizer.getCaptureSizeRange() 에서 얻을 수 있는 범위 내 이어야함.

enable / release

enable = true 일 시 데이터 캡처 시작