aber trotzdem kracht es hier
VideoRenderer.FindPin(nil, pPin);
verstehe nicht warum.. jemand eine Idee?
Auch wenn für dich das Thema schon abgeschlossen ist, hier noch die Erklärung:
Die offizielle Dokumention sagt, dass der erste Parameter einen String(-Zeiger) enthalten muss, der den Pin identifiziert (
https://docs.microsoft.com/en-us/win...filter-findpin).
Wenn du da jetzt nil übergibst, versucht die implementierende Methode FindPin auf den Speicherbereich zuzugreifen -> es kracht!
Im von Zwerg verlinkten SO-Beitrag ist ein Beispiel für das Enummerieren der Pins der übergebenen IBaseFilter-Instanz.
Baue dir einen ähnlichen Code mit ein und lasse dir per OutputDebugString ausgeben, wie die korrekten Namen sind.