← ブログ

FFmpegでMP4・WebM・MOVに動画を変換する方法(2026年ガイド)

FFmpegを使ってMP4、WebM、MOV、AVI形式間で動画を変換する方法を、ステップバイステップのコマンドで解説します。さらに、WaveSpeed Desktopを使ったワンクリックの高速な代替手段もご紹介します。

3 min read

MOVをMP4に変換したいですか?それともWebMファイルをWeb配信用に圧縮したいですか?FFmpegはビデオ変換において最も強力なコマンドラインツールですが、習得には急な学習曲線が伴います。このガイドでは、コピー&ペーストできる正確なコマンドを使って、一般的なビデオ変換のあらゆるシナリオを解説します。

ターミナルを使いたくない場合は、最後に無料のワンクリック代替手段をご紹介します。


前提条件:FFmpegのインストール

FFmpeg

始める前に、システムにFFmpegをインストールする必要があります。

macOS(Homebrew):

brew install ffmpeg

Ubuntu/Debian:

sudo apt update && sudo apt install ffmpeg

Windows:

  1. ffmpeg.org からダウンロード
  2. アーカイブを展開
  3. bin フォルダをシステムのPATHに追加

インストールの確認:

ffmpeg -version

これだけでも大変に感じるかもしれませんが、ここからさらに複雑になります。


基本的なビデオ変換

MOVからMP4へ

最も一般的な変換です。Appleデバイスはin MOV形式で録画しますが、MP4はほぼすべての環境でサポートされています:

ffmpeg -i input.mov -c:v libx264 -c:a aac -movflags +faststart output.mp4

各フラグの説明:

  • -i input.mov — 入力ファイル
  • -c:v libx264 — H.264コーデックでビデオをエンコード
  • -c:a aac — AACコーデックでオーディオをエンコード
  • -movflags +faststart — Webストリーミング向けに最適化(メタデータを先頭に移動)

MP4からWebMへ

WebMはWebブラウザに適しており、より優れた圧縮率を提供します:

ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -c:a libopus output.webm

パラメーターの説明:

  • -c:v libvpx-vp9 — VP9ビデオコーデック(YouTubeでも使用)
  • -crf 30 — 品質レベル(低いほど高品質、15〜35が一般的)
  • -b:v 0 — CRFにビットレートを制御させる
  • -c:a libopus — Opusオーディオコーデック(WebMに最適)

MP4からMOVへ

ffmpeg -i input.mp4 -c:v prores_ks -profile:v 3 -c:a pcm_s16le output.mov

Final Cut ProやDaVinci Resolveでのプロフェッショナル編集に適したProRes MOVファイルを作成します。

AVIからMP4へ

ffmpeg -i input.avi -c:v libx264 -crf 23 -c:a aac output.mp4

MKVからMP4へ

MKVからMP4への変換は、再エンコードなしのリムックスで対応できることが多く、はるかに高速です:

ffmpeg -i input.mkv -c copy output.mp4

-c copy フラグは、再エンコードせずにストリームをコピーします。MKV内のコーデックがMP4互換(通常はH.264 + AAC)の場合にのみ有効です。


高度なオプション

CRFによるビデオ品質の制御

CRF(Constant Rate Factor)は品質とファイルサイズのトレードオフを制御します:

ffmpeg -i input.mov -c:v libx264 -crf 18 -c:a aac output.mp4
CRF値品質用途
0ロスレスアーカイブ
18視覚的ロスレス高品質
23デフォルトバランス重視
28低品質小さいファイルサイズ
51最低品質非推奨

特定のビットレートを設定

ffmpeg -i input.mov -c:v libx264 -b:v 5M -c:a aac -b:a 192k output.mp4
  • -b:v 5M — 5 Mbpsのビデオビットレート
  • -b:a 192k — 192 kbpsのオーディオビットレート

解像度の変更

1080pにスケール:

ffmpeg -i input.mov -vf "scale=1920:1080" -c:v libx264 -c:a aac output.mp4

