Etapa 1: envolva seu objeto Flash com a tag de áudio
Os navegadores que não reconhecem a tag de áudio carregam o conteúdo em Flash.
<audio>
</span><span class="old">
<object class="playerpreview" type="application/x-shockwave-flash"
data="player_mp3_mini.swf" width="200" height="20">
<param name="movie" value="player_mp3_mini.swf" />
<param name="bgcolor" value="#085c68" />
<param name="FlashVars" value="mp3=test.mp3" />
<embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200"
height="20" name="movie" align=""
type="application/x-shockwave-flash" flashvars="mp3=test.mp3">
</embed>
</object>
</span><span class="new">
</audio>
Etapa 2: adicionar a referência de origem
Podemos adicionar quantas linhas e formatos de "fonte" quisermos. Se o navegador não for compatível com um formato específico, ele usará o próximo, e assim por diante.
<span class="old"><audio></span>
<span class="new"><source src="test.mp3" type="audio/mpeg" />
<source src="test.ogg" type="audio/ogg" /></span><span class="old">
<object class="playerpreview" type="application/x-shockwave-flash"
data="player_mp3_mini.swf" width="200" height="20">
<param name="movie" value="player_mp3_mini.swf" />
<param name="bgcolor" value="#085c68" />
<param name="FlashVars" value="mp3=test.mp3" />
<embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200"
height="20" name="movie" align=""
type="application/x-shockwave-flash" flashvars="mp3=test.mp3">
</embed>
</object>
</audio></span>
Etapa 3: adicionar substituto ao Flash
Por segurança, precisamos adicionar o substituto para um player de áudio em Flash, caso o navegador não seja compatível com nenhum dos formatos especificados. Por exemplo, o Firefox 3.5 aceita somente a tag de áudio com o formato Ogg, mas talvez haja apenas o arquivo mp3 disponível.
<span class="old"><audio></span>
<span class="new"><source src="test.mp3" type="audio/mpeg" /></span><span class="old">
<object class="playerpreview" type="application/x-shockwave-flash"
data="player_mp3_mini.swf" width="200" height="20">
<param name="movie" value="player_mp3_mini.swf" />
<param name="bgcolor" value="#085c68" />
<param name="FlashVars" value="mp3=test.mp3" />
<embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200"
height="20" name="movie" align=""
type="application/x-shockwave-flash" flashvars="mp3=test.mp3">
</embed>
</object>
</audio>
</span><span class="new">
<div id="player_fallback"></div>
<script>
if (document.createElement('audio').canPlayType) {
if (!document.createElement('audio').canPlayType('audio/mpeg')) {
swfobject.embedSWF(
"player_mp3_mini.swf",
"player_fallback",
"200",
"20",
"9.0.0",
"",
{"mp3":"test.mp3"},
{"bgcolor":"#085c68"});
}
}
</script></span>
Para facilitar, usamos a biblioteca SWFObject para inserir o Flash player por meio do JavaScript. Para incluir a biblioteca, basta usar a API AJAX de bibliotecas do Google inserindo estas duas linhas no cabeçalho:
<span class="new"><script src="https://www.google.com/jsapi"></script>
<script>google.load("swfobject", "2.2");</script></span></pre>
Etapa 4: adicione os controles padrão para exibir o player
Esses controles não são personalizáveis (veja os exemplos no final). Como esses controles padrão serão exibidos independentemente do formato suportado, precisaremos lidar com sua visibilidade com a condicional que criamos anteriormente.
// TODO: DevSite - Code sample removed as it used inline event handlers
Como alternativa, é possível criar seu próprio player usando JavaScript e CSS.
// TODO: DevSite - Code sample removed as it used inline event handlers