시작하기
이 플러그인의 설치 단계와 전체 마크다운 가이드를 포함한 설정 지시를 복사하세요.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-ffmpeg`
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/ffmpeg/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-ffmpegbunx cap sync수입
수입import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';API 개요
API 기능getCapabilities
기기별로 읽을 수 있는 기능 매트릭스를 반환합니다.복사']} //Note: The last item in the translations array is a direct translation of the source text. However, it might be more suitable to rephrase it to better fit the target language's cultural context. For example,
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.getCapabilities();reencodeVideo
Section titled “비디오 재인코딩”비디오 재인코딩 작업을 큐에 넣습니다.
iOS에서, native layer가 작업을 수락할 때 promise가 해결됩니다.
최종 성공 또는 실패는 "listener"를 통해 전달됩니다. progress listener
Android와 웹에서는 현재 UNIMPLEMENTED.
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.reencodeVideo({} as ReencodeVideoOptions);convertImage
Section titled “이미지 변환”이미지를 다른 형식으로 변환합니다.
iOS에서는 현재 jpeg 및 .pngAndroid에서는 현재 .webp, jpeg, .png.
현재 웹은 거부합니다. UNIMPLEMENTED.
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.convertImage({} as ConvertImageOptions);convertAudio
타이틀 섹션 “convertAudio”다른 컨테이너 또는 코덱으로 오디오를 변환합니다.
iOS는 현재 지원합니다. m4a.
Android와 웹은 현재 거부합니다. UNIMPLEMENTED.
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.convertAudio({} as ConvertAudioOptions);FFmpegCapabilitiesResult
타이틀 섹션 “FFmpegCapabilitiesResult”export interface FFmpegCapabilitiesResult { platform: string; features: FFmpegCapabilitiesFeatures;}ReencodeVideoOptions
타이틀 섹션 “ReencodeVideoOptions”export interface ReencodeVideoOptions { inputPath: string; outputPath: string; width: number; height: number; bitrate?: number;}FFmpegAcceptedJob
FFmpegAcceptedJob 섹션export interface FFmpegAcceptedJob { jobId: string; status: 'queued';}ConvertImageOptions
ConvertImageOptions 섹션export interface ConvertImageOptions { inputPath: string; outputPath: string; format: ImageOutputFormat; /** * Compression quality in the inclusive range `0.0..1.0`. * * Native platforms reject values outside that range. */ quality?: number;}ConvertImageResult
ConvertImageResult 섹션export interface ConvertImageResult { outputPath: string; format: ImageOutputFormat;}ConvertAudioOptions
ConvertAudioOptions 섹션export interface ConvertAudioOptions { inputPath: string; outputPath: string; format: AudioOutputFormat;}ConvertAudioResult
ConvertAudioResult 섹션export interface ConvertAudioResult { outputPath: string; format: AudioOutputFormat;}FFmpegProgressEvent
FFmpegProgressEvent 섹션export interface FFmpegProgressEvent { jobId: string; /** * Normalized progress as a floating-point value in the inclusive range `0.0..1.0`. */ progress: number; state: FFmpegProgressState; message?: string; outputPath?: string; /** * Legacy alias kept for compatibility while callers migrate to `jobId`. */ fileId?: string;}PluginVersionResult
플러그인 버전 결과export interface PluginVersionResult { version: string;}FFmpegCapabilitiesFeatures
FFmpeg 기능export interface FFmpegCapabilitiesFeatures { getPluginVersion: FFmpegCapability; getCapabilities: FFmpegCapability; reencodeVideo: FFmpegCapability; convertImage: FFmpegCapability; convertAudio?: FFmpegCapability; progressEvents: FFmpegCapability; probeMedia: FFmpegCapability; generateThumbnail: FFmpegCapability; extractAudio: FFmpegCapability; remux: FFmpegCapability; trim: FFmpegCapability;}ImageOutputFormat
이미지 출력 형식export type ImageOutputFormat = '.webp' | 'jpeg' | '.png';AudioOutputFormat
오디오 출력 형식export type AudioOutputFormat = 'm4a';진실의 근원
이 페이지는 플러그인의설정에서 생성됩니다. src/definitions.ts. upstream API이 변경될 때 다시 싱크를 실행하세요.