private void FSOUIFrame()
{
lock (FrameLock)
{
if (Framebuffer == null || Framebuffer.Width != FSOUI.Width || Framebuffer.Height != FSOUI.Height)
{
Framebuffer = new Bitmap(FSOUI.Width, FSOUI.Height, PixelFormat.Format32bppArgb);
}
var bmpData = Framebuffer.LockBits(new Rectangle(0, 0, Framebuffer.Width, Framebuffer.Height), ImageLockMode.WriteOnly, Framebuffer.PixelFormat);
IntPtr ptr = bmpData.Scan0;
Marshal.Copy(FSOUI.RawImage, 0, ptr, bmpData.Stride * bmpData.Height);
Framebuffer.UnlockBits(bmpData);
Invalidate();
}
}