Empezar
Copiar una solicitud de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-audio-recorder`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/audio-recorder/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Instalar
Sección titulada “Instalar”bun add @capgo/capacitor-audio-recorderbunx cap syncImportar
Sección titulada “Importar”import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';API Resumen
Sección titulada “API Resumen”startRecording
Sección titulada “startRecording”Grabar audio utilizando el micrófono del dispositivo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
Sección titulada “pauseRecording”Pausar la grabación en curso. Solo disponible en Android (API 24+), iOS y Web.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.pauseRecording();resumeRecording
Sección titulada “resumeRecording”Reanuda una grabación previamente pausada.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();stopRecording
Sección titulada “stopRecording”Detenga la grabación actual y persista el audio grabado.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.stopRecording();cancelRecording
Sección titulada “cancelRecording”Cancelar la grabación actual y descarte cualquier audio capturado.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.cancelRecording();getRecordingStatus
Sección titulada “getRecordingStatus”Recupere el estado de grabación actual.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getRecordingStatus();getCurrentAmplitude
Sección titulada “getCurrentAmplitude”Obtenga la amplitud de entrada actual (nivel del micrófono) como un número normalizado en el [0, 1] rango.
Intendido para impulsar visualizaciones en vivo como medidores de VU o formas de onda mientras se graba. Devuelve 0 cuando no hay grabación activa. Diseñado para la lectura de UI — un intervalo de 60–100 ms es un buen punto de partida para una forma de onda. Evite llamarlo en un bucle estrecho; cada llamada cruza el puente JS/nativo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getCurrentAmplitude();checkPermissions
Sección titulada “checkPermissions”Devuelva el estado de permiso actual para acceder al micrófono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.checkPermissions();requestPermissions
Sección titulada “requestPermissions”Solicite permiso para acceder al micrófono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.requestPermissions();Referencia de tipo
Sección titulada “Referencia de tipos”StartRecordingOptions
Sección titulada “Opciones de inicio de grabación”Opciones aceptadas por .
export interface StartRecordingOptions { /** * The audio session category options for recording. Only available on iOS. * * @since 1.0.0 */ audioSessionCategoryOptions?: AudioSessionCategoryOption[];
/** * The audio session mode for recording. Only available on iOS. * * @since 1.0.0 */ audioSessionMode?: AudioSessionMode;
/** * The audio bit rate in bytes per second. * Only available on Android and iOS. * * @since 1.0.0 */ bitRate?: number;
/** * The audio sample rate in Hz. * Only available on Android and iOS. * * @since 1.0.0 */ sampleRate?: number;}StopRecordingResult
Sección titulada “Resultado de detener grabación”Resultado devuelto por .
export interface StopRecordingResult { /** * The recorded audio as a Blob. Only available on Web. * * @since 1.0.0 */ blob?: Blob;
/** * The duration of the recording in milliseconds. * * @since 1.0.0 */ duration?: number;
/** * The URI pointing to the recorded file. Only available on Android and iOS. * * @since 1.0.0 */ uri?: string;}GetRecordingStatusResult
Sección titulada “Resultado de obtener estado de grabación”Resultado devuelto por .
export interface GetRecordingStatusResult { /** * The current recording status. * * @since 1.0.0 */ status: RecordingStatus;}GetCurrentAmplitudeResult
Sección titulada “Resultado de obtener amplitud actual”Resultado devuelto por .
export interface GetCurrentAmplitudeResult { /** * The current input amplitude normalized to the `[0, 1]` range, where `0` * represents silence and `1` represents the maximum level the platform can * report. The value is `0` when no recording is active. * * Note: the source signal differs between platforms — Android reports the * peak sample amplitude since the last call, iOS reports the average power * in dB converted to linear, and Web reports the RMS of the latest frame. * Consumers that need cross-platform parity may want to apply a * per-platform scaling curve. * * @since 8.1.0 */ value: number;}PermissionStatus
Sección titulada “Estado de permiso”Información de permiso devuelta por y .
export interface PermissionStatus { /** * The permission state for audio recording. * * @since 1.0.0 */ recordAudio: PermissionState;}RecordingErrorEvent
Sección titulada “Error de grabación de evento”Evento emitido cuando ocurre un error durante la grabación.
export interface RecordingErrorEvent { /** * The error message. * * @since 1.0.0 */ message: string;}RecordingStoppedEvent
Sección titulada “Evento de grabación detenida”Evento emitido cuando se completa una grabación.
export type RecordingStoppedEvent = StopRecordingResult;AudioSessionCategoryOption
Sección titulada “Opción de categoría de sesión de audio”Opciones de categoría de sesión de audio disponibles en iOS.
export enum AudioSessionCategoryOption { AllowAirPlay = 'ALLOW_AIR_PLAY', AllowBluetooth = 'ALLOW_BLUETOOTH', AllowBluetoothA2DP = 'ALLOW_BLUETOOTH_A2DP', DefaultToSpeaker = 'DEFAULT_TO_SPEAKER', DuckOthers = 'DUCK_OTHERS', InterruptSpokenAudioAndMixWithOthers = 'INTERRUPT_SPOKEN_AUDIO_AND_MIX_WITH_OTHERS', MixWithOthers = 'MIX_WITH_OTHERS', OverrideMutedMicrophoneInterruption = 'OVERRIDE_MUTED_MICROPHONE_INTERRUPTION',}AudioSessionMode
Sección titulada “Modo de sesión de audio”Modos de sesión de audio disponibles en iOS.
export enum AudioSessionMode { Default = 'DEFAULT', GameChat = 'GAME_CHAT', Measurement = 'MEASUREMENT', SpokenAudio = 'SPOKEN_AUDIO', VideoChat = 'VIDEO_CHAT', VideoRecording = 'VIDEO_RECORDING', VoiceChat = 'VOICE_CHAT',}RecordingStatus
Sección titulada “Estado de grabación”Estado de grabación.
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
Sección titulada “Estado de permiso”Estados de permiso de plataforma soportados por Capacitor.
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';Sección titulada “Fuente de Verdad”
Copiar a portapapelesEsta página se genera a partir del plugin’s src/definitions.ts. Re-ejecutar la sincronización cuando el API público cambie en la fuente.