public static VideoInterpreter FromMultipleScreenshots(IEnumerable <string> files, PrefabInterpretationLogic logic) { VideoInterpreter i = new VideoInterpreter(logic); List <System.Drawing.Bitmap> screenshots = new List <System.Drawing.Bitmap>(); foreach (string file in files) { System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(file); screenshots.Add(bmp); } i._frames = VideoFrames.FromMultipleScreenshots(screenshots); i._interpretFrame = new Thread(i._interpretFrame_DoWork); i._interpretFrame.Priority = ThreadPriority.Highest; i._interpretFrame.Start(); i._framesCollection = new VirtualizingCollection <BitmapSource>(i.FrameCount, i.GetFramesInRange); return(i); }