WAVE MP4
MP4 · to · MP4

Reduce MP4 file size

Sibling of Compress MP4 for the phrasing you probably searched. Pick your target size, plug into the bitrate formula, encode. Wave handles source-format inefficiency; HandBrake or ffmpeg locally handles specific size targets.

Under the hood

What actually changes

MP4 source VIDEO H.264 / HEVC AUDIO AAC MP4 same streams VIDEO H.264 (re-encode) or copied AUDIO copied REMUX* or re-encoded
Bitrate x duration is the entire physics of file size. Wave shrinks inefficient sources; target-size MP4 shrink needs HandBrake or ffmpeg locally at the computed bitrate. * Wave inspects the source and picks the fast path when it can.

Reducing MP4 file size means lowering the video bitrate through a re-encode. The container itself is already compact (overhead under 1%) and stream copies preserve size exactly - any real reduction requires the encoder to run at a lower bitrate than the source. The full bitrate primer, including the target-size formula and encoder-mode choices (CRF, CBR, VBR), is in Video bitrate explained.

The one-line formula: target size in megabytes x 8192 divided by duration in seconds gives total kilobits per second; minus about 128 kbps for AAC audio leaves your video-bitrate target. Example: a 5-minute clip that needs to fit 25 MB has ~682 kbps total, so ~554 kbps for video. That's a challenging target at 1080p - drop to 720p (needs roughly half the bitrate for equivalent quality) or accept visible motion artefacts.

Where Wave contributes: if your source MP4 is an inefficient codec (WebM, RMVB, MJPEG, MPEG-1/2, ProRes), Wave re-encodes to H.264 during the MP4 conversion (see Codecs vs containers for why codec choice dominates file size) and the resulting file is typically 3-10x smaller. For MP4-in / MP4-out with a tight target, HandBrake's Two-Pass Constant Bitrate mode is the tool: Video Codec H.264 (x264), Encoder Preset Slow, Constant Bitrate at your computed target, Two-Pass Encoding enabled under Advanced.

ffmpeg for a scriptable target-bitrate: `ffmpeg -i input.mp4 -c:v libx264 -b:v 554k -c:a copy output.mp4`. For a precise size fit: two-pass with `-pass 1` then `-pass 2`. For quality-first with variable file size: `-crf 22` (typical H.264 sweet spot). Any of these lands within 1-2% of the intended size when configured right.

How to convert

Three steps.

  1. 01

    Step 1

    Compute your target bitrate: (target MB x 8192 / duration in seconds) - audio bitrate = video bitrate in kbps.

  2. 02

    Step 2

    If your source is WebM, RMVB, or other inefficient codecs: Wave handles the codec substitution automatically during the MP4 conversion, which typically gives 3-10x size reduction at high quality.

  3. 03

    Step 3

    For MP4-in with tight target: HandBrake with Constant Bitrate + Two-Pass encode at the computed bitrate, x264 encoder preset Slow.

FAQ

Answers, specifically.

Can I just drop the resolution instead of the bitrate?

Yes and it's often the better choice. 720p at 1500 kbps looks better than 1080p at 1500 kbps because 720p needs less bitrate to encode. Rule of thumb: halving the resolution (1080p -> 540p, or 720p -> 360p) needs roughly half the bitrate for equivalent perceived quality.

How much can I reduce without losing quality?

For H.264 compressed at Constant Rate Factor 20-22 (HandBrake's RF slider), you can typically halve the file size with no perceptible loss on any content. RF 24 hits roughly one-third of source size with minor loss on high-motion content. Below that, quality trade-offs become case-dependent.

Does re-encoding lose quality even at high bitrates?

A small amount, technically. Every H.264 encode is lossy, so a second-generation encode of already-H.264 content adds cumulative loss. At high bitrates (near source), the loss is well below perceptual threshold. Only extreme workflows (multiple re-encodes in an editing pipeline, then final delivery) see visible accumulation.

HEVC re-encode for better compression?

Yes if the destination supports HEVC. HEVC at RF 22 hits roughly 60% of the H.264 file size at the same quality. HandBrake's "Video → Video Codec → H.265 (x265)" enables it; Wave's output is H.264-only currently.

What about audio? Does compressing audio help?

Marginally. Dropping AAC from 128 kbps to 96 kbps saves 32 kbps x duration - about 1.2 MB per hour. Speech content survives 64 kbps AAC or Opus fine; music benefits from staying at 128 kbps. For meaningful size reduction, video bitrate is the lever.

File is 4 GB and needs to be 50 MB. Realistic?

Only if the source is high-bitrate camera capture (drone, DSLR H.264 at 100 Mbps) or a raw format. A 4 GB source at 100 Mbps for 5 minutes can compress to 50 MB at 1.3 Mbps and still look fine at 1080p. A 4 GB source that was already efficiently compressed (a 2-hour movie at 4.5 Mbps H.264) cannot compress 80x without severe quality loss - the source is already near the limit of what H.264 can do at that quality.

What if I just need "smaller by half"?

HandBrake RF 22 is the practical answer. Set encoder to H.264 x264, preset Slow, RF 22, and let it run. For most consumer video (screen recordings, phone captures, downloaded clips), the output lands at 40-55% of source size at visually-transparent quality with no bitrate math required.

Related

Other converters.