Media Foundation の更新 @ Windows 7
Media Foundation は Windows Vistaから新設された新しいメディア用のネイティブAPIです。PMP(Protected Media Path)のようなセキュアなメディア処理に優れています。しかし、DirectShow に比べ対応デコーダも少なく、下位レベルのAPIばかりでプログラミングが簡単ではなく、Windows XP では動作しないので、あまり使われませんでした。
Windows 7 では改善されて、Media Foundation がかなり使いやすくなったように思います。What’s New in Windows 7は以下の通りです。
- より多くのフォーマットサポート(MPEG-4を含む)
- AVI/WAVEソース
- MP4/3GPソース/シンク
- H.264デコーダ
- MJPEGデコーダ
- ASPストリーム シンク
- MP3ファイル シンク
- キャプチャ デバイスとハードウェア コーデックのサポート
- UVC(USB Video Class)1.1 ビデオ キャプチャ デバイス
- オーディオ キャプチャ デバイス
- ハードウェア エンコーダ/デコーダ
- ハードウェア ビデオ プロセッサ(ex. 色空間変換)
- プログラミング モデルの単純化
- MFPlay
- Source Reader
- Sink Writer
- Fast Transcode
- Caputer device
- プラットフォームへの改善
- 最適化
- DXVA-HD
とくにキャプチャ デバイス サポートとMF用プレーヤーAPI(MFPlay)のおかげで、最近のノートPCによく付いているWebcamでビデオをキャプチャして、ウィンドウ上で再生するのは、かなり簡単にプログラミングできるようになりました。サンプルコードSampleCapureをビルドして、WebcamをつないだPCで実行してみてください。
プログラミング モデルが単純化されたのも重要です。このページのアーキテクチャ図で、左の破線で囲まれた部分しかVistaのときにはなかったのですが、Windows 7では MFPlayだけではなく、右の Source Reader, Sink Writer も追加されたので、プログラミングが容易になりました。