A video won't play, and somebody tells you to install a codec pack. In 2005 that was good advice. Today it mostly isn't. Windows already handles the common formats, the apps that come with Windows don't use codec packs at all, and free players carry their own decoders. A codec pack can still be useful in a few specific situations - but there's usually a simpler, safer fix.

#What a codec pack actually is

A codec is the piece of software that unpacks a particular kind of compressed video or audio (Codecs vs containers explains the idea in plain English). A codec pack installs a bundle of them into Windows at once, so that programs relying on Windows' older plug-in systems - called DirectShow and Video for Windows - can suddenly play many more formats.

The best-known is the K-Lite Codec Pack, published by Codec Guide. Its core is LAV Filters, a set of decoders built on the same open-source FFmpeg libraries that VLC uses, and it bundles the Media Player Classic - Home Cinema player. Back when Windows couldn't play DivX, Xvid, MKV or FLAC without help, packs like this were how everyone made their downloads work.

#Why it mostly doesn't help any more

Windows' own apps ignore it

The apps that come with Windows 10 and 11 - Media Player, Movies & TV and Photos - don't use DirectShow. They use a newer system called Media Foundation, and they get extra formats from Microsoft's own extensions in the Microsoft Store. Installing K-Lite does nothing for them. If your problem is "Media Player says it can't play this", a codec pack won't change that.

Windows already plays the common formats

Out of the box, Windows plays MP4, MOV, MKV, AVI and WMV files with H.264 video and AAC or MP3 audio. The real gaps are specific, and each has an official fix:

Instead of a codec pack

What to install for each format Windows is missing

If the file isInstall from the Microsoft StoreCost
HEVC / H.265 (iPhone video)HEVC Video Extensions$0.99
AV1AV1 Video ExtensionFree
VP9 / WebMVP9 Video ExtensionsFree
MPEG-2 (.mpg, .vob)MPEG-2 Video ExtensionFree
.heic photosHEIF Image Extensions (plus HEVC)Free
FLV, RMVB and other old formatsNothing - use VLC, or convert to MP4Free
These work in every Windows app, from the official source. No codec pack covers Windows' own apps.

HEVC Video Extensions explained covers the one paid extension, including whether you actually need it.

Modern players bring their own decoders

VLC, MPV and Media Player Classic all contain their own decoders and don't depend on what Windows has installed. VLC in particular plays almost anything - HEVC, AV1, MKV, FLV, old DivX files - with nothing else to install. For simply watching a video, it's the quickest fix there is.

#When a codec pack still makes sense

  • You use the classic Windows Media Player (now called Windows Media Player Legacy in Windows 11) or another DirectShow player, and want it to handle formats it doesn't by default.
  • An older video editor or tool imports video through DirectShow and refuses files that VLC plays fine.
  • You want Media Player Classic set up with good defaults. K-Lite is a convenient way to install it with LAV Filters in one go.

If none of those describe you, you don't need one.

#Staying safe

  • Never install a "codec" a website asks for. "You need to download this codec to watch the video" was one of the most common ways to spread malware in the 2000s, and the trick still turns up on dodgy streaming sites. A real video player never needs you to download something from the page you're watching on.
  • If you do want K-Lite, get it from codecguide.com, the official site. Download portals often wrap installers in their own extra software. Read each install screen rather than clicking straight through.
  • Only ever have one codec pack installed. Packs that install competing decoders for the same formats can conflict and break playback that used to work. Uninstall the old one before trying another.

#What to do instead

  • You just want to watch it: install VLC.
  • You want Windows' own apps to play it: install the specific extension from the table above.
  • You're sending it to someone else: convert it to an MP4 with H.264 video and AAC audio, so they don't need to install anything. Wave does this in your browser - see all converters - without uploading the file. For an iPhone video, which is usually HEVC, turn on Make it play everywhere so Wave re-encodes it to H.264 instead of copying the HEVC.
  • It's an Android phone saying "codec not supported": VLC for Android carries its own decoders too, and the same MP4 conversion fixes it for every phone.

#The short version

  • Codec packs add decoders for older DirectShow players. Windows' own apps don't use them.
  • Windows already plays MP4, MOV, MKV, AVI and WMV. For HEVC, AV1, VP9 and MPEG-2, Microsoft's Store extensions are the official fix.
  • For just watching, VLC is the simplest answer. For sharing, convert to H.264 MP4.
  • Never install a codec a website tells you to download.