Crear un archivo WAV a partir de datos PCM sin procesar con el SDK de Android

Estoy tratando de usar la clase AudioRecord para grabar un archivo WAV. El problema es que solo proporciona los datos PCM sin procesar, y si los escribo en un archivo, no hay información de encabezado, por lo que no se reproducirá en ningún reproductor multimedia. ¿Cómo puedo crear un archivo WAV a partir de estos datos sin procesar?

O, alternativamente, ¿hay alguna otra forma de grabar sonido en Android en un archivo WAV (o, alternativamente, MP3)?

Ah, y sé que MediaRecorder no se puede usar porque no admite formatos WAV o MP3.

Respuestas a la pregunta(2)

Su respuesta a la pregunta