public void RenderVideo(FractalImageConfig fractalImageConfig, FractalVideoConfig fractalVideoConfig) { Directory.CreateDirectory(IMAGE_OUT_DIR); LoopFrames(_fractal, fractalImageConfig, fractalVideoConfig); FfmpegRenderVideo(); //Directory.Delete(IMAGE_OUT_DIR, true); }
private void LoopFrames(IFractal fractal, FractalImageConfig fractalImageConfig, FractalVideoConfig fractalVideoConfig) { var myFractalImageConfig = fractalImageConfig.Clone() as FractalImageConfig; var nameSplit = fractalImageConfig.Name.Split('.'); var prefix = nameSplit[0]; var ext = nameSplit[1]; for (int frame = 0; frame < fractalVideoConfig.Frames; frame++) { myFractalImageConfig.Name = $"{prefix}_{frame}.{ext}"; RenderSingleFrame(fractal, myFractalImageConfig); //myFractalImageConfig.MinRe += fractalVideoConfig.ResChange; //myFractalImageConfig.MaxRe -= fractalVideoConfig.ResChange; //myFractalImageConfig.MinIm += fractalVideoConfig.ResChange; myFractalImageConfig.MaxItr += 1; } }