Android AudioRecord qué ajustes grabar llamada

Utilizo la clase AudioRecord para grabar la voz durante una llamada.

Estoy interesado en grabar solo la voz de la persona que posee el teléfono (desde el micrófono). Durante la grabación, me gustaría hacer un poco de procesamiento de audio, pero este es un tema fuera de lugar por ahora.

Android tiene las siguientes opciones de fuentes de audio:

MediaRecorder.AudioSource.VOICE_CALLMediaRecorder.AudioSource.MICMediaRecorder.AudioSource.VOICE_UPLINKMediaRecorder.AudioSource.VOICE_DOWNLINK

¿Puedes explicar cuales son las diferencias entre ellos? Ok, MIC es obvio pero VOICE_CALL vs VOICE_UPLINK vs VOICE_DOWNLINK?

También debería elegir una frecuencia de muestreo (8000Hz, 16000Hz, 2250Hz, 44100Hz). ¿Puede decirme qué frecuencia de muestreo elegir y por qué?

Para el formato de audio, elegí AudioFormat.ENCODING_PCM_16BIT pero también tiene: - AudioFormat.ENCODING_DEFAULT - AudioFormat.ENCODING_INVALID - AudioFormat.ENCODING_PCM_8BIT

Finalmente, ¿cuántos canales debo usar y por qué? (AudioFormat.CHANNEL_IN_STEREO o AudioFormat.CHANNEL_IN_MONO)

Respuestas a la pregunta(3)

Su respuesta a la pregunta