"You must have an Opus codec installed"

They pasted an exact error string into search. The fixes on offer tell them to install DC-Bass Source Mod or a codec pack from a site they have never heard of. They want the message gone without installing anything questionable.

Nothing is wrong with your file, and you do not need to install a codec. The message means the Windows app you double-clicked has handed the file to Windows to decode, and Windows has no decoder registered for Opus outside the browser. Three fixes, in order of how little they cost you: open the file in a browser tab, which already decodes Opus and needs nothing installed; open it in VLC, which carries its own decoder; or convert it once to MP3 or M4A so every player on the machine stops arguing. The converter on this site reads Opus and writes both, and it runs inside the page rather than sending the file anywhere.

What the message actually means

The wording varies a little between apps and versions, but it is always some form of:

You must have an Opus codec installed to play this file.

Most people meet it in WhatsApp's Windows app, right after saving a voice note. It also turns up in Explorer's preview pane and in older DirectShow-based players. None of those apps decode audio themselves. They ask Windows for a decoder that matches the file, Windows finds nothing that claims Opus, and the app reports what it was told.

Opus is a normal, open, royalty-free codec, standardised by the IETF in 2012 as RFC 6716, and a .opus file is Opus inside an Ogg container. It carries most of the voice and video calls on the internet. The file is not damaged, not encrypted and not exotic. It is a format Microsoft never wired into the desktop media stack.

The giveaway is that the same file plays fine in Chrome or Edge. The browser did not ask Windows for anything; it shipped its own Opus decoder, because a browser without one could not do WebRTC.

Why the codec packs in the top results are the wrong fix

Search this error and you will be told to install a codec pack, or a specific DirectShow filter, from a download page you have never heard of. It usually does work. It is still a bad trade, for four reasons.

  • It is a system-wide change to open one file. DirectShow filters register globally and compete for priority with whatever is already there. A pack that fixes Opus can change which decoder handles your MP4s, and the symptom shows up weeks later as stuttering video in an unrelated program.
  • The original download page is rarely the one you land on. Codec packs are heavily mirrored, and the mirrors are where the bundled extras live. The pack may be clean; the copy you found may not be.
  • It fixes fewer apps than you expect. Anything that decodes audio internally — most modern editors, most modern players — ignores the filter you just installed. Anything built on Media Foundation rather than DirectShow may ignore it too. You can install a pack and still get the same message.
  • It does not travel. Convert the file and it plays on the colleague's laptop, the car, the phone and the meeting-room PC. Install a codec and you have fixed exactly one computer.
Renaming it does not work

Changing note.opus to note.mp3 changes the label, not the contents. The player reads the first few bytes, finds an Ogg page header where an MP3 frame should be, and fails with a different error than the one you started with. The bytes have to be decoded and re-encoded for the extension to become true.

Playing it without converting anything

If you only need to hear the file once, do not convert it at all. Several things on your machine already read Opus.

Where you open itPlays .opus as installedWhat it costs
Chrome, Edge or FirefoxYesNothing. Press Ctrl+O in a blank tab, or drag the file onto it
VLCYesOne well-known install, no system-wide filters
foobar2000YesAs above, lighter
Windows Media Player / the Media Player appNo, by defaultMicrosoft's free Web Media Extensions in the Microsoft Store adds Ogg-family support; whether it covers .opus on your build is worth testing before trusting
Films and TVNo, by defaultSame package, same caveat
WhatsApp's Windows appNoThis is where the message comes from
Audacity 3.2 and laterYes, imports directlyNothing, if you already have it

Try the browser first. It is already installed, it needs no permission from anyone, and dragging a file onto a tab is faster than reading the rest of this page. It is also why the error grates: the machine can plainly decode the file, it just will not do it for the app that asked.

The no-install fix: convert it once

Playing it solves today. Converting solves the car stereo, the transcription service, the editor that will not import it and the person you are about to forward it to. Drop the .opus file on the converter, pick MP3 or M4A, and download the result. FFmpeg is compiled to WebAssembly and runs inside the tab, so the file never leaves the machine — there is no server here to send it to. Two things are worth knowing before you pick a setting.

It has to be a re-encode. Opus cannot be rewrapped into an MP3 or an M4A the way AAC can be moved between containers, so the audio is decoded and compressed again. That takes time roughly in proportion to the length of the recording, and it is a second lossy generation. Nothing anywhere can undo the first one, so the aim is only to keep the second cheap.

Match the source, do not exceed it. Voice notes are encoded very small — typically well under a quarter of a megabyte per minute — because Opus is unusually good at speech at low bitrates. Re-encoding that to 320 kbps MP3 produces a file many times larger carrying exactly the detail the original had. For a spoken recording, 64 or 96 kbps is honest, and mono is fine because the recording was mono to begin with. The converter shows the source bitrate before you commit and warns when the number you have chosen is higher than the number the file arrived with.

One detail specific to Opus: it works internally at 48 kHz and decodes to 48 kHz, not the 44.1 kHz of CDs and most MP3s. MP3 and AAC both handle 48 kHz, so leave the sample rate alone unless something downstream demands 44.1.

If the file came out of WhatsApp, the route through the phone is often shorter than the route through Windows — getting a WhatsApp voice note out as an MP3 covers the export path on both iOS and Android, including where the app hides the file.

Why Windows still ships without an Opus decoder

Not licensing. Opus is royalty-free by design, which is most of the reason it won the standards argument in the first place.

It is a servicing decision. Microsoft moved optional format support out of the operating system and into separate Store packages, so decoders can be updated without a Windows update and licensed formats can ship only where they are paid for. Ogg-family support is one of those packages. It is absent from a clean machine, most people never learn it exists, and the error message does not mention it. Chromium and Firefox went the other way and bundle their own decoders, which is why the same file behaves so differently a few centimetres apart on your screen.

The same split explains a family of near-identical complaints — M4A files refusing to open in Windows Media Player is the same shape of problem with a different codec and a different set of workarounds.

Doing a whole folder of them

An exported WhatsApp chat arrives as dozens of voice notes at once. The converter here takes one file per run for a format job, which is fine for two or three and tedious for forty. If you are facing forty, install FFmpeg, open PowerShell in the folder, and run:

Get-ChildItem *.opus | ForEach-Object { ffmpeg -i $_.FullName -c:a libmp3lame -b:a 96k "$($_.BaseName).mp3" }

In the older Command Prompt the equivalent is for %f in (*.opus) do ffmpeg -i "%f" -c:a libmp3lame -b:a 96k "%~nf.mp3". Both leave the originals alone. Add -ac 1 if the source is mono and the output insists on being stereo.

For a handful of files the browser is still the shorter path: the engine is a 32 MB component fetched on the first conversion and cached for a year, so the second and third files start straight away.

What will not help here is our own phone app. Android 1.0's verified conversion picker accepts MP3 and WAV, so it refuses an .opus file before you get anywhere. Convert in the browser first; the app is the right tool afterwards, for the trimming and merging that usually follows a pile of voice notes.

One thing this page will not tell you to do

Some advice will suggest re-encoding the file with different Opus settings. This site cannot write Opus at all. The reference encoder, libopus, crashes this WebAssembly build with memory access out of bounds in every variant tested — at 48 kHz, into an Ogg container, at every bitrate — and FFmpeg's own experimental encoder is materially worse at the same bitrate, so quietly substituting it would hand you a worse file. Reading Opus works perfectly, which is the direction that matters: the file you are stuck with is Opus, and what you need is something else.

Do it right now, in this tab

The converter on the home page handles this. Free, no upload, no sign-up.

Open the converter

Or do it on your phone

The Audio Converter app is free on iPhone and Android, with the converter and thirteen editing tools in one place.

Free on both stores. The web converter above stays free too — no account, no upload, no file limit.