Inizia a utilizzare
Copia una riga di installazione con i passaggi e la guida markdown completa per questo 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.
bun add @capgo/capacitor-audio-recorderbunx cap syncimport { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';API Panoramica
Sezione intitolata āAPI PanoramicaāstartRecording
Sezione intitolata āstartRecordingāInizia a registrare l'audio utilizzando il microfono del dispositivo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
Sezione intitolata āpauseRecordingāInterrompi la registrazione in corso. Disponibile solo su Android (API 24+), iOS e Web.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.pauseRecording();resumeRecording
Sezione intitolata āripristinaRegistrazioneāRipristina una registrazione precedentemente sospesa.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();stopRecording
Sezione intitolata āfermaRegistrazioneāFerma la registrazione corrente e persista lāaudio registrato.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.stopRecording();cancelRecording
Sezione intitolata āannullaRegistrazioneāAnnulla la registrazione corrente e scarta qualsiasi audio catturato.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.cancelRecording();getRecordingStatus
Sezione intitolata āottieneStatoRegistrazioneāRecupera lo stato di registrazione corrente.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getRecordingStatus();getCurrentAmplitude
Sezione intitolata āgetCurrentAmplitudeāRecupera l'attuale ampiezza dell'input (livello del microfono) come un numero normalizzato
in il [0, 1] range.
Destinato per guidare visualizzazioni live come i metri VU o le onde
mentre si registra. Restituisce 0 quando non ĆØ attiva alcuna registrazione. Progettato per
la polling UI-rate ā un intervallo di 60ā100 ms ĆØ un buon punto di partenza per una
onda. Evita di chiamarlo in un loop stretto; ogni chiamata attraversa il
bridge JS/nativo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getCurrentAmplitude();checkPermissions
Sezione intitolata ācheckPermissionsāRestituisce lo stato di autorizzazione corrente per accedere al microfono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.checkPermissions();requestPermissions
Sezione intitolata ārequestPermissionsāRichiedi l'autorizzazione per accedere al microfono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.requestPermissions();Riferimento ai tipi
Sezione intitolata āRiferimento ai tipiāStartRecordingOptions
Sezione intitolata āStartRecordingOptionsāOpzioni accettate da .
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
Sezione intitolata āStopRecordingResultāRisultato restituito da .
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
Sezione intitolata āGetRecordingStatusResultāRisultato restituito da .
export interface GetRecordingStatusResult { /** * The current recording status. * * @since 1.0.0 */ status: RecordingStatus;}GetCurrentAmplitudeResult
Sezione intitolata āGetCurrentAmplitudeResultāRisultato restituito da .
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
Sezione intitolata āPermissionStatusāInformazioni sulla autorizzazione restituite da e .
export interface PermissionStatus { /** * The permission state for audio recording. * * @since 1.0.0 */ recordAudio: PermissionState;}RecordingErrorEvent
Sezione intitolata āRecordingErrorEventāEvento emesso quando si verifica un errore durante la registrazione.
export interface RecordingErrorEvent { /** * The error message. * * @since 1.0.0 */ message: string;}RecordingStoppedEvent
Sezione intitolata āRecordingStoppedEventāEvento emesso quando una registrazione si conclude.
export type RecordingStoppedEvent = StopRecordingResult;AudioSessionCategoryOption
Sezione intitolata āAudioSessionCategoryOptionāOpzioni di categoria di sessione audio disponibili su 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
Sezione intitolata āModalitĆ di sessione audioāModalitĆ di sessione audio disponibili su iOS.
export enum AudioSessionMode { Default = 'DEFAULT', GameChat = 'GAME_CHAT', Measurement = 'MEASUREMENT', SpokenAudio = 'SPOKEN_AUDIO', VideoChat = 'VIDEO_CHAT', VideoRecording = 'VIDEO_RECORDING', VoiceChat = 'VOICE_CHAT',}RecordingStatus
Sezione intitolata āStato di registrazioneāLo stato di registrazione.
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
Sezione intitolata āStato di autorizzazioneāStati di autorizzazione supportati da Capacitor.
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';Fonte di veritĆ
Sezione intitolata āFonte di VeritĆ āQuesta pagina ĆØ generata dal pluginās src/definitions.tsRiepilogo: quando il pubblico API cambia in modo significativo, ĆØ necessario riepilogare la sincronizzazione.