¿Cómo convertir la matriz de bytes de audio PCM de 16 bits en una matriz doble o flotante?

Estoy tratando de realizar Fast Fourier Transform en un archivo de audio de .3gpp. El archivo contiene una pequeña grabación de 5 segundos a 44100kHz desde el micrófono del teléfono.

Cada algoritmo de FFT de Java que puedo encontrar solo toma entradas dobles [], flotantes [] o complejas [], por razones obvias, pero estoy leyendo el archivo de audio en una matriz de bytes, por lo que estoy un poco confundido en cuanto a a donde voy desde aqui Lo único que pude encontrar es la respuesta a una pregunta anterior:

FFT de audio de Android para recuperar la magnitud de frecuencia específica mediante un registro de audio

Pero no estoy seguro de si este es el procedimiento correcto. ¿Alguien con alguna idea?

Respuestas a la pregunta(2)

Su respuesta a la pregunta