webmフォーマットについて整理してみた

chakemiです。

notoさんと一緒にAndroid端末にてFlashPlayerを使った動画再生について色々調べていたのですが、そんな中、AodbeがAndroid向けのFlashPlayerの開発終了のニュース。。。

Androidはversion2.2からFlashに対応し、1年ちょっとでこの結末。 もう「Flashが動くスマートフォン」なんてのは売りに出来ないですね。。。

また、Microsoftでは、WindowsPhone、次期OS「Windows8」のMetroモードのIE10でのFlashへの対応をしないという話も出ております。

終わってしまうものはしょうがないとして、この先Android端末での動画配信をどう対応するかを考えたところ Android2.3で、WebM、VP8の対応がされていたようで、[stream.m][1]なんかで遊んでいましたが本格的に 検証を行っていかなければいけないかと思い、Webmについて一度、整理してみました。

1
2
3
4
5
6
7
8
9
10
11
12
WebMはGoogleが開発しているオープンな動画規格。
ビデオコーデックにVP8
オーディオコーデックにVorbis

ファイルフォーマットにMatroskaのサブセットを採用しており
EBML(Extensible Binary Meta Language)というデータ格納技術で
後方互換性と拡張性を両立させている。

拡張子は「.webm」
MIME-TYPEは「video/webm」「audio/webm」(オーディオのみ)
FOURCCコードが必要となるアプリでは
「VP8X」がデジタルメディアフォーマットとして割り当てられている。

Firefox4以降、Opera10.60以降、Chrome6以降が標準対応。InternetExplorer9ではVP8コーデックをインストールすることで対応可能。

主な対応メディアプレイヤーでは、

1
2
3
4
5
VLC1.1.0以降 (1.1.5ではライブストリーミングにも対応)
Gomplayer(http://www.gomplayer.jp/codec/success.html?intCodec=72)デコーダが必要?

WindowsMediaPlayer向けにDirectshowフィルタが提供されていたり
QuickTimeコンポーネントが提供されている。

また、WebRTC(Real Time Communication)プロジェクトではビデオコミュニケーションとしてGoogleが、VP8 bitstream versionX(libvpx)を用いた実装を行っているようです。 これによりHTML5とJavaScript等を使用して、Skypeのようにビデオ会議、ビデオ通話ができるようになります。

このプロジェクトには、Mozillaもこの夏、参加を表明しております。

まだまだ、情報を整理しきれてないですが、次回以降、まずはAndroid2.3でのWebMの再生(デコード)が可能なのか、ストリーミング配信にstream.m以外のアプリケーションの調査、検証を行っていこうと思います。

Comments