Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#1

WindowHandle vom Aktiven Renderer

  Alt 13. Sep 2018, 14:27
Ich mache folgendes..

Delphi-Quellcode:
function TEVMRPlayer.GetWindowHandle: HWND;
var
  pPin: IPIN;
  VideoRenderer: IBaseFilter;
  Overlay: IOverlay;
  HR: HRESULT;
begin

  Result := 0;

  GraphBuilder.FindFilterByName(PWideChar(FVideoRenderer.VMRFilter), VideoRenderer);
  if Assigned(VideoRenderer) then
  begin
    HR := VideoRenderer.FindPin(nil, pPin);

    if (SUCCEEDED(HR)) then
    begin
      pPin.QueryInterface(IID_IOverlay, Overlay);
      Overlay.GetWindowHandle(Result);
    end;
  end;
end;
FVideoRenderer.FilterName ist in dem Fall "madVR"
VideoRenderer liefert einen Zeiger ist also nicht Nil.

aber trotzdem kracht es hier
VideoRenderer.FindPin(nil, pPin);

verstehe nicht warum.. jemand eine Idee?

gruss

Geändert von EWeiss (13. Sep 2018 um 14:40 Uhr)
  Mit Zitat antworten Zitat