YouTubeに動画をアップロードするとき、エンコード設定が合っていないと、YouTube側の再エンコードで画質が落ちます。
YouTube推奨仕様まとめ
| 項目 | YouTube推奨値 |
|---|---|
| 映像コーデック | H.264(MP4推奨) |
| フレームレート | 24, 25, 30, 48, 50, 60 fps |
| 解像度 | 最大8K |
| 音声コーデック | AAC-LC |
| 音声サンプリングレート | 48kHz |
| 音声チャンネル | ステレオ(2ch)推奨 |
| 音量レベル | 指定なし(-14 LUFSがよく使われる目安) |
| コンテナ | MP4(推奨) |
基本コマンド(1080p・H.264)
YouTubeとの互換性がいちばん高い設定です。
ffmpeg -i input.mp4 \
-c:v libx264 \
-preset slow \
-crf 18 \
-profile:v high \
-level 4.1 \
-pix_fmt yuv420p \
-movflags +faststart \
-c:a aac \
-b:a 384k \
-ar 48000 \
-ac 2 \
output_youtube.mp4
各オプションの意味は次のとおりです。
| オプション | 値 | 理由 |
|---|---|---|
-crf 18 |
18(高品質) | YouTubeの再エンコードで画質が下がるので、元の動画は高画質にしておく |
-preset slow |
slow | CRFと組み合わせると効率よく圧縮できる |
-profile:v high |
High | YouTube推奨プロファイル |
-level 4.1 |
4.1 | 1080p/30fps以下はこれで十分 |
-pix_fmt yuv420p |
yuv420p | 互換性が最も高い(ブラウザ・スマホで再生できる) |
-movflags +faststart |
— | Webで再生したとき、すぐに再生が始まる |
-b:a 384k |
384kbps | YouTube推奨の音声ビットレート(ステレオ) |
-ar 48000 |
48kHz | YouTube推奨サンプリングレート |
解像度別推奨ビットレート
YouTubeは映像を再エンコードします。再エンコードの後も画質が保てるように、元の動画は高めのビットレートで用意します。
SDR(標準ダイナミックレンジ)
| 解像度 | フレームレート | 推奨映像ビットレート | FFmpegコマンド |
|---|---|---|---|
| 4K (2160p) | 24-30fps | 35-45 Mbps | -b:v 40M |
| 4K (2160p) | 48-60fps | 53-68 Mbps | -b:v 60M |
| 1080p | 24-30fps | 8 Mbps | -b:v 8M |
| 1080p | 48-60fps | 12 Mbps | -b:v 12M |
| 720p | 24-30fps | 5 Mbps | -b:v 5M |
| 480p | 24-30fps | 2.5 Mbps | -b:v 2500k |
CRFモードで全自動(推奨)
CRFモードは、画質を基準にしてエンコードする方式です。ビットレートを手で決めるより、場面に合わせてデータ量がうまく配分されます。
# 1080p・24〜30fps の素材用
ffmpeg -i input.mp4 \
-c:v libx264 -crf 18 -preset slow \
-vf "scale=-2:1080:flags=lanczos" \
-c:a aac -b:a 384k -ar 48000 -ac 2 \
-movflags +faststart \
output_1080p.mp4
# 1080p・48〜60fps の素材用
ffmpeg -i input.mp4 \
-c:v libx264 -crf 17 -preset slow \
-vf "scale=-2:1080:flags=lanczos" \
-c:a aac -b:a 384k -ar 48000 -ac 2 \
-movflags +faststart \
output_1080p60.mp4
どちらも、元の動画のフレームレートのまま出力します。YouTube は、撮影したときと同じフレームレートでのアップロードを勧めています(YouTube ヘルプ)。scale=-2:1080 は、縦横比を保ったまま高さを 1080 にします。
音量を YouTube 基準に正規化
YouTubeは音量を自動で正規化(基準の大きさにそろえること)します。先に自分で正規化しておくと、意図した音量でアップロードできます。
# -14 LUFS に正規化(よく使われる目安)
ffmpeg -i input.mp4 \
-af "loudnorm=I=-14:TP=-1.5:LRA=11" \
-c:v copy \
-c:a aac -b:a 384k -ar 48000 \
output_normalized.mp4
loudnorm は音声を192kHzに上げて処理するので、-ar 48000 で48kHzに戻します。
同じ処理は、ブラウザで使える音量調整ツールでもできます。
ショートパス:既存の動画を最小限の処理でアップロード
すでにH.264でエンコードされた動画なら、再エンコードせずに、入れ物(コンテナ)だけをMP4に変えられます。
# MOV → MP4(コーデック変換なし・高速)
ffmpeg -i input.mov -c copy -movflags +faststart output.mp4
# MKV → MP4(コーデック変換なし)
ffmpeg -i input.mkv -c copy output.mp4
H.265(HEVC)でアップロードする場合
同じ画質(VMAF)で比べると、H.265のファイルはH.264より26〜35%小さくなりました(実測)。ただしYouTubeは、アップロードされた動画を再エンコードします。そのため、アップロードする元の動画としては、H.264と画質の差はほとんどありません。
ffmpeg -i input.mp4 \
-c:v libx265 -crf 20 -preset slow \
-tag:v hvc1 \
-c:a aac -b:a 384k -ar 48000 \
-movflags +faststart \
output_h265.mp4
-tag:v hvc1 は、iOS/macOSのQuickTimeで再生できるようにするために必要です。
よくある問題と解決策
Q. YouTubeアップロード後に画質が悪くなった
元の動画のビットレートが低すぎると、YouTubeの再エンコードでさらに画質が落ちます。H.264なら-crf 18以下、H.265なら-crf 20以下の高画質設定でエンコードしてください。
Q. 音声が消えている・ずれている
# 音声ストリームの確認
ffprobe -v quiet -print_format json -show_streams input.mp4 | grep codec_type
結果に "codec_type": "audio" の行がなければ、ファイルに音声が入っていません。音声を変換するときは、YouTubeが推奨するAAC-LC(-c:a aac)にします。
Q. 縦動画(ショート向け)の設定
# もともと縦(9:16)の動画を 1080×1920 にする
ffmpeg -i input.mp4 \
-vf "scale=1080:1920:flags=lanczos" \
-c:v libx264 -crf 18 -preset slow \
-c:a aac -b:a 384k -ar 48000 \
-movflags +faststart \
output_shorts.mp4
横長(16:9)の動画にこのコマンドを使っても、縦動画にはなりません。映像が横に縮められ、プレーヤーでは 16:9 のまま表示されます。横長の動画は、先に 9:16 に切り出すか、上下に余白を付けてください(縦動画の作り方)。
ブラウザで今すぐ試す
- 動画圧縮ツール:ファイルサイズを抑えてYouTube向けに圧縮
- 音量調整ツール:-14 LUFSにラウドネス正規化
- 動画フォーマット比較:MP4・WebM・MOV・MKVの選び方
よくある質問
YouTube が推奨するビットレートはいくつ?
1080p・30fpsなら8 Mbps、1080p・60fpsなら12 Mbpsが公式の推奨値です。推奨より上げても、画質はあまり上がりません。1080p・30fpsの素材で8 Mbpsを16 Mbpsにしたところ、画質のスコア(VMAF)は2.2ポイント上がっただけで、ファイルは約2倍になりました(実測)。
1080p で撮ったが 4K にすべき?
手元にある最も高い解像度でアップロードしてください。1080pの素材を4Kに拡大しても、4Kの細かさは出ません。
2-pass と CRF どっち?
CRF 17〜18と -preset slow の組み合わせで、ほぼマスター並みの画質になり、設定も簡単です。2-passが役に立つのは、ファイルサイズを正確に決めたいときだけです。
YouTube 処理後にぼやけて見える
YouTubeのVP9/AV1にはビットレートの上限があります。また、1080pや4Kの処理には時間がかかり、アップロード後の数時間は高い画質を選べないことがあります(YouTube ヘルプ)。YouTube側のAV1変換が終わると改善することもあります。
HDR でアップすべき?
HDRで仕上げ、BT.2020とPQ/HLGが正しくタグ付けされた素材のときだけにしてください。設定が不完全なHDRは、SDRの画面で見たときに、普通のSDRより画質が悪くなることがあります。