2026-08-13
Why your iPhone video won’t open on Windows (and how to fix it without paying for a codec)
A video that plays perfectly on the iPhone that shot it sometimes just won't open at all once it lands on a Windows PC — no preview, sometimes an outright error dialog. That's not a corrupted file. It's a codec Windows doesn't include out of the box, and the fix Microsoft itself recommends costs money and has to be repeated on every PC you use. Here's what's actually going on, the exact message you're probably staring at, and how to get past it without buying anything or uploading the video to a website first.
Why the file is HEVC in the first place
Since iOS 11 in 2017, the iPhone Camera app has recorded video (and photos) using Apple's more
efficient formats by default — HEVC (H.265) for video instead of H.264 — cutting file size by roughly
half at similar quality, according to 9to5Mac's
coverage of Apple's original announcement. That default never went away. Apple's
own support page spells out where the switch actually lives — Settings → Camera → Formats — and
what the two options do: "High Efficiency" (HEIF/HEVC) is the default, and "Most Compatible"
(JPEG/H.264) exists specifically because, in Apple's own words, not every device or piece of software
can open the space-saving formats. Most people never go looking for that setting, so most iPhone
video that reaches a Windows PC — AirDropped, texted to yourself, pulled off a cable — is HEVC inside
a .mov or .mp4 wrapper.
What Windows actually shows you
Microsoft's own support page for this exact problem gives the error verbatim: "You need an extension to use this file." Its own recommended fix is to buy one — install "HEIF Image Extensions" (free) and "HEVC Video Extensions" ($0.99, a one-time Microsoft Store purchase), then restart the Photos app. Microsoft's own codec documentation confirms the same thing applies to Windows Media Player and other apps: HEVC isn't a codec Windows ships with, it's a separate add-on, installed one machine at a time.
What NearVid actually does about it
NearVid's ffmpeg.wasm engine decodes H.264 and H.265/HEVC sources natively in software — the
decoder is a completely separate piece of code from the GPL-only libx264/libx265 encoders NearVid
deliberately doesn't ship (see NearVid's own build-story post for why), so reading an iPhone's HEVC
.mov works the same way whether or not the browser you're using, or the Windows PC
you'll eventually open the result on, has any HEVC support installed at all. "Convert to WebM"
re-encodes that footage to VP8 + Vorbis — a free, open format that plays everywhere on the web,
without installing anything. If your browser also supports H.264 encoding — Chrome and other
Chromium-based browsers, checked automatically rather than guessed from the browser name — NearVid's
"Convert to MP4" card appears too, and produces an .mp4 that plays even more
universally; whether that specific card shows up for a specific HEVC source file also depends on
whether your browser can decode that source's codec in the first place, which NearVid checks silently
per file before ever showing the option. Either re-encode path shares the same High/Medium/Low
quality preset, with an "≈" estimate of the output size shown before you commit. Worth being clear
about one thing Trim doesn't do here: it's a lossless stream copy that never touches the codec, so
trimming an HEVC clip down to a shorter HEVC clip won't fix the Windows problem on its own — running
it first just makes whichever re-encode you do next faster.
The honest summary
None of this is a NearVid quirk — it's Apple's and Microsoft's own defaults simply not lining up. An iPhone has recorded HEVC by default since 2017, and Windows still doesn't include an HEVC decoder out of the box, so Microsoft's own documented fix is a $0.99 Microsoft Store purchase, repeated on every PC you use it on. Converting the file once, in the browser, into a format Windows already plays skips the purchase and the install — and since NearVid never uploads the video anywhere to do it, it also skips sending a personal recording to some server just to find out whether it'll open.