アスペクト比を維持しながら720pにスケール:

ffmpeg -i input.mov -vf "scale=-1:720" -c:v libx264 -c:a aac output.mp4

フレームレートの変更

30fpsに変換:

ffmpeg -i input.mov -r 30 -c:v libx264 -c:a aac output.mp4

2パスエンコーディング(最高品質)

目標ビットレートで最高品質を得るには:

ffmpeg -i input.mov -c:v libx264 -b:v 5M -pass 1 -an -f null /dev/null
ffmpeg -i input.mov -c:v libx264 -b:v 5M -pass 2 -c:a aac output.mp4

Windowsの場合は /dev/nullNUL に置き換えてください。


バッチ変換

すべてのMOVファイルをMP4に変換

Linux/macOS:

for f in *.mov; do
  ffmpeg -i "$f" -c:v libx264 -crf 23 -c:a aac "${f%.mov}.mp4"
done

Windows(PowerShell):

Get-ChildItem *.mov | ForEach-Object {
  ffmpeg -i $_.Name -c:v libx264 -crf 23 -c:a aac ($_.BaseName + ".mp4")
}

よくあるエラーと対処法

「Codec not found」または「Unknown encoder」 追加のコーデックサポートを含むFFmpegのインストールが必要な場合があります:

# macOS
brew reinstall ffmpeg

# Ubuntu
sudo apt install ffmpeg libavcodec-extra

「Invalid data found when processing input」 入力ファイルが破損している可能性があります。以下をお試しください:

ffmpeg -err_detect ignore_err -i input.mov -c copy output.mp4

出力ファイルが非常に大きい CRFまたはビットレートの設定を忘れています。品質設定がない場合、FFmpegは非常に高いビットレートを使用することがあります:

# 適切な品質/サイズのために -crf 23 を追加
ffmpeg -i input.mov -c:v libx264 -crf 23 -c:a aac output.mp4

「height/width not divisible by 2」 一部のコーデックは偶数の寸法が必要です:

ffmpeg -i input.mov -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -c:v libx264 output.mp4

ターミナル不要:WaveSpeed Desktopを使う

正直に言うと、コーデック名、CRF値、2パスエンコーディングフラグ、バッチ変換スクリプトを覚えることが好きな人はあまりいないでしょう。

WaveSpeed Desktop には、ワンクリックで上記のすべてを処理できる組み込みのビデオコンバーターが含まれています:

  • ビデオファイルをドラッグ&ドロップ
  • 出力フォーマットを選択(MP4、WebM、MOV、AVI)
  • 変換をクリック — 完了

FFmpegのインストール不要。ターミナル不要。フラグの暗記も不要。

WaveSpeed Desktop ビデオコンバーター

WaveSpeed Desktopを無料でダウンロード: https://github.com/WaveSpeedAI/wavespeed-desktop/releases


よくある質問

オンラインでビデオを共有するのに最適なフォーマットは? H.264ビデオとAACオーディオを使用したMP4です。事実上すべてのプラットフォーム、ブラウザ、デバイスでサポートされています。

ビデオを変換すると品質が下がりますか? 再エンコードでは常に多少の品質劣化が生じます。可能な限り -c copy を使用して再エンコードを避けてください。再エンコードが必要な場合は、低いCRF値(18〜20)を使用してほぼロスレスの品質を実現できます。

FFmpegがビデオを変換するのにどれくらい時間がかかりますか? ファイルサイズ、コーデック、使用するハードウェアによって異なります。1GBのMOVからMP4への変換は、最新のハードウェアで通常2〜10分かかります。-c copy(リムックス)を使用すれば数秒で完了します。

FFmpegは4Kや8Kビデオに対応していますか? 対応していますが、高解像度ビデオのエンコードはCPUに高負荷がかかり、時間もかかります。高速処理のためにハードウェアアクセラレーション(NVIDIA GPUの場合は -c:v h264_nvenc)の使用を検討してください。