FFmpeg Cookbook
EN

Discord動画圧縮ツール

Discord で送れない動画を、上限(Nitro なしは 20MB)に入る大きさにします。スマホのブラウザでも使えます。

動画はサーバーに送られません
動画を選択 MP4 / MOV / MKV / WebM / AVI・最大500 MB

1 MB = 1,000,000バイト。候補の数字は目安です。上限は各サービスの公式ヘルプで確かめてください。長さを短く入力しても動画は短縮されません。

対応する FFmpeg コマンド

現在の設定に対応するコマンドラインです。設定を変えるとリアルタイムで更新されます。

ファイルを選び、設定を調整するとここに表示されます。

共有前の確認

Discord の公式ヘルプでは、アップロードの上限は Nitro なしで 20MB、Nitro Basic で 50MB、Nitro で最大 1GB です。初期値の 20MB は Nitro なしの上限です。Discord は送る前のファイルの大きさで判定するので、ファイルそのものを上限内にします。

Discord 公式ヘルプ(添付ファイル FAQ、英語版) (2026-09-30 更新、確認日 2026-10-02)

何秒まで送れるか: Discord が見るのは長さではなく大きさです。Nitro なし(20MB)・音声ありなら、このツールの計算では約 1 分 50 秒までは 1080p、約 5 分までは 720p、それより長いと 480p が中心で、約 11 分 50 秒までです(音声を外すと約 16 分 50 秒まで)。

動画が長い場合は、必要な部分を先にトリムしてください。容量以外に、通信・権限・再生形式が原因で送れないこともあります。

計算では目標の95%を映像と音声に割り当て、容量を超えたときは、設定をさらに下げられる場合に1回だけ再圧縮します。出力が上限を超えたままなら、その状態を表示します。

再圧縮は画質を変えます。細かい文字、動き、音声を確認し、元動画を残してください。基本的なタグとチャプターの引き継ぎは抑えますが、映像・音声内の個人情報を隠す処理ではありません。

実測:同じ動画の容量と画質を比較

圧縮すると、見た目はどう変わる?

同じ10秒の動画を3つの設定で圧縮した結果です。画像は一部分を2倍に拡大しています。

元動画 23.28 MB → 0.73 MB、変換 1.1 秒
ffmpeg -i input.mp4 -map 0:v:0 -map 0:a:0? -c:v libx264 -crf 36 -preset fast -pix_fmt yuv420p -c:a aac -b:a 96k -movflags +faststart output.mp4
圧縮前の画面の一部(Tシャツの柄と上着)を2倍に拡大 同じ部分を、選んだ設定で圧縮した後 元画像 圧縮後
測った条件

2026-09-24、Windows の FFmpeg 8.1(H.264、preset fast)で 1080p・10秒の実写映像を各設定1回ずつ変換。画像は3秒地点の 480×270 を原寸で切り出し、2倍に拡大したものです。

実測データ(JSON)素材の配布元

Tears of Steel (CC) Blender Foundation | mango.blender.org, CC BY 3.0. 4K版を切り出して1080pに縮小し、変換後のフレームの一部を2倍に拡大

よく使われる用途
Discord無料枠・Nitro枠向け圧縮ゲームクリップの共有長尺動画の20MB/50MB調整

使い方

  1. 動画を選ぶスマホでは写真やギャラリーから選べます。長さを読み取れなかったときは、秒数を入れます。
  2. 目標の容量で圧縮Discordの公式ヘルプ(添付ファイル FAQ)では、上限は Nitro なしで 20MB、Nitro Basic で 50MB、Nitro で最大 1GB です。初期値は Nitro なしの 20MB です。ほかのプランでは目標容量を変えます。
  3. 確かめて送る容量、文字、動き、音声を確かめます。スマホでは「共有」から Discord を選べます。「共有」が出ないときは保存して、Discord で添付します。パソコンでは「動画を保存」で保存してから送ります。

おすすめ設定

細かい文字を共有
元の解像度、必要部分だけ
文字が読めるかをプレビューで確かめます。容量に収めるために、動画を短くする方法もあります。
短い映像を容量指定で送る
上限以下を目標に(Nitro なしなら 20MB。このツールは 500MB まで)
映像と音声には目標の 95% を割り当て、出力のバイト数が目標以下かを確かめます。超えたら、ビットレートをまだ下げられるときに 1 回だけ作り直します。

