Ich versuche, eine Vorschauanwendung mit dem BlackMagic SDK zu schreiben, bekomme aber abgehackte Wiedergabe. Ich benutze MFC-Framework und CWnd für mein Video-Vorschaufenster.
Wenn jedes Frame des Videos ankommt, mache ich eine Farbkonvertierung in RGB und rufe dann eine Funktion auf, um die RGB-Bitmap anzuzeigen.
%Vor%Was kann getan werden, um ein flüssigeres Video zu erstellen?
Aktualisieren :
Ich habe mit Direct2D statt mit GDI angefangen und habe eine viel bessere Leistung erreicht. Der folgende Code ist, was ich jetzt zum Rendern verwende:
%Vor% BlackMagic wird mit DirectShow
Videoquellenfiltern geliefert. Verwenden Sie GraphEditPlus
, um den Rendercode mit dem BlackMagic-Filter als Videoquelle zu generieren. Der Renderer
Filter kann mit einem HWND
Ihrer Wahl verknüpft werden. Dies sollte die beste Leistung bringen.
Ich glaube, dass Ihre aktuelle Implementierung mehr RAM
und CPU
verwenden wird, auch wenn Sie Direct2D
verwenden, um den Puffer zu blitten.