Lompat ke Konten

Getting Started

GitHub

Anda dapat menggunakan Pengaturan Bantu AI kami untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI Anda menggunakan perintah berikut:

Jendela Terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Lalu gunakan prompt berikut:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-ffmpeg` plugin in my project.

Jika Anda lebih suka Setup Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:

Jendela terminal
bun add @capgo/capacitor-ffmpeg
bunx cap sync
import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';

Kembalikan matriks kemampuan yang dapat dibaca mesin untuk platform saat ini.

import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.getCapabilities();

Tunggu video untuk dire-encode.

Pada iOS, promise yang dikembalikan diselesaikan ketika layer native menerima pekerjaan. Keberhasilan atau kegagalan akhir disampaikan melalui progress listener.

Android dan web saat ini menolak dengan UNIMPLEMENTED.

import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.reencodeVideo({} as ReencodeVideoOptions);

Konversi gambar statis ke format lain.

iOS saat ini mendukung jpeg dan .png. Android saat ini mendukung .webp, jpeg, dan .png. Web saat ini menolak dengan UNIMPLEMENTED.

import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.convertImage({} as ConvertImageOptions);

Konversi audio ke kontainer atau codec lain.

iOS saat ini mendukung m4a. Android dan web saat ini menolak dengan UNIMPLEMENTED.

import { CapacitorFFmpeg } from '@capgo/capacitor-ffmpeg';
await CapacitorFFmpeg.convertAudio({} as ConvertAudioOptions);
export interface FFmpegCapabilitiesResult {
platform: string;
features: FFmpegCapabilitiesFeatures;
}
export interface ReencodeVideoOptions {
inputPath: string;
outputPath: string;
width: number;
height: number;
bitrate?: number;
}
export interface FFmpegAcceptedJob {
jobId: string;
status: 'queued';
}
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;
}
export interface ConvertImageResult {
outputPath: string;
format: ImageOutputFormat;
}
export interface ConvertAudioOptions {
inputPath: string;
outputPath: string;
format: AudioOutputFormat;
}
export interface ConvertAudioResult {
outputPath: string;
format: AudioOutputFormat;
}
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;
}
export interface PluginVersionResult {
version: string;
}
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;
}
export type ImageOutputFormat = '.webp' | 'jpeg' | '.png';
export type AudioOutputFormat = 'm4a';

Halaman ini dihasilkan dari plugin’s src/definitions.ts. Re-run sinkronisasi ketika API publik berubah di atas.

Jika Anda menggunakan Getting Started untuk merencanakan dashboard dan API operasional, hubungkannya dengan Menggunakan @capgo/capacitor-ffmpeg untuk kemampuan asli di Menggunakan @capgo/capacitor-ffmpeg, API Ringkasan untuk detail implementasi di API Ringkasan, Pendahuluan untuk detail implementasi di Pendahuluan, Kunci API untuk detail implementasi di Kunci API dan Perangkat untuk detail implementasi di Perangkat.