How do you implement a flash fallback for an html5 audio tag? for example I have this audio tag
<div class = "div.jp-audio"><audio class ="audio-player" name= "audio-player" src="song.mp3" ></audio></div>
How do I enable or create a flash fall back since not all browsers support .mp3 files
The most supported codecs for playing audio in HTML5 are Ogg Vorbis, MP3, and Wav. There is currently no single codec that plays across all browsers. To get around the potential for codec incompatibility, HTML5 allows you to specify multiple source files.
The HTML <audio> element is used to play an audio file on a web page.
<audio>: The Embed Audio element. The <audio> HTML element is used to embed sound content in documents.
Here is a good code snippet that has a nicely-implemented Flash callback:
<audio id="audioplayer" preload controls loop style="width:424px;">
<source src="audio.mp3">
<source src="audio.caf">
</audio>
<script type="text/javascript">
var audioTag = document.createElement('audio');
if (!(!!(audioTag.canPlayType) && ("no" != audioTag.canPlayType("audio/mpeg")) && ("" != audioTag.canPlayType("audio/mpeg")))) {
AudioPlayer.embed("audioplayer", {soundFile: "audio.mp3"});
}
</script>
Here is the ref where I found it: Getting HTML5 Audio Tag and Flash Fallback to Work Nicely With All Browsers
Hope it Helps!
Here is a live example using swfobject & JS.
In HTML:
<div id="ytplayer"></div>
In JS:
var audioSupport = document.createElement('audio').canPlayType;
var swfPath = "http://www.youtube.com/v/XSGBVzeBUbk?enablejsapi=1&playerapiid=ytplayer&version=3";
var divID = "ytplayer";
if(audioSupport) { $("#ytplayer").append("Your Browser Supports audio"); }
else { swfobject.embedSWF(swfPath, divID, "425", "356", "8"); }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With