1. Introducción a MediaRecorder
MediaRecorder es una API en Android que se puede utilizar para implementar la función de grabación. Hereda de la clase android.media.MediaRecorder y puede realizar grabaciones de audio y video.
2. Uso de MediaRecorder
1. Primero, cree una instancia de un objeto MediaRecorder y configure la fuente de audio:
val recorder = MediaRecorder()
recorder.setAudioSource(MediaRecorder.AudioSource.MIC)
2. Configure el formato de salida de audio:
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP)
3. Configure el formato de codificación de audio:
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB)
4. Establezca la ruta del archivo de grabación:
var path=""
var fileName = "${DateFormat.format("yyyyMMdd_HHmmss", Calendar.getInstance(Locale.CHINA))}.m4a"
var audioSaveDir=filesDir.absolutePath
path="$audioSaveDir$fileName"
recorder.setOutputFile(path);
5. Prepárese para grabar:
recorder.prepare()
6. Comience a grabar:
recorder.start()
7. Detener la grabación:
recorder.stop()
8. Liberar recursos:
recorder.release()
3. Ventajas y desventajas de MediaRecorder
MediaRecorder puede grabar audio y video, puede configurar diferentes formatos de salida, puede configurar diferentes formatos de codificación, también puede configurar diferentes volúmenes, puede configurar diferentes rutas de archivos de grabación, etc.
Sin embargo, MediaRecorder también tiene algunas deficiencias, como que solo puede grabar audio y video, pero no imágenes; los pasos de implementación no son lo suficientemente simples, la ruta del archivo de grabación también debe configurarse de antemano y no se puede configurar dinámicamente, y Su efecto de grabación no es muy bueno.