Mulai Menggunakan
Copy prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
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.
Instalasi
Bagian berjudul “Instalasi”Kamu bisa menggunakan Setup Bantuan AI untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI kamu menggunakan perintah berikut:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLalu gunakan prompt berikut:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-recorder` plugin in my project.Jika kamu lebih suka Setup Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:
bun add @capgo/capacitor-audio-recorderbunx cap syncImport
Judul Bagian: “Impor”import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';API Ringkasan
Judul Bagian: “API Ringkasan”startRecording
Judul Bagian: “Mulai Rekaman”Mulai merekam suara menggunakan mikrofon perangkat.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
Judul Bagian: “Paus Rekaman”Paus rekaman yang sedang berlangsung. Hanya tersedia pada Android (API 24+), iOS, dan Web.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.pauseRecording();resumeRecording
Judul Bagian: “Lanjutkan Rekaman”Lanjutkan rekaman yang sebelumnya dihentikan.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();stopRecording
Bab berjudul “stopRecording”Hentikan rekaman saat ini dan simpan audio yang direkam.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.stopRecording();console.log(result);cancelRecording
Bab berjudul “cancelRecording”Batalkan rekaman saat ini dan buang audio yang telah direkam.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.cancelRecording();getRecordingStatus
Bab berjudul “getRecordingStatus”Peroleh status rekaman saat ini.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.getRecordingStatus();console.log(result);getCurrentAmplitude
Bab berjudul “getCurrentAmplitude”Peroleh tingkat amplitude masukan saat ini (tingkat mikrofon) sebagai nilai normalisasi. [0, 1] Rangkaian.
Untuk menggerakkan visualisasi hidup seperti meter VU atau gelombang
sambil merekam. Mengembalikan 0 ketika tidak ada rekaman aktif. Dirancang untuk
polling UI-rate — interval 60–100 ms adalah titik awal yang baik untuk gelombang. Hindari memanggilnya dalam loop yang ketat; setiap panggilan menyeberangi
bridge JS/native.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.getCurrentAmplitude();console.log(result);checkPermissions
Bab berjudul “checkPermissions”Mengembalikan status izin saat ini untuk mengakses mikrofon.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.checkPermissions();console.log(result);requestPermissions
Bab berjudul “requestPermissions”Minta izin untuk mengakses mikrofon.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.requestPermissions();console.log(result);Tipe Referensi
Bab berjudul “Tipe Referensi”StartRecordingOptions
Judul Bagian: “Pilihan Mulai Merekam”Opsi yang diterima oleh .
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
Judul Bagian: “Hasil Berhenti Merekam”Hasil yang dikembalikan oleh .
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
Judul Bagian: “Hasil Status Merekam”Hasil yang dikembalikan oleh .
export interface GetRecordingStatusResult { /** * The current recording status. * * @since 1.0.0 */ status: RecordingStatus;}GetCurrentAmplitudeResult
Judul Bagian: “Hasil Amplitudo Sekarang”Hasil yang dikembalikan oleh .
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
Section titled “PermissionStatus”Informasi izin yang dikembalikan oleh dan .
export interface PermissionStatus { /** * The permission state for audio recording. * * @since 1.0.0 */ recordAudio: PermissionState;}RecordingErrorEvent
Bab berjudul “Event Error Perekaman”Event yang dipancarkan ketika terjadi kesalahan selama perekaman.
export interface RecordingErrorEvent { /** * The error message. * * @since 1.0.0 */ message: string;}RecordingStoppedEvent
Bab berjudul “Event Perekaman Berhenti”Event yang dipancarkan ketika perekaman selesai.
export type RecordingStoppedEvent = StopRecordingResult;AudioSessionCategoryOption
Bab berjudul “Opsi Kategori Sesi Audio”Opsi kategori sesi audio yang tersedia di 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
Judul Bagian “AudioSessionMode”Mode sesi audio yang tersedia di iOS.
export enum AudioSessionMode { Default = 'DEFAULT', GameChat = 'GAME_CHAT', Measurement = 'MEASUREMENT', SpokenAudio = 'SPOKEN_AUDIO', VideoChat = 'VIDEO_CHAT', VideoRecording = 'VIDEO_RECORDING', VoiceChat = 'VOICE_CHAT',}RecordingStatus
Judul Bagian “RecordingStatus”Status rekaman.
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
Judul Bagian “PermissionState”Status izin yang didukung oleh Capacitor.
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';Sumber Kebenaran
Judul Bagian “Sumber Kebenaran”Halaman ini dihasilkan dari plugin’s src/definitions.ts. Re-run the sync ketika API publik berubah di atas.
Teruskan dari Getting Started
Judul Bagian: Teruskan dari Getting StartedJika Anda menggunakan Mulai Menggunakan untuk merencanakan perilaku media dan interface native, hubungkannya dengan Menggunakan @capgo/capacitor-rekam-suara untuk kemampuan native di Menggunakan @capgo/capacitor-rekam-suara, Menggunakan @capgo/capacitor-aktivitas-hidup untuk kemampuan native di Menggunakan @capgo/capacitor-aktivitas-hidup, @capgo/capacitor-aktivitas-hidup untuk detail implementasi di @capgo/capacitor-aktivitas-hidup, Memanfaatkan @capgo/capacitor-player video untuk kemampuan asli dalam Memanfaatkan @capgo/capacitor-player video, dan @capgo/capacitor-player video untuk detail implementasi dalam @capgo/capacitor-player video.