サーバーレス ffmpeg
サーバーレスffmpegハンドブック:あらゆるランタイムを、1つのAPIで
サーバーレスランタイムはそれぞれ異なる理由でffmpegを締め出しており、解決策もプラットフォームごとに異なります。これはその索引です。各ホストが何を妨げているか、そしてそれを回避する1回の呼び出しについてまとめています。ご利用のプラットフォームから始めるか、必要な操作に直接進んでください。
プラットフォーム別
各サーバーレスランタイムでネイティブのffmpegバイナリが実行できない理由と、1回の呼び出しで解決する方法をご紹介します。ご利用のプラットフォームを選んで、詳しいガイドをご覧ください。
| プラットフォーム | ネイティブffmpeg | 何が妨げになるか |
|---|---|---|
| Vercel上のffmpeg | 不可 | Node関数の解凍後バンドル上限250MB — ffmpegとコーデックは収まりません |
| Supabase Edge Functionsでffmpegを使う | 不可 | Denoランタイムにはchild_process/subprocess APIがないため、ffmpegバイナリをexecできません |
| Netlify Functions で ffmpeg を使う | 不可 | ffmpeg バイナリと関連ライブラリは、Netlify の zip 圧縮後で約 50MB という Lambda デプロイ上限を超えます |
| Cloudflare Workers で ffmpeg を使う | 不可 | V8 isolate: ネイティブバイナリ非対応 — ffmpeg バイナリをインストールも実行もできません |
| AWS Lambda上のffmpeg | かろうじて | 自前でパッケージ化したffmpegレイヤーでのみ実行可能、解凍後250MBの上限に収める必要あり |
| Deno Deployでのffmpeg | 不可 | V8 isolateにはsubprocess APIもFFIもないため、ffmpegバイナリを起動できません |
透かし、トリミング、音声、サムネイル
それぞれが単一のエンドポイントです。URLをPOSTすると、ホスティングされた結果が返ってきます。
透かし操作
動画・画像にロゴやテキストの透かしをHTTPリクエスト1回で追加。ffmpegの構築もserverlessのタイムアウトも不要。ホスト済みの結果URLを取得できます。初回キーは無料。
ガイドを見るオペレーション・音声抽出動画から音声を抽出し、再生時間付きのホスト型MP3をHTTPS呼び出し1回で取得。ffmpeg導入不要、無料プランから始められます。
ガイドを見る動画処理ホスティング型動画トリミングAPI。動画URLとstart・endをPOSTするだけでフレーム精度のMP4クリップを取得。バイナリ同梱不要、インフラ構築ゼロ。無料でお試し可能。
ガイドを見る音声操作音声ファイルを指定区間で切り出し、ホスト済みMP3として取得。POSTリクエスト1回で完結、デプロイ不要・サーバー管理不要。無料キーを今すぐ取得。
ガイドを見る動画サムネイル / カバーフレームHTTPリクエスト1回で動画サムネイルやポスターフレームを生成。任意のタイムスタンプのフレームをホスト画像として取得——ffmpegバイナリの用意は不要です。
ガイドを見る