Zum Inhalt springen

Getting Started

GitHub

Sie können unsere AI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie die Capgo Fähigkeiten Ihrem AI-Tool mit folgender Befehl hinzu:

Terminal-Fenster
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Verwenden Sie dann den folgenden Prompt:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-recorder` plugin in my project.

Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und die darunter angegebenen Plattform-spezifischen Anweisungen befolgen.

Terminal-Fenster
bun add @capgo/capacitor-audio-recorder
bunx cap sync
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';

Mit dem Gerätemikrofon Audio aufnehmen.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();

Pausieren Sie die laufende Aufnahme. Nur auf Android (API 24+), iOS und Web verfügbar.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.pauseRecording();

Eine vorherige Aufnahme fortsetzen.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();

Beende die aktuelle Aufnahme und speichere die aufgenommene Audio-Datei.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.stopRecording();
console.log(result);

Breche die aktuelle Aufnahme ab und verwerfe alle aufgenommenen Audio-Daten.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.cancelRecording();

Abrufe den aktuellen Aufnahmezustand.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.getRecordingStatus();
console.log(result);

getCurrentAmplitude

Aktuelle Amplitude abrufen

Ermitteln Sie die aktuelle Eingabeamplitude (Mikrofonlevel) als normalisiertes Zahl in der [0, 1] Bereich.

Für die Steuerung von Echtzeit-Visualisierungen wie VU-Meter oder Wellenformen während des Aufzeichnens. Gibt zurück 0 keine Aufzeichnung aktiv ist. Entworfen für UI-Polling — ein 60–100 ms-Interval ist ein guter Ausgangspunkt für eine Wellenform. Vermeide es, es in einem engen Schleifen aufzurufen; jeder Aufruf überschreitet den JS/Native-Bridge.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.getCurrentAmplitude();
console.log(result);

Die aktuelle Berechtigungsstellung für den Zugriff auf das Mikrofon zurückgeben.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.checkPermissions();
console.log(result);

Anfrage zur Erlaubnis zum Zugriff auf das Mikrofon stellen.

import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.requestPermissions();
console.log(result);

Optionen, die von . akzeptiert werden

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;
}

Ergibt, was von . zurückgegeben wird

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;
}

Ergibt, was von . zurückgegeben wird

export interface GetRecordingStatusResult {
/**
* The current recording status.
*
* @since 1.0.0
*/
status: RecordingStatus;
}

GetCurrentAmplitudeResult

Aktuelle Amplitudenwert-Ergebnis

Ergibt, was von . zurückgegeben wird

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;
}

Zugriffsinformationen, die von und zurückgegeben werden.

export interface PermissionStatus {
/**
* The permission state for audio recording.
*
* @since 1.0.0
*/
recordAudio: PermissionState;
}

Ereignis, das ausgelöst wird, wenn während der Aufnahme ein Fehler auftritt.

export interface RecordingErrorEvent {
/**
* The error message.
*
* @since 1.0.0
*/
message: string;
}

Event emitted when a recording completes.

export type RecordingStoppedEvent = StopRecordingResult;

Audio-Sitzungskategorioptionen, die auf iOS verfügbar sind.

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',
}

Audio-Modi verfügbar auf iOS.

export enum AudioSessionMode {
Default = 'DEFAULT',
GameChat = 'GAME_CHAT',
Measurement = 'MEASUREMENT',
SpokenAudio = 'SPOKEN_AUDIO',
VideoChat = 'VIDEO_CHAT',
VideoRecording = 'VIDEO_RECORDING',
VoiceChat = 'VOICE_CHAT',
}

Der Aufnahmestatus.

export enum RecordingStatus {
Inactive = 'INACTIVE',
Recording = 'RECORDING',
Paused = 'PAUSED',
}

Plattformzustände der Erlaubnis unterstützt von Capacitor.

export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';

Diese Seite wurde aus dem Plugin generiert. src/definitions.tsRe-run die Synchronisierung, wenn die öffentliche API upstream geändert wird.

Wenn Sie Getting Started verwenden Getting Started um native Medien- und Schnittstellenverhalten zu planen, verbinden Sie es mit Verwenden Sie @capgo/capacitor-Audio-Recorder zur Verwendung der native Fähigkeit in Verwenden Sie @capgo/capacitor-Audio-Recorder Verwenden Sie @capgo/capacitor-Live-Aktivitäten zur Verwendung der native Fähigkeit in Verwenden Sie @capgo/capacitor-Live-Aktivitäten @capgo/capacitor-Live-Aktivitäten zur Verwendung der Implementierungsdetails in @capgo/capacitor-Live-Aktivitäten Verwenden Sie @capgo/capacitor-Video-Player Für die native Fähigkeit in @capgo/capacitor-video-player und @capgo/capacitor-Video-Player Für die Implementierungsdetail in @capgo/capacitor-video-player.