うまくいかないとき

出力が上限を超える

原因:ビットレートやファイルの入れ物の大きさの変動、長さの入力ミスなどです。

対処:長さを確かめます。1回の自動再圧縮のあとも超えるときは、動画を短くするか目標を変えます。

サイズ内なのに送れない

原因:送信先の制限、権限、通信、サービスの状態など、原因はいくつか考えられます。

対処:Discordのエラー表示を確かめ、小さい別のファイルでも起きるかを試して切り分けます。

よくある質問

Discord で送れる動画は何秒まで?

Discord が見るのは長さではなく、ファイルの大きさです。Nitro なし(20MB)・音声ありなら、このツールの計算では、約 1 分 50 秒までは 1080p、約 5 分までは 720p で収めます。それより長いと 480p が中心になり、約 11 分 50 秒までです(音声を外すと約 16 分 50 秒まで)。元の動画より細かくはしません。もっと長い動画は、送りたい部分をトリムしてから圧縮します。

必ず指定容量に収まりますか?

いいえ。1回再圧縮しても超えることがあります。上限内かどうかは、実際の出力バイト数で判定します。

スマホで完了しますか?

メモリや動画、ブラウザによります。入力の上限の500 MB以内でも、成功するとは限りません。まず短い動画で試してください。

記録には何が入りますか?

入力と出力のバイト数、使った長さ、目標容量、実行したコマンド、終了コード、処理時間です。画質やDiscordへの送信が成功するかは確かめていません。

フレームレートも自動修正されますか?

いいえ。CFRに揃える設定はありません。可変フレームレート(VFR)や音ずれは、専用のツールで確かめてください。

くわしい説明(設定の意味・制限・FFmpeg のコマンド)

設定の意味

目標MBと長さ
1 MB = 1,000,000バイト。動画の長さは切り取り指定ではなく、計算用の値です。
容量に合わせる解像度
映像のビットレートが400kbps未満なら短い辺を最大480、1200kbps未満なら720、それ以上なら1080にします。元より大きくはしません。
映像のビットレートの上限
目標に対して動画が短いときは、出力の大きさに合わせた上限(480p まで 4000、720p まで 7500、1080p まで 12000 kbps など。YouTube が推奨するアップロード時の値)で止めるので、目標より小さく仕上がります。
音声
残す場合は全体のビットレートの 5 分の 1(64〜128kbps)です。元に音声がなければ無音のままです。

使えるブラウザと制限

  • 入力は500 MBまで、長さは7200秒までです。端末によっては、もっと小さい動画でも失敗します。
  • 出力はMP4(H.264・AAC)です。HDRをSDRにきれいに変換すること、透過、すべての音声トラックを残すことはできません。
  • 広告・アクセス解析・プログラムの読み込みには通信を使いますが、動画ファイルは送信しません。

同じ処理を FFmpeg のコマンドで

10 MB・60秒のビットレート計算例
ffmpeg -i input.mp4 -map 0:v:0 -map 0:a:0? -c:v libx264 -b:v 1138k -maxrate 1252k -bufsize 2276k -preset fast -pix_fmt yuv420p -c:a aac -b:a 128k -movflags +faststart output.mp4
10,000,000 × 0.95 × 8 ÷ 60 ÷ 1000 の切り捨て(1266)から音声の128kbpsを引いた計算例です。実際の容量ではありません。ツールの「容量に合わせる」では、この映像ビットレート(1200kbps未満)だと短い辺を720以下に縮小します。

計算値と実測値は違う

計算した設定で圧縮したあと、出力の実際のバイト数で上限内かを判定します。超えていれば、ビットレートをまだ下げられるときに1回だけ再圧縮し、そのコマンドと結果も記録に残します。記録(JSON)は保存でき、次に設定を選ぶときの参考にできます。

画質はバイト数だけでは決まりません。字幕や画面の文字が読めるか、激しい動き、話し声を確かめてください。容量に収まっても、読めない・聞き取れないなら目的を果たせません。

次にやること