スタートガイド
インストール手順と、このプラグインの完全なMarkdownガイドを含むセットアッププロンプトをコピーします。
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.
インストール
「インストール」セクション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-ffmpeg` plugin in my project.手動セットアップを希望する場合は、以下のコマンドを実行してプラグインをインストールし、下記のプラットフォーム別の手順に従ってください:
npm install @capgo/capacitor-ffmpegnpx cap syncインポート
「インポート」セクションimport { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';クイックスタート
「クイックスタート」セクションimport { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const result = await CapacitorFFmpeg.getCapabilities();console.log(result);例: reencodeVideo
「例: reencodeVideo」というタイトルのセクションimport { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const progressListener = await CapacitorFFmpeg.addListener('progress', ({ progress }) => { console.log('Encode progress', progress);});
const job = await CapacitorFFmpeg.reencodeVideo({ inputPath: 'path/to/file', outputPath: 'path/to/file', width: 1080, height: 1920,});// Job acceptance only; wait for progress/completion listeners before using the output file.console.log(job);
await progressListener.remove();例: convertImage
「例: convertImage」というタイトルのセクションimport { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const result = await CapacitorFFmpeg.convertImage({ inputPath: 'path/to/file', outputPath: 'path/to/file', format: 'jpeg',});console.log(result);よくある落とし穴
「よくある落とし穴」セクション- リスナー: 画面がアンマウントされたらハンドルを削除します。
- ネイティブ同期: 実行
npx cap syncプラグインのアップグレード後。 - 信頼できる情報源: 信頼
src/definitions.tsGitHub リポジトリ内。
API の概要
「API 概要」セクションgetCapabilities
セクション「getCapabilities」現在のプラットフォームのマシンリーダブルな機能マトリックスを返します。
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const result = await CapacitorFFmpeg.getCapabilities();console.log(result);reencodeVideo
「reencodeVideo」セクションビデオの再エンコードジョブをキューに追加します。
iOSでは、返されたPromiseはネイティブレイヤーがジョブを受け付けると解決されます。
最終的な成功または失敗は、次の progress リスナーを通じて通知されます。
AndroidとWebでは現在、以下でrejectされます: UNIMPLEMENTED.
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const result = await CapacitorFFmpeg.reencodeVideo({ inputPath: 'path/to/file', outputPath: 'path/to/file', width: 1080, height: 1920,});console.log(result);convertImage
「convertImage」セクション静止画を別のフォーマットに変換します。
iOSは現在、以下をサポートしています: jpeg と .png。
Androidは現在、以下をサポートしています: .webp, jpegや .png.
現在、Webでは次のエラーで拒否されます: UNIMPLEMENTED.
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const result = await CapacitorFFmpeg.convertImage({ inputPath: 'path/to/file', outputPath: 'path/to/file', format: 'webp',});console.log(result);convertAudio
「convertAudio」セクション音声を別のコンテナやコーデックに変換します。
iOSは現在、以下をサポートしています: m4a.
現在、AndroidとWebでは次のエラーで拒否されます: UNIMPLEMENTED.
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
const result = await CapacitorFFmpeg.convertAudio({ inputPath: 'path/to/file', outputPath: 'path/to/file', format: 'm4a',});console.log(result);型リファレンス
「型リファレンス」セクション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
“PluginVersionResult”のセクションexport interface PluginVersionResult { version: string;}FFmpegCapabilitiesFeatures
“FFmpegCapabilitiesFeatures”のセクション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
“ImageOutputFormat”のセクションexport type ImageOutputFormat = '.webp' | 'jpeg' | '.png';AudioOutputFormat
“AudioOutputFormat”のセクションexport type AudioOutputFormat = 'm4a';Source of Truth
「Source Of Truth」セクションこのページはプラグインの src/definitions.tsから生成されています。upstream で公開 API が変更されたら、再度 sync を実行してください。
Getting Startedの続きを進める
「Getting Started からの続き」セクション使用している場合 スタートガイド ダッシュボードと API の運用を計画するには、これを次と連携させます @capgo/capacitor-ffmpeg を使用する 「@capgo/capacitor-ffmpegの使用」におけるネイティブ機能については、 API の概要 「API の概要」の実装の詳細については、 はじめに 「はじめに」における実装の詳細については、 API キー および「API Keys」の実装の詳細については、 デバイス 実装の詳細については Devices を参照してください。