Solved

Play Sound in HTML 5

Posted on 2012-04-03
12
252 Views
Last Modified: 2012-06-27
Hello,

Please look at this.

https://englishbenchmarks.com/html5_sound_test.htm

This was the simplest POSSIBLE test I could think of.

It doesn't work.

Why?
0
Comment
Question by:Richard Korts
  • 7
  • 3
  • 2
12 Comments
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 37800732
Try like this- Change code on click event of button

onclick="document.getElementById("sound1").play()"
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 37800749
Place single quote

onclick="document.getElementById('sound1').play();"
0
 

Author Comment

by:Richard Korts
ID: 37800759
To sonawanekiran

That eliminates the error, but no sound plays.

Thanks.
0
 
LVL 17

Assisted Solution

by:sonawanekiran
sonawanekiran earned 150 total points
ID: 37800761
Here is complete code. Tested

<!DOCTYPE html>

<html>
<head>
<title>HTML 5 Audio test</title>
</head>
<body>
<audio src="audio/soundcheck_demo.mp3" preload="auto" autobuffer id="sound1"></audio>
<input type="button" value="Sound Check" name="go1" onClick="document.getElementById('sound1').play();">

</body>
</html>

Open in new window

0
 

Author Comment

by:Richard Korts
ID: 37800762
To sonawanekiran

I fixed the quotes problem.

No sound plays.
0
 

Author Comment

by:Richard Korts
ID: 37800843
To sonawanekiran

VERY strange.

I copied your code exactly.

Here are the results by browser:

FireFox Vers 11.o - No sound plays
IE Vers 8 - gets the attached error
Google Chrome - works perfectly

Crazy!!

I HAVE to make it work in IE & FireFox
html5-sound-IE.jpg
0
Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 

Author Comment

by:Richard Korts
ID: 37801713
One more comment.

My WHOLE reason for doing this is that I want to get an iPad version working.

This last version DOES work on the iPad; so, I can programatically (using php) use either the current version (you have not seen that) which works in IE & FireFox or this version on the iPad.

Of course it would be nicer is ONE version worked on all 4 browsers.
0
 
LVL 53

Accepted Solution

by:
COBOLdinosaur earned 350 total points
ID: 37801738
To work cross browser it requires more than one format for the audio file.  It will not work for older
browser that do not support HTML5 tags.  That means it will work in IE9 but probably nothing earlier:
<audio preload="auto" autobuffer id="sound1"></audio>
  <source src="song.ogg" type="audio/ogg" />
  <source src="song.mp3" type="audio/mp3" />
  Your browser does not support the audio tag.
</audio>

Open in new window


You can get a free mp3/ogg converter here:
http://download.cnet.com/Free-MP3-WMA-OGG-Converter/3000-2140_4-10793572.html


Cd&
0
 

Author Comment

by:Richard Korts
ID: 37801828
COBOLdinosaur

I'm sort of shocked that FireFox does not support HTML 5.

I have the VERY latest version of FireFox (Version 11.0).
0
 

Author Comment

by:Richard Korts
ID: 37801851
To COBOLdinosaur

Never mind, I found the answer, I need the ogg format.
0
 

Author Closing Comment

by:Richard Korts
ID: 37801970
Amazing that it requires IE 9, does NOT work in IE 8.

It now works PERFECT in FireFox (with an ogg version of the sound file).

Thanks
0
 
LVL 53

Expert Comment

by:COBOLdinosaur
ID: 37802291
IE8 only supports about 10% of HTML5... IE9 is up to around 45%... FF and Chrome are over 90%.
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

Deprecated and Headed for the Dustbin By now, you have probably heard that some PHP features, while convenient, can also cause PHP security problems.  This article discusses one of those, called register_globals.  It is a thing you do not want.  …
This article discusses how to create an extensible mechanism for linked drop downs.
In this tutorial viewers will learn how to position items using CSS's three positioning types Create a new HTML document with an internal stylesheet.: Create another div in CSS and name it Absolute : Type "position:absolute;" and "top:10px; left:50p…
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now