動画変換の基盤を選ぶとき、「AWS MediaConvert を使うべきか、FFmpeg を自前で動かすべきか」という問いは避けて通れない。どちらも強力だが、コスト構造がまったく異なる。処理量が少ないうちはマネージドサービスが楽で安く、ある閾値を超えると自前運用の方が圧倒的に安くなる。
この記事では、具体的な数字を使って損益分岐点を計算し、どちらを選ぶべきかの判断基準を僕が整理する。
2つの選択肢
まず前提を揃えておく。
AWS MediaConvert はフルマネージドの動画トランスコードサービスだ。サーバー管理は不要で、APIを叩くだけで動画変換ができる。スケールアップ・スケールダウンも自動で、運用負荷は最小限になる。
FFmpeg 自前運用 は、VPS や EC2 インスタンス上に FFmpeg をセットアップして動画変換を行う方法だ。インフラの管理は自分で行う必要があるが、処理量が増えても費用は固定費中心になる。
両者の違いをひと言でまとめると、MediaConvert は従量課金、FFmpeg 自前は固定費 だ。この差がコスト比較の核心になる。
AWS MediaConvertの料金体系
AWS MediaConvert の料金は、処理した動画の 出力時間 に基づく従量課金だ。リージョン・コーデック・解像度によって単価が変わる。
代表的な単価(Professional Tier、東京リージョン):
| 解像度 | 単価(/分) |
|---|---|
| 4K (UHD) | $0.054 |
| 1080p | $0.0135 |
| 720p | $0.0075 |
| SD | $0.0045 |
1080p 100本/月の計算例
1本あたり平均10分の動画を月100本処理するケースで計算する。
- 出力時間: 10分 × 100本 = 1,000分/月
- 1080p 単価: $0.0135/分
- 月額: 1,000分 × $0.0135 = $13.50/月
これに加えて、入力・出力ファイルの S3 ストレージ料金と、データ転送料金が別途かかる。1080p の動画 100本(各 1GB 程度)を想定すると:
- S3 ストレージ: ~100GB × $0.025/GB = $2.50/月
- データ転送: ケースによるが $1〜5 程度
合計: 月約 $17〜21 程度
この規模なら MediaConvert は非常に安価で、追加の運用コストもかからない。
AWS CLI で MediaConvert ジョブを投入するサンプル
aws mediaconvert create-job \
--endpoint-url https://XXXX.mediaconvert.ap-northeast-1.amazonaws.com \
--role arn:aws:iam::123456789012:role/MediaConvertRole \
--settings file://job-settings.json
ジョブ設定は JSON ファイルで管理し、--settings で渡す。解像度やビットレートの指定もすべてこの JSON に記述する。
FFmpeg自前運用のコスト構造
FFmpeg を自前で動かす場合、コストはいくつかの要素に分解される。
VPS / サーバー費用
動画エンコードは CPU を大量に消費する。1080p のリアルタイムエンコードには 4コア以上を推奨する。
| プロバイダ | スペック | 月額 |
|---|---|---|
| Hetzner CX32 | 4コア/8GB | 約 $15 |
| Vultr | 4コア/8GB | 約 $24 |
| DigitalOcean | 4コア/8GB | 約 $48 |
| AWS EC2 c5.xlarge | 4コア/8GB | 約 $124 |
コスト重視なら Hetzner や Vultr が選択肢になる。詳しいサーバー選定と FFmpeg セットアップ手順は FFmpeg VPS エンコードサーバー構築 で解説している。
ストレージ費用
変換前後のファイルを一時保存するストレージが必要だ。VPS のローカルディスクで賄う場合は追加料金がかからないが、S3 や Cloudflare R2 を使う場合は別途費用がかかる。
- Cloudflare R2: $0.015/GB/月(エグレス無料)
- AWS S3: $0.025/GB/月(データ転送別途)
人件費(隠れコスト)
月2時間のメンテナンス(パッチ適用、ログ確認、障害対応)を想定すると:
- エンジニア時給 $50 として: 2時間 × $50 = $100/月
これが最も見落とされやすいコストだ。
月間コスト合計の目安
| 項目 | 最小構成 | 標準構成 |
|---|---|---|
| VPS | $15 | $48 |
| ストレージ (100GB) | $0(ローカル) | $1.5(R2) |
| 帯域(エグレス) | $0〜5 | $5〜20 |
| メンテナンス人件費 | $50 | $100 |
| 合計 | ~$65 | ~$170 |
損益分岐点はどこか
固定費中心の FFmpeg 自前運用が有利になるのは、処理量が増えたときだ。月額固定費を $65(最小構成)として計算すると:
| 月間処理量(1080p) | MediaConvert | FFmpeg自前(最小) |
|---|---|---|
| 50本(500分) | $6.75 + S3 ≈ $9 | $65 |
| 100本(1,000分) | $13.50 + S3 ≈ $17 | $65 |
| 500本(5,000分) | $67.50 + S3 ≈ $75 | $65 |
| 1,000本(10,000分) | $135 + S3 ≈ $145 | $65 |
| 2,000本(20,000分) | $270 + S3 ≈ $285 | $65〜80 |
損益分岐点は月約 400〜500本(4,000〜5,000分) あたりだ。それ以下なら MediaConvert、それ以上なら FFmpeg 自前の方がコスト効率がよくなる。
ただしこれは人件費を $50/月(月1時間のメンテ)まで削減できた場合の試算だ。人件費が $100/月かかるなら分岐点は 800〜1,000本まで上がる。
MediaConvertが向いているケース
MediaConvert は以下のようなケースで本領を発揮する。
処理量が少ない、または変動が大きい場合。月100本程度なら月額 $17 程度で済む。サーバーを常時稼働させるよりはるかに安い。処理量が月によって 50本になったり 500本になったりする場合も、従量課金のメリットが大きい。
インフラ管理のリソースがない場合。エンジニアの人件費が高い、またはサーバー管理が得意でないチームにとって、マネージドサービスの価値は金銭的なコストを超える。
エンコード品質への要件が高い場合。MediaConvert は放送グレードのコーデック対応(H.264、H.265、AV1 など)と細かいビットレート制御が可能で、品質面では申し分ない。
FFmpeg自前が向いているケース
FFmpeg 自前運用が有利なケースは明確だ。
処理量が安定して多い場合。月500本を超えてくると、固定費の FFmpeg 自前が圧倒的に安くなる。月1,000本なら年間で $1,000 以上の差が出ることもある。
カスタムコーデックや特殊処理が必要な場合。MediaConvert が対応していないフィルタ処理、独自のコーデック設定、GPU エンコード(NVENC など)を使いたい場合は FFmpeg しか選択肢がない。
オンプレミスや特定のリージョン要件がある場合。データを特定の国・施設から出せない規制がある場合、クラウドサービスは使えない。
長期的なコスト予測が重要な場合。従量課金は処理量が増えると青天井になる。固定費の方が予算管理がしやすい。
まとめ
AWS MediaConvert と FFmpeg 自前運用のどちらが正解かは、処理量と運用リソース次第だ。
- 月500本(5,000分)未満 → MediaConvert が安くて楽
- 月500本(5,000分)以上 → FFmpeg 自前の方がコスト効率がよい
- カスタム要件・規制対応 → FFmpeg 一択
まずは今の処理量と成長予測を数字で出してみることを勧める。僕自身も最初は MediaConvert から始めて、処理量が増えた段階で FFmpeg 自前に切り替えた。損益分岐点を把握した上で選択すれば、後から後悔することは少ない。
FFmpeg 自前環境の構築手順は FFmpeg VPS エンコードサーバー構築 にまとめているので、そちらも参考にしてほしい。