Confirm codec support in 10 seconds
Open the Codec Test. Focus on the Video Codecs section:
- mp4 (commonly H.264/AVC inside an MP4 container)
- webm (commonly VP9 inside a WebM container)
- ogg (older Theora-in-Ogg video)
Each row shows Probably, Maybe, or No. Keep this tab open and re-check it after each fix so you are not guessing.
Common symptoms:
- A player shows a black rectangle with audio only
- "Video not supported" or "format not supported"
- You can play video in one browser but not another
- A site forces low quality or fails on full screen
How to interpret the Codec Test quickly
- If mp4 is No, many sites fail (MP4/H.264 is the baseline format across the web).
- If webm is No, some sites fall back to MP4; others fail if they publish WebM-only.
- If audio rows (AAC/MP3/Ogg) are No, you can see silent playback or "audio not supported" errors.
If you want a single high-level sanity check, run the Full Browser Test too; it can expose outdated browsers and missing media features.
Fix 1: Update the browser and reboot once
Codec support can change with browser updates and OS media stack updates.
- Chrome/Edge/Firefox: Menu > Help > About and apply updates, then relaunch.
- Safari: update macOS under System Settings > General > Software Update.
After the restart, rerun the Codec Test and check mp4/webm again.
Fix 2: Turn hardware acceleration on (or test the opposite)
Hardware acceleration affects video decode performance and stability.
- Chrome/Edge: Settings > System and performance > Use hardware acceleration when available → On → relaunch.
- Firefox: Settings > General > Performance → enable hardware acceleration.
If video plays but stutters or shows green blocks, update your GPU driver and keep acceleration enabled. If enabling acceleration makes playback worse on your machine, toggle it off as a test and retest.
Use the WebGL Test to confirm your GPU path is not falling back to software.
Fix 3: If mp4 is "No", fix MP4/H.264 support
This is the most common root cause behind "video not supported."
- Start with our targeted guide: Fix H.264 Not Supported.
- On Windows, also check if you are on an N edition missing media components. Installing the Media Feature Pack can restore system codecs.
- On Linux, some Chromium builds ship without H.264 support. Use a codecs-enabled build from your distro or install the distro’s codec packages, then retest.
After changes, rerun the Codec Test and confirm mp4 is now Probably or Maybe.
Fix 4: If streaming sites fail, check DRM restrictions
Codec support is not the same as DRM support. A browser can decode MP4 but still fail on Netflix-like streams if DRM is blocked.
- Try the stream in another supported browser to isolate whether the issue is profile-specific.
- If only DRM sites fail, use our Widevine guide: Fix Widevine Missing.
- In Chrome/Edge, verify Protected content is allowed under Settings > Privacy and security > Site settings.
Fix 5: Disable extensions that block media requests
Some blockers break video players by blocking player scripts, ad segments, or tracking endpoints the player depends on.
- Disable aggressive filter modes in ad blockers and privacy extensions for the affected site.
- Test in an Incognito/InPrivate window with extensions disabled.
- If video works there, allowlist the domain and keep the extension rules tight elsewhere.
Fix 6: Clear the site’s cached player data
Players cache manifests and service worker assets. When they get out of sync, playback breaks.
- Hard reload the page (Windows/Linux: Ctrl+Shift+R; macOS: Cmd+Shift+R).
- Clear the site’s stored data (cookies and storage) in browser settings.
- Sign back in and retry playback.
Then rerun the Codec Test. If mp4/webm support is unchanged but playback now works, the issue was cached site state.
Verify the fix
Return to the Codec Test and confirm the rows you need are Probably or Maybe, especially mp4. Then test the original video again in the same browser session.
If the Codec Test looks healthy but a single site still fails, the site is likely enforcing DRM, blocking your region, or failing on a player script. Test in another browser profile and another network to isolate it.
