@Konboi memo

主に技術に関してつらつらと。

audioタグでどの拡張子が再生できるかを調べる

ちょいとスマフォブラウザ用の音楽プイレイヤーを使ってて手間取った部分のまとめを。


何が困ったってAndroidのaudioタグの対応状況....

Android2.2 HTC Desire のデフォルトのブラウザ
20110815113607

同じくFirefox
20110815113608

何か再生できるんならいいけど、audioタグ対応してるのに何も再生できないってどうしろとっていう状況ですよねw

ということで、何が再生できて何が再生できないかを判断したかったわけです。

それをJs側で出来ないかな〜と色々調べたらありました。

var auidoObj = document.getElementById("audio");

if( audioObj.canPlayType("audio/mp3") === "maybe" ) {
 alert(" mp3  再生可能" );
}

//audioオブジェクトに対して .canPlayType で調べられる。

こんな感じでmp3, ogg,.... とファイル数を増やしていけば色々と確認できる。


ただ、Android2.3はmp3再生に対応しているのに上記のコードだと再生できないという結果になる。 なので、aacで条件分岐をとってる。aacが再生できるならmp3も再生できる。