Saltar al contenido

@capgo/capacitor-audio-recorder

Graba clips de voz en iOS, Android y web con pausa, medidores de nivel y salida de archivos nativa.

Incluido en el plugin 8.4.0 (PR de implementación). startRecording acepta format?: 'm4a' | 'aac' en Android e iOS. El valor predeterminado 'm4a' no cambia para las aplicaciones existentes.

Elige 'aac' cuando una grabación debe sobrevivir a un crash, cierre forzado, batería baja o un proceso terminado. mediaserver ADTS escribe frames AAC autocontenidos en un .aac archivo, por lo que la reproducción funciona hasta el último frame completo incluso si stopRecording nunca se ejecuta. 'm4a' sigue siendo adecuado cuando necesitas un contenedor MPEG-4 estándar y siempre obtienes una parada limpia.

En iOS, las interrupciones de 'aac' los segmentos se unen al detener la grabación copiando tramas ADTS completas, sin recodificar ni AVAssetExportSession. Si la unión falla, stopRecording aún puede resolverse con mergeFailed y segments para que puedas recuperarlo manualmente.

Ver Grabación a prueba de fallos (format: 'aac') for when to opt in, tradeoffs, and platform specific stopRecording comportamiento.

Usa @capgo/capacitor-audio-recorder cuando tu app de Capacitor necesita capturar audio del micrófono sin añadir un módulo nativo aparte por plataforma. Inicia y detén clips, pausa a mitad de grabación, consulta el nivel de entrada para formas de onda y escucha errores de grabación mientras los usuarios pasan entre primer y segundo plano (con los permisos nativos adecuados).

Casos de uso típicos: notas de voz, mensajes de audio en la app, notas de campo, grabación de podcasts ligera y funciones basadas en voz que deben funcionar en el WebView móvil y en navegadores móviles.

PlataformaSoporteNotas
iOSSícaptura con AVFoundation, opcional resetToPlaybackOnStop para evitar que el audio suene bajo tras grabar
AndroidSíMediaRecorder, pausa o reanuda en API 24+
WebSíNavegador MediaRecorder, stopRecording devuelve un Blob en lugar de un URI de archivo
  • startRecording - Empieza a grabar audio con el micrófono del dispositivo. Opcional format: 'm4a' | 'aac' en Android e iOS para una salida ADTS tolerante a fallos.
  • pauseRecording - Pausa la grabación en curso. Solo disponible en Android (API 24+), iOS y Web.
  • resumeRecording - Reanuda una grabación pausada previamente.
  • stopRecording - Detiene la grabación actual y guarda el audio grabado.
MétodoDescripción
startRecordingInicia la grabación de audio con el micrófono del dispositivo.
pauseRecordingPausa la grabación en curso. Solo disponible en Android (API 24+), iOS y Web.
resumeRecordingReanuda una grabación pausada anteriormente.
stopRecordingDetiene la grabación actual y guarda el audio grabado.
cancelRecordingCancela la grabación actual y descarta cualquier audio capturado.
getRecordingStatusObtiene el estado actual de la grabación.
getCurrentAmplitudeObtiene la amplitud de entrada actual (nivel del micrófono) como un número normalizado en el [0, 1] rango.
checkPermissionsDevuelve el estado actual del permiso de acceso al micrófono.
requestPermissionsSolicita permiso para acceder al micrófono.
addListenerEscucha errores de grabación.
addListenerEscucha eventos de pausa emitidos cuando una grabación se pausa.
addListenerEscucha eventos de finalización de grabación.
removeAllListenersElimina todos los listeners registrados.
getPluginVersionObtén la versión del plugin nativo Capacitor.

Esta referencia se sincroniza desde src/definitions.ts en capacitor-audio-recorder.

Si estás usando @capgo/capacitor-audio-recorder para planificar el comportamiento de los medios nativos y la interfaz, conéctalo con Uso de @capgo/capacitor-audio-recorder para la funcionalidad nativa en Uso de @capgo/capacitor-audio-recorder, Uso de @capgo/capacitor-live-activities para la capacidad nativa en Uso de @capgo/capacitor-live-activities, @capgo/capacitor-live-activities para los detalles de implementación en @capgo/capacitor-live-activities, Uso de @capgo/capacitor-video-player para la capacidad nativa en Uso de @capgo/capacitor-video-player, y @capgo/capacitor-video-player para el detalle de implementación en @capgo/capacitor-video-player.