WordPress can store many types of media files, but whether they play in a visitor’s browser depends on the format and codec, not just the file extension.
A media file has two parts:
- Container (the file type, e.g.
.mp4,.mov,.m4a) - Codec (how the video or audio is compressed, e.g. H.264, H.265, AAC)
Browsers support different codecs. For example, a .mov file using the H.265 (HEVC) codec may play in Safari but fail in Chrome or Firefox. The file extension alone does not guarantee compatibility.
Similarly, audio files such as .m4a must contain a recognised audio codec (typically AAC or ALAC). If the codec is missing, unusual, or not declared correctly, WordPress may refuse the upload or browsers may not play it.
Best Practice
To make sure your media works on as many devices and browsers as possible:
- Video: Upload files saved as .mp4
- Audio: Upload files saved as .mp3 or .m4a
- Images: Upload .jpg, .png, or .webp
If a file will not upload or will not play:
- Try exporting or saving it again as .mp4 (for video) or .mp3 (for audio).
- If you recorded it on a phone and it doesn’t work, use your device’s “Share” → “Save as…” or “Export” option to create a more compatible version.
- If you downloaded it from somewhere else and it doesn’t work, the file may not be in a web-friendly format. Ask the person who created it for an .mp4 (video) or .mp3 (audio) version.
In general, if you stick to .mp4 for video and .mp3 for audio, you will avoid most problems.
More Details
For widest compatibility across devices and browsers:
- Video:
.mp4using H.264 video + AAC audio - Audio:
.mp3or.m4ausing AAC
These formats are widely supported and likely to remain so.
If media does not play:
- Check the codec (not just the extension).
- Re-encode the file into a widely supported format.
- Avoid relying on browser-specific formats.
