HTML5のaudio
タグをそのままオーディオプレイヤーにするライブラリ「audio.js」を使ってハマった話です。
mp3ファイルを再生するよう実装して各ブラウザで確認したところInternet Explorerでのみ再生できず。しかも互換性で確認するといつもは問題ないIE9~IE11で動かないんです。(audio.jsはIE8以下では自動的にフラッシュ版に切り替えてくれるので旧バージョンなら再生できたのです)
「もうだめだ」「辞めよう」と考えながら2時間ほど格闘した結果mp3ファイルのコーデックが原因だと分かりました。
audio.jsのページをIEで開くと普通に聞けるんですよね。それならとmp3ファイルをダウンロードして調べてみればエンコード方式が「iTunes 9.0.3」となっているではありませんか。なので同じく再生できなかったmp3ファイルをiTunesで変換してやればすんなり再生できました。(もともとの拡張子がmp3なので一旦wavに戻してからやり直す必要がありました)
そんなわけで「.htaccess でMIMEタイプの設定しても音声ファイルが再生できない!」という場合はエンコード方式に目を向けてみると解決するかもしれません。
以上、コードに囚われていた人間がハマった顛末でした。
ちなみに、audio.jsとってもオススメです。ブラウザの互換性はバッチリですしスマホでも動きましたよ。