FFmpeg Cookbook

Video Diagnostics Tool

Diagnose video size, duration, resolution, and estimated bitrate locally, then check Discord, Gmail, WhatsApp, and vertical-video fit with recommended next tools.

Diagnose a video file

MP4, MOV, WebM, and more. Analysis runs locally in your browser.

Popular uses
Pre-upload size checksDecide whether compression is neededCheck social, email, and Discord fit

What this tool does

  • Reads video metadata locally without uploading your file
  • Summarizes size, duration, resolution, estimated bitrate, and aspect ratio
  • Checks Discord Base / Basic / Nitro, Gmail, and WhatsApp size targets
  • Checks 9:16 fit for Shorts, Reels, and TikTok
  • Generates target-size bitrate estimates and reference FFmpeg commands

How to use

  1. 1

    Choose a video

    Drop MP4, MOV, WebM, or another browser-readable video. The file stays on your device.

  2. 2

    Read the diagnosis

    Check size, duration, resolution, estimated bitrate, and platform fit.

  3. 3

    Pick the next tool

    Move to compression, trimming, SNS resizing, or a dedicated Gmail/WhatsApp/Discord compressor based on the result.

What each setting means

Estimated bitrate
Calculated from total file size and duration. It does not split video/audio/subtitle streams.
Size checks
Compares the current file size against common destination targets.
Recommended bitrate
Back-calculates video bitrate from target size, duration, a 0.92 safety factor, and 64/96 kbps audio.
9:16 check
Flags whether the aspect ratio sits in the 0.52-0.62 range used for vertical video.

Recommended settings

Unsure whether to compress
Run Diagnose first
Avoid unnecessary re-encodes when the file already fits.
Discord / Gmail / WhatsApp upload fails
Open the matching dedicated compressor from the result
Those tools calculate bitrate from the actual destination limit.
Preparing a vertical social clip
If 9:16 fails, open SNS Resizer
Size alone does not prevent cropping or letterboxing problems.

Common pitfalls

Symptom: Codec name is missing

Cause: The browser video element exposes limited codec details.

Fix: Use the codec compatibility matrix or desktop ffprobe for deep stream inspection.

Symptom: Estimated bitrate differs from ffprobe

Cause: This tool estimates from total file size, so audio, subtitles, and metadata are included.

Fix: Use it as a planning value, then verify final output size after encoding.

Symptom: Small file still crops badly on social apps

Cause: Aspect ratio and framing are separate from file size.

Fix: Use SNS Resizer to make a clean 9:16, 1:1, or 16:9 export.

Equivalent FFmpeg commands

Reference commands you can run on the desktop FFmpeg CLI.

Back-calculate video bitrate from target size
video_kbps = target_MB * 0.92 * 8192 / duration_seconds - audio_kbps
Example for a 25 MB target
ffmpeg -i input.mp4 -c:v libx264 -preset medium -b:v 1000k -maxrate 1000k -bufsize 2000k -c:a aac -b:a 96k -movflags +faststart output.mp4
When vertical resizing is needed
ffmpeg -i input.mp4 -vf "scale=1080:-2,crop=1080:1920" -c:v libx264 -crf 23 -c:a aac output.mp4

Browser support & limits

  • Limited to metadata exposed by the browser
  • Does not inspect detailed codec strings, audio track count, or subtitle streams
  • Recommended bitrates are planning estimates, not guaranteed final sizes

Privacy

This tool runs ffmpeg.wasm directly in your browser. Files never leave your device — everything runs locally. Read the privacy policy →

Frequently asked questions

Is my file uploaded?

No. The browser reads local metadata through the video element; the file is not sent to a server.

Why does Discord show 10 MB / 50 MB / 500 MB?

Discord lists Base as 10 MB, Basic as 50 MB, and Nitro as 500 MB. Server boosts may change the effective channel limit.

Is Gmail 25 MB per file?

For personal Gmail, the total attachment limit is 25 MB. Above that, Gmail switches the attachment to a Google Drive link.

Can this tool compress the video directly?

This page diagnoses and recommends. Use the linked compressor when the result says compression is needed.

Does it work on phones?

Yes. Metadata diagnosis is lightweight, so it is more stable on phones than full browser-side FFmpeg encoding.

Related tools