How to convert h.265 to av1 for the smallest files
- Step 1Check the size math before you commit — Auto AV1 ≈ 0.04 bits/pixel; auto H.265 ≈ 0.06. If your H.265 source was itself encoded near 0.06 bits/pixel, expect roughly a third smaller at auto. If your HEVC was already heavily compressed, the AV1 gain is smaller — re-encoding very low-bitrate sources rarely helps.
- Step 2Drop the H.265 / HEVC file in — Single file, opened locally in an off-screen
<video>to read frames. The browser must be able to decode your HEVC source; most current Chrome/Edge/Safari builds can. If it can't, you'll see a 'Could not load source video' message. - Step 3Choose a target bitrate (or auto) — For storage savings, leave Bitrate at 0 to take the ~0.04 bits/pixel auto target. To hit a hard storage budget, type a kbps value (max 50000). A practical AV1 1080p archive target is ~1.5–2.5 Mbps; 4K ~6–10 Mbps.
- Step 4Match the framerate to the source — Set Framerate to your source's real fps (24/25/30/50/60). Auto resolves to 30, which is wrong for high-framerate HEVC and will change the clip's duration. When in doubt, check the source fps in your player first.
- Step 5Encode on the GPU — The HEVC source decodes, each frame re-encodes to AV1 on the hardware encoder (keyframe every fps×2), and FFmpeg.wasm muxes the AV1 stream. Watch the encoded-frames progress; nothing uploads.
- Step 6Re-attach audio if you need it, then verify size — The AV1 output is video-only. If the source had audio you care about, run the source through the transcoder instead (which keeps audio). Compare the new AV1 file size against the HEVC original to confirm the saving was worth the re-encode.
AV1 vs H.265 per-pixel bitrate (JAD auto targets)
The auto bitrate each JAD encoder applies when you leave Bitrate at 0, multiplied out to common resolutions at 30 fps. These are the encoder's starting targets, not a quality guarantee.
| Resolution | Pixels | AV1 auto (0.04 b/px) | H.265 auto (0.06 b/px) | AV1 saving |
|---|---|---|---|---|
| 640×360 | 230,400 | ~0.9 Mbps | ~1.4 Mbps | ~33% smaller |
| 1280×720 | 921,600 | ~3.7 Mbps target | ~5.5 Mbps target | ~33% smaller |
| 1920×1080 | 2,073,600 | ~2–2.5 Mbps practical | ~3–3.7 Mbps practical | ~30% smaller |
| 3840×2160 | 8,294,400 | ~6–10 Mbps | ~9–14 Mbps | ~30% smaller |
When AV1 re-encode of H.265 pays off (and when it doesn't)
Re-encoding is lossy on top of lossy. The gain depends on how compressed the HEVC source already is.
| HEVC source | Re-encode to AV1? | Why |
|---|---|---|
| High-bitrate HEVC master (10+ Mbps 1080p) | Yes — strong gain | Plenty of headroom; AV1 reclaims ~30% with little visible loss |
| Typical streaming HEVC (~4 Mbps 1080p) | Modest gain | Some saving, but generation loss starts to matter |
| Already low-bitrate HEVC (<2 Mbps 1080p) | Usually not worth it | Little to reclaim; re-encode artifacts may exceed the size win |
| Need maximum playback compatibility | Keep H.265 | H.265 has wider device decode support; see h265-encoder |
Cookbook
Real H.265-to-AV1 conversions. 'Auto' uses the 0.04 bits/pixel target; pinned values are explicit kbps.
1080p HEVC master → AV1 archive copy
A high-bitrate HEVC master has lots of headroom, so AV1 reclaims around a third with minimal visible loss. Leave bitrate on auto and set the real fps.
Source : 1920x1080, 30 fps, HEVC @ ~12 Mbps, 800 MB
Settings: Bitrate 0 (auto ≈ 2.5 Mbps), Framerate 30
Result : AV1 video-only stream, ≈ 160 MB
Saving : ~80% vs the over-provisioned master
(~30% vs an equivalent H.265 re-encode)Pin a storage budget exactly
When you have a hard per-file budget, set the kbps directly instead of trusting auto. Bitrate maxes at 50000 kbps.
Goal : keep each 1080p clip under 30 MB for ~2 min
30 MB × 8 / 120 s ≈ 2,000 kbps
Settings: Bitrate 2000, Framerate 30
Result : ~2 Mbps AV1 stream within budget4K HEVC → 4K AV1
Arc and RTX 40-series handle 4K AV1 in hardware. Pin a bitrate for a delivery master.
Source : 3840x2160, 30 fps, HEVC @ ~40 Mbps GPU : RTX 4080 Settings: Bitrate 9000 (9 Mbps), Framerate 30 Result : 4K AV1 master ~30% smaller than a 13 Mbps H.265 cut
Diminishing returns on already-small HEVC
Re-encoding a low-bitrate HEVC clip to AV1 often isn't worth the generation loss. Measure before keeping the result.
Source : 1080p HEVC @ 1.8 Mbps (already small)
Auto AV1: ~2.5 Mbps target → could be LARGER if you accept auto
Fix : pin Bitrate 1500 to actually shrink it, and inspect
quality — the re-encode artifacts may not be worth it.Keep audio: use the transcoder instead
Because the AV1 encoder is video-only, an HEVC clip with a soundtrack loses audio. The transcoder re-encodes video and keeps audio in one pass.
Need : HEVC-with-audio → smaller file with audio kept
This tool: drops audio (video-only AV1)
Use : /video-tools/video-transcoder
(or keep H.265 via /video-tools/h265-encoder)Edge cases and what actually happens
Auto bitrate larger than the HEVC source
No savingIf your HEVC was already encoded below ~0.04 bits/pixel, the AV1 auto target can be higher than the source bitrate — producing a similar-or-larger file. Pin a lower Bitrate manually to actually shrink already-compressed HEVC, and check quality before committing.
Generation loss from re-encoding
Quality trade-offThis is a lossy re-encode on top of lossy HEVC. Each transcode generation loses a little detail. For a one-time archive shrink of a high-bitrate master that's fine; for repeated round-trips it accumulates. Encode from the highest-quality source you have.
No hardware AV1 encoder present
Not availableThe encode is hardware-only. Without an AV1 encode-capable GPU (RTX 40-series / Arc / Apple M3+) the tool throws 'Hardware encoding for AV1 is not available on this device.' There's no software AV1 fallback — switch hardware or stay on H.265.
Browser can't decode the HEVC source
Could not loadFrames are read by playing the file in an off-screen <video>. If your browser lacks HEVC decode (some Linux/Firefox builds), you'll get 'Could not load source video.' Transcode the HEVC to H.264 MP4 first with the transcoder, then encode that to AV1.
Audio dropped
By designThe hardware AV1 path encodes video only and does not carry the source audio. The output is a silent AV1 video stream. Use the transcoder when audio must survive the conversion.
Framerate left on auto for 50/60 fps source
Speed driftAuto resolves to 30 fps. A 60 fps HEVC clip left on auto re-encodes at 30 fps, doubling its apparent duration. Set the Framerate field to the source's true fps.
10-bit HEVC source
Profile noteThe probe profile is av01.0.04M.08 — AV1 Main, 8-bit. A 10-bit HEVC source is decoded and re-encoded under the 8-bit configuration the encoder negotiates; expect 8-bit output. For HDR/10-bit-preserving masters, AV1 hardware via this tool may not be the right path.
Output container
ExpectedThe AV1 stream is muxed by FFmpeg.wasm and downloaded as <name>-av1.mp4. AV1 plays most reliably in MKV/WebM; if a strict MP4 player balks, re-mux without re-encoding via the web optimizer or transcoder.
Large archive re-encode
SupportedOn Pro + Media the output streams to a save-file handle, so multi-gigabyte archive re-encodes don't need to fit in browser memory. The per-file ceiling is 100 GB streaming.
Requires Pro + Media tier
Tier gateAV1 hardware encode is gated to the Pro + Media tier. Free and Pro tiers can't run it. Plan accordingly before a large library migration.
Frequently asked questions
Is AV1 really smaller than H.265?
At matched quality, yes — and JAD's defaults reflect it: AV1's auto target is 0.04 bits/pixel vs H.265's 0.06, roughly a third less data at the same resolution. The real-world saving depends on content and how compressed your H.265 source already was.
Is this a remux or a real re-encode?
A real re-encode. The H.265 source is decoded and the frames are re-encoded to AV1 on your GPU. That's why you get genuine AV1 compression — but also why it's lossy-on-lossy and hardware-gated.
Will re-encoding lose quality?
Some, yes — every lossy transcode generation loses a little detail. For a one-time shrink of a high-bitrate HEVC master the loss is usually invisible. For already-small HEVC the artifacts can outweigh the size win; measure before keeping it.
What bitrate should I use?
For storage savings leave Bitrate at 0 for the ~0.04 bits/pixel auto target. To hit a hard budget, compute kbps = target_MB × 8 ÷ duration_seconds and type it in (max 50000). For already-compressed HEVC, pin a value below the source bitrate or you won't shrink it.
Why might the AV1 file not be smaller?
Because auto bitrate is resolution-based, not source-based. If your HEVC was already under the AV1 auto target, auto could produce a similar or larger file. Pin a lower bitrate manually to actually reduce already-compressed sources.
Does it keep the audio?
No — the AV1 encoder is video-only. To re-encode and keep audio, use the video transcoder instead.
Do I need a special GPU?
Yes for the AV1 step: hardware AV1 encode needs an RTX 40-series, Intel Arc, or Apple M3/M4. Without it the tool refuses (no software fallback). If your hardware can't, the H.265 encoder has far broader hardware support.
Can it convert H.264 to AV1 too?
Yes — any browser-decodable source works, including H.264. The 'H.265 to AV1' framing is just the most common storage-reclamation case. For a general format change, see the transcoder.
What about 10-bit / HDR HEVC?
This tool encodes under an 8-bit AV1 Main profile (av01.0.04M.08), so 10-bit/HDR is not preserved through the hardware path. Keep HDR masters in their original codec, or use a dedicated HDR-aware pipeline.
Is my video uploaded?
No. Decode, re-encode, and mux all happen in your browser. Your HEVC library never leaves the machine.
How do I see the size difference for myself?
Encode the same source as AV1 and as H.265 and compare file sizes at matched quality — walk through it in the AV1 vs H.265 comparison.
What plan do I need?
Pro + Media. Hardware encoding and streaming-to-disk are gated to that tier; the per-file video ceiling there is 100 GB streaming.
Privacy first
Every JAD Video tool runs entirely in your browser via WebCodecs and FFmpeg (WebAssembly). Your video files never leave your device — verified by zero outbound network requests during processing.