The HTML <audio>
element is used to play an audio file on a web page.
The HTML <audio> Element
To play an audio file in HTML, use the <audio>
element:
Example
<!DOCTYPE html> <html> <body> <audio controls> <source src="demo.ogg" type="audio/ogg"> <source src="demo.mp3" type="audio/mpeg"> Your browser does not support the audio element. </audio> </body> </html>
HTML Audio – How It Works
The controls
attribute adds audio controls, like play, pause, and volume.
The <source>
element allows you to specify alternative audio files which the browser may choose from. The browser will use the first recognized format.
The text between the <audio>
and </audio>
tags will only be displayed in browsers that do not support the <audio>
element.
HTML <audio> Autoplay
To start an audio file automatically, use the autoplay
attribute:
Example
<!DOCTYPE html> <html> <body> <audio controls autoplay> <source src="demo.ogg" type="audio/ogg"> <source src="demo.mp3" type="audio/mpeg"> Your browser does not support the audio element. </audio> </body> </html>
Add muted
after autoplay
to let your audio file start playing automatically (but muted):
Example
<!DOCTYPE html> <html> <body> <audio controls autoplay muted> <source src="demo.ogg" type="audio/ogg"> <source src="demo.mp3" type="audio/mpeg"> Your browser does not support the audio element. </audio> </body> </html>
HTML Audio Formats
There are three supported audio formats: MP3, WAV, and OGG. The browser support for the different formats is:
Browser | MP3 | WAV | OGG |
---|---|---|---|
Edge/IE | YES | YES* | YES* |
Chrome | YES | YES | YES |
Firefox | YES | YES | YES |
Safari | YES | YES | NO |
Opera | YES | YES | YES |
*From Edge 79
HTML Audio – Media Types
File Format | Media Type |
---|---|
MP3 | audio/mpeg |
OGG | audio/ogg |
WAV | audio/wav |
HTML Audio – Methods, Properties, and Events
The HTML DOM defines methods, properties, and events for the <audio>
element.
This allows you to load, play, and pause audios, as well as set duration and volume.
There are also DOM events that can notify you when an audio begins to play, is paused, etc.