環境
DXVA を使用する MFT を作成しました。入力サンプルにIDirect3DSurface9
サーフェスが必要です。
この MFT を 3 つのノードのトポロジで使用します。
- キャプチャ デバイス アクティベーターから作成されたメディア ソースをラップするソース ノード、
- 私の MFT のインスタンスを含むトランスフォーム ノード
- EVR を含む出力ノード。
MF_TOPOLOGY_DXVA_MODE
属性を toMFTOPOLOGY_DXVA_FULL
およびMF_TOPOLOGY_HARDWARE_MODE
toトポロジに設定しMFTOPOLOGY_HWMODE_USE_HARDWARE
、メディア セッションを開始すると、MFT 内から D3DDeviceManager を受け取ります。
問題
入力サンプルがトポロジ内から MFT に到着したとき、それらには D3D サーフェスがアタッチされていません (失敗MFGetService
しMR_BUFFER_SERVICE
ます)。
トポロジーをまったく使用せず、同じメディア ソースから有効なMF_SOURCE_READER_D3D_MANAGER
.
質問
トポロジ内のソース ノード/キャプチャ メディア ソースで D3D サーフェスを使用してサンプルを生成することは可能ですか?