none
Media Foundationでのサポート対応フォーマット RRS feed

  • 質問

  • お世話になります。

    IMFMediaEngineを使って動画を再生するプログラムを作成しています。
    Windows10環境でMPEG(video/x-mpeg)ファイルを再生できることを確認したのですが、
    下記のサイトのサポートフォーマット表には特に記載がありませんでした。

    もしかすると、どこかに最新のフォーマット表か記述があるかと思ったのですが、
    自分では見つけられませんでした。
    もしご存じの方がいましたらご教示頂きたいです。

    よろしくお願いします。

    ■Media Foundationでのサポート対応フォーマット
    https://docs.microsoft.com/en-us/windows/win32/medfound/supported-media-formats-in-media-foundation

    ■開発環境
    Visual Studio 2017 pro ver 15.9.16
    C++
    DirectX11.1
    Windows Kits 10.0.17763.0
    Windows 10 pro 1809 64bit
    NVIDIA GeForce GTX 1050

    • 編集済み gama55 2019年10月4日 2:44
    2019年10月4日 2:42

回答

  • 一覧はありませんねぇ。今回の場合、MPEG-2 Video Decoderが使われているとは思います。Storeアプリとしてダウンロードできたりグラフィックスドライバーがハードウェアデコーダーを登録したりするので、環境毎に一覧は異なってきます。Enumerating MFTsに一覧の取得方法が記載されています。サンプルコード

    この辺りの話はあくまでコーデックで、これとは別にAVIやWAV、MKVなどコンテナフォーマットの解釈についてはMedia Sourceに依りますが、これの一覧の取得方法は分かりませんでした。とりあえず HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation\ByteStreamHandlers 配下に並んでいます。

    • 回答としてマーク gama55 2019年10月4日 9:34
    2019年10月4日 6:20

すべての返信

  • 一覧はありませんねぇ。今回の場合、MPEG-2 Video Decoderが使われているとは思います。Storeアプリとしてダウンロードできたりグラフィックスドライバーがハードウェアデコーダーを登録したりするので、環境毎に一覧は異なってきます。Enumerating MFTsに一覧の取得方法が記載されています。サンプルコード

    この辺りの話はあくまでコーデックで、これとは別にAVIやWAV、MKVなどコンテナフォーマットの解釈についてはMedia Sourceに依りますが、これの一覧の取得方法は分かりませんでした。とりあえず HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation\ByteStreamHandlers 配下に並んでいます。

    • 回答としてマーク gama55 2019年10月4日 9:34
    2019年10月4日 6:20
  • 佐祐理 様

    回答ありがとうございます。
    なるほど。デコーダーなどの一覧を取得する方法があったんですね。
    サンプルコードもありがとうございます。

    色々情報ありがとうございます。助かります。

    2019年10月4日 9:33