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 が推奨するビットレートはいくつ?

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より画質が悪くなることがあります。