始め方
このプラグインのインストール手順とフルマークダウンガイドを含む設定の案をコピーします。
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.
インストール
インストールAI-Assisted セットアップを使用してプラグインをインストールすることができます。AI ツールに Capgo スキルを追加するには、以下のコマンドを実行してください。
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins次に、以下のプロンプトを使用してください。
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-recorder` plugin in my project.Manual Setup を使用する場合は、以下のコマンドを実行してプラグインをインストールし、以下のプラットフォーム固有の指示に従ってください。
bun add @capgo/capacitor-audio-recorderbunx cap syncインポート
インポートimport { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';API 概要
API というタイトルのセクションstartRecording
startRecording というタイトルのセクションデバイスマイクを使用してオーディオを記録します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
__CAPGO_KEEP_0__ というタイトルのセクションAndroid (API 24+)、iOS、Web でのみ利用可能な場合にのみ、進行中の記録を停止します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.pauseRecording();resumeRecording
__CAPGO_KEEP_0__ というタイトルのセクション前回の記録を再開します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();stopRecording
セクション「録音を停止」現在の録音を停止し、記録された音を保存します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.stopRecording();cancelRecording
セクション「録音をキャンセル」現在の録音をキャンセルし、キャプチャされた音を破棄します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.cancelRecording();getRecordingStatus
セクション「録音の状態を取得」現在の録音の状態を取得します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getRecordingStatus();getCurrentAmplitude
セクション「現在の振幅を取得」現在の入力振幅(マイクのレベル)を、指定された範囲内の正規化された数値として取得します。 [0, 1] クリップボードにコピー
録音中のライブビジュアライゼーション、VUメーターまたは波形などに使用することを意図しています。
レコーディングが行われていない場合に返します。
UIレートのポーリングに設計されています。
波形の場合、60-100msの間隔が良くてはなりません。
それを緊急ループで呼び出すのは避けるべきです。
それぞれの呼び出しはJSとネイティブの橋を渡ります。 0 __CAPGO_KEEP_0__
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getCurrentAmplitude();checkPermissions
セクション「checkPermissions」マイクへのアクセス権の現在の状態を返します。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.checkPermissions();requestPermissions
セクション「requestPermissions」マイクへのアクセス権を求めます。
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.requestPermissions();StartRecordingOptions
セクション「StartRecordingOptions」__CAPGO_KEEP_0__
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
__CAPGO_KEEP_2____CAPGO_KEEP_3__
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
__CAPGO_KEEP_4____CAPGO_KEEP_3__
export interface GetRecordingStatusResult { /** * The current recording status. * * @since 1.0.0 */ status: RecordingStatus;}GetCurrentAmplitudeResult
__CAPGO_KEEP_5____CAPGO_KEEP_3__
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
__CAPGO_KEEP_6__とによって返される許可情報。
export interface PermissionStatus { /** * The permission state for audio recording. * * @since 1.0.0 */ recordAudio: PermissionState;}RecordingErrorEvent
「レコーディングエラーイベント」のセクションレコーディング中にエラーが発生したときに発生するイベント。
export interface RecordingErrorEvent { /** * The error message. * * @since 1.0.0 */ message: string;}RecordingStoppedEvent
「レコーディングストップエラーイベント」のセクションレコーディングが完了したときに発生するイベント。
export type RecordingStoppedEvent = StopRecordingResult;AudioSessionCategoryOption
「オーディオセッションカテゴリオプション」のセクション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
「オーディオセッションモード」のセクションiOS上で利用可能なオーディオセッションモード
export enum AudioSessionMode { Default = 'DEFAULT', GameChat = 'GAME_CHAT', Measurement = 'MEASUREMENT', SpokenAudio = 'SPOKEN_AUDIO', VideoChat = 'VIDEO_CHAT', VideoRecording = 'VIDEO_RECORDING', VoiceChat = 'VOICE_CHAT',}RecordingStatus
「レコーディングステータス」のセクションレコーディングステータス
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
「パーミッションステート」のセクションCapacitorによってサポートされるプラットフォームパーミッションステート
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';「ソースオブトゥルスの」
「ソースオブトゥルスの」セクションこのページはプラグインの src/definitions.tsAPIの公開変更がアップストリームで発生した場合に再度同期を実行してください
はじめから続けてください
はじめから続けてくださいというセクションあなたが「を使用している場合 はじめから ネイティブメディアとインターフェイスの動作を計画するには、を接続します Using @capgo/capacitor-audio-recorder for the native capability in Using @capgo/capacitor-audio-recorder, Using @capgo/capacitor-live-activities for the native capability in Using @capgo/capacitor-live-activities, @capgo/capacitor-live-activities for the implementation detail in @capgo/capacitor-live-activities, Using @capgo/capacitor-video-player native capabilityを使用するために@capgo/capacitor-video-playerを使用し、 @capgo/capacitor-video-player native capabilityの実装詳細を@capgo/capacitor-video-playerで確認する。