Getting Started
이 플러그인의 설치 단계와 전체 마크다운 가이드를 포함한 설정 지시를 복사하세요.
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.
설치
설치Capgo의 AI 보조 설치를 사용하여 플러그인을 설치할 수 있습니다. 다음 명령어를 사용하여 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 syncImport
Importimport { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';API 개요
API 개요startRecording
시작 녹음장치 마이크를 사용하여 오디오 녹음을 시작합니다.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
__CAPGO_KEEP_0__ 녹음 중단녹음 중단. 안드로이드 (API 24+), iOS, 및 웹에서만 사용 가능합니다.
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–100 ms 간격이 좋은 시작점입니다.
짧은 루프에서 호출하지 마십시오; 각 호출은 JS/자연어橋梁을 건너갑니다. 0 클립보드 복사
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getCurrentAmplitude();checkPermissions
마이크에 대한 현재 권한 상태를 반환합니다.클립보드 복사
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.checkPermissions();requestPermissions
마이크에 대한 권한을 요청합니다.타입 참조
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.requestPermissions();녹음 시작 옵션
클립보드 복사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_5__ 반환 값
export interface GetRecordingStatusResult { /** * The current recording status. * * @since 1.0.0 */ status: RecordingStatus;}GetCurrentAmplitudeResult
__CAPGO_KEEP_6__ 현재 진폭 결과__CAPGO_KEEP_7__ 반환 값
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_8__ 권한 상태__CAPGO_KEEP_0__ 에서 __CAPGO_KEEP_1__으로부터 반환되는 권한 정보.
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)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
녹음 상태를 위한 ‘RecordingStatus’ 섹션.녹음 상태.
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
권한 상태를 위한 ‘PermissionState’ 섹션.Capacitor에서 지원하는 플랫폼 권한 상태.
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';실질적인 원천.
실질적인 원천을 위한 섹션이 페이지는 플러그인의 src/definitions.ts. API의 공개 버전이 업스트림에서 변경되면 다시 싱크를 실행하세요.
Getting Started에서 계속 진행하세요
Getting Started에서 계속 진행하는 섹션Capgo를 사용 중이라면 Getting Started native 미디어 및 인터페이스 동작을 계획하려면 Using @capgo/capacitor-audio-recorder native 기능인 Using @capgo/capacitor-audio-recorder과 연결하세요 Using @capgo/capacitor-live-activities native 기능인 Using @capgo/capacitor-live-activities과 연결하세요 @capgo/capacitor-live-activities @capgo/capacitor-live-activities의 구현 세부 사항 Using @capgo/capacitor-video-player capgo의 원시 기능을 위해 @capacitor-video-player를 사용하고, @capgo/capacitor-video-player capgo의 구현 세부 정보를 위해 @capacitor-video-player를 사용합니다.