オーバーレイ画像のようなCustom DirectShow Video Renderer Filter
拡張機能を備えた があります。Microsoft's Video Renderer Filter
a で同じことができることはわかっていますが、Transform Filter
その方法を選択しました。また、以下で説明する a で同じ問題に直面するTransform Filter
と思います。
を使用するMicrosoft's Video Renderer Filter
と、ストリームの開始/変更時にウィンドウとバッファのサイズを自動的に変更できます。私のフィルターは同じことを行うことができますが、ストリームの開始後にイベントを受信できないことを除いて. どうにかしてクエリを実行できると思いますが、方法がわかりません。
現在のイベント パイプラインは次のようになります。
On Pin Connect
--------------
CreateInstance
Video Renderer Class Constructor
CheckMediaType
SetMediaType
-> Width: 100, Height: 100
CheckMediaType
CheckMediaType
CheckMediaType
SetMediaType
-> Width: 100, Height: 100
On Play
-------
StartStreaming
DoRenderSample
...
...
...
DoRenderSample
On Stop
-------
Video Renderer Class Destructor
ソース フィルターによって設定されたデフォルトのウィンドウ サイズは 100x100 です。ピン接続でこれを2回取得できます。しかし、その後、再びイベントStartStreaming
を取得できません。ソースフィルターからそれらをトリガーしようとすることもできました(これも私のコードです)が、で自動的にサイズ変更できるため、同じ機能が必要でした。CheckMediaType
SetMediaType
Microsoft's Video Renderer
StartStreaming
質問:
- ストリーミング開始後にどのようにトリガー
CheckMediaType
/コールすればよいですか?SetMediaType
実際SetMediaType
、私にとって重要なものです。または、現在のストリーム解像度を照会する別の方法はありますか? - でビデオ サイズの変更の可能性を継続的に確認する必要があり
DoRenderSample
ますか?