Safari がサポートしている Audio と Video フォーマットを確認する


Safari がサポートしている Audio と Video フォーマットを確認する方法について説明します。

WebKit のコードを追っかけると...

と来て、最終的に AVURLAsset audiovisualMIMETypes に辿り着きます。

AVURLAsset::audiovisualMIMETypes を OS X 10.9.5 で実行した結果がこちらになります。

import UIKit
import AVFoundation

var mimeTypes = AVURLAsset.audiovisualMIMETypes()

for mime in mimeTypes {
    println(mime)
}
audio/aacp
video/3gpp2
audio/mpeg3
audio/mp3
audio/x-caf
audio/mpeg
video/quicktime
audio/x-mpeg3
video/mp4
audio/wav
video/avi
audio/scpls
audio/mp4
audio/x-mpg
video/x-m4v
audio/x-wav
audio/x-aiff
application/vnd.apple.mpegurl
video/3gpp
text/vtt
audio/x-mpeg
audio/wave
audio/x-m4r
audio/x-mp3
audio/AMR
audio/aiff
audio/3gpp2
audio/aac
audio/mpg
audio/mpegurl
audio/x-m4b
application/mp4
audio/x-m4p
audio/x-scpls
audio/x-mpegurl
audio/x-aac
audio/3gpp
audio/basic
audio/x-m4a
application/x-mpegurl

特殊な MIME TYPE application/vnd.apple.mpegurlapplication/x-mpegurl は HLS 用です。詳しくは Apple の HLS の資料に詳しく記載があります。