はじめに
このプラグインのインストール手順と完全な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.
インストール
「Install」セクション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」セクションimport { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';クイックスタート
「Quick start」セクション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);よくある落とし穴
「Common pitfalls」セクション- リスナー: 画面のアンマウント時にハンドルを削除します。
- ネイティブ同期: 実行
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では、現在以下により拒否されます: 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';信頼できる情報源
「信頼できる情報源」セクションこのページはプラグインの src/definitions.tsから生成されています。上流で公開 API が変更されたら、sync を再実行してください。
Getting Started から続ける
「Getting Started からの続き」セクション以下を使用している場合: はじめに ダッシュボードと API の操作を計画するには、以下と連携してください @capgo/capacitor-ffmpeg の使用方法 @capgo/capacitor-ffmpeg でネイティブ機能を使用する場合、 API の概要 API Overview の実装の詳細については、 はじめに Introduction の実装の詳細については、 API キー API Keys の実装の詳細については、 デバイス Devices の実装の詳細については。