Para grabar y monitorear: Puede usar la actividad del grabador de sonido. He aquí un fragmento de código:
Intent recordIntent = new Intent(
MediaStore.Audio.Media.RECORD_SOUND_ACTION);
startActivityForResult(recordIntent, REQUEST_CODE_RECORD);
Para un ejemplo de trabajo perfecto de cómo grabar audio que incluye un monitor de entrada, descarga el proyecto Ringdroid de código abierto: https://github.com/google/ringdroid
mirada a las capturas de pantalla y se le mira el monitor
Para hacer que el audio sea de mayor calidad, necesitaría un micrófono mejor. El micrófono incorporado solo puede capturar tanto (lo cual no es tan bueno). De nuevo, mira el proyecto ringdroid, busca información de allí. En ese momento podría implementar algunas rutinas de normalización y amplificación para mejorar el sonido.
¿cuál es el REQUEST_CODE_RECORD? –
Constante local que utilizo para determinar qué resultado obtengo de la solicitud en onActivityResult(). –