From fb30d7230d2aa8231f7f5e10a745a117264d2f02 Mon Sep 17 00:00:00 2001 From: N00MKRAD Date: Wed, 25 Nov 2020 20:31:21 +0100 Subject: [PATCH] Added landing page, improved updater for beta versions --- Code/AudioVideo/FFmpegCommands.cs | 14 +- Code/AudioVideo/FFmpegStrings.cs | 13 -- Code/Flowframes.csproj | 4 +- Code/Form1.Designer.cs | 165 +++++++++++++--- Code/Form1.cs | 25 ++- Code/Form1.resx | 3 +- Code/Forms/SettingsForm.Designer.cs | 231 +++++++++++----------- Code/Forms/UpdaterForm.cs | 12 +- Code/Main/BatchProcessing.cs | 4 +- Code/Main/Interpolate.cs | 17 +- Code/OS/AiProcess.cs | 6 +- Code/OS/Updater.cs | 2 +- Code/Program.cs | 2 +- Code/Properties/Resources.Designer.cs | 10 + Code/Properties/Resources.resx | 13 +- Code/Resources/flowframesIcoNew-512px.png | Bin 0 -> 3842 bytes Code/Resources/flowframesIcoNew.png | Bin 0 -> 341888 bytes Code/UI/GetWebInfo.cs | 29 +++ Code/UI/UtilsTab.cs | 2 +- 19 files changed, 364 insertions(+), 188 deletions(-) delete mode 100644 Code/AudioVideo/FFmpegStrings.cs create mode 100644 Code/Resources/flowframesIcoNew-512px.png create mode 100644 Code/Resources/flowframesIcoNew.png create mode 100644 Code/UI/GetWebInfo.cs diff --git a/Code/AudioVideo/FFmpegCommands.cs b/Code/AudioVideo/FFmpegCommands.cs index a6c3477..6b845cd 100644 --- a/Code/AudioVideo/FFmpegCommands.cs +++ b/Code/AudioVideo/FFmpegCommands.cs @@ -18,22 +18,22 @@ namespace Flowframes static string mpDecDef = "\"mpdecimate\""; static string mpDecAggr = "\"mpdecimate=hi=64*32:lo=64*32:frac=0.1\""; - public static async Task VideoToFrames(string inputFile, string frameFolderPath, bool deDupe, bool delSrc) + public static async Task VideoToFrames(string inputFile, string frameFolderPath, bool deDupe, bool delSrc, bool timecodes = true) { - await VideoToFrames(inputFile, frameFolderPath, deDupe, delSrc, new Size()); + await VideoToFrames(inputFile, frameFolderPath, deDupe, delSrc, new Size(), timecodes); } - public static async Task VideoToFrames(string inputFile, string frameFolderPath, bool deDupe, bool delSrc, Size size) + public static async Task VideoToFrames(string inputFile, string frameFolderPath, bool deDupe, bool delSrc, Size size, bool timecodes = true) { - string sizeStr = ""; - if (size.Width > 1 && size.Height > 1) sizeStr = $"-s {size.Width}x{size.Height}"; + string sizeStr = (size.Width > 1 && size.Height > 1) ? $"-s {size.Width}x{size.Height}" : ""; if (!Directory.Exists(frameFolderPath)) Directory.CreateDirectory(frameFolderPath); - string args = $"-i {inputFile.Wrap()} {pngComprArg} -vsync 0 -pix_fmt rgb24 -copyts -r 1000 -frame_pts true -vf {divisionFilter} {sizeStr} \"{frameFolderPath}/%08d.png\""; + string timecodeStr = timecodes ? "-copyts -r 1000 -frame_pts true" : ""; + string args = $"-i {inputFile.Wrap()} {pngComprArg} -vsync 0 -pix_fmt rgb24 {timecodeStr} -vf {divisionFilter} {sizeStr} \"{frameFolderPath}/%08d.png\""; if (deDupe) { string mpStr = (Config.GetInt("mpdecimateMode") == 0) ? mpDecDef : mpDecAggr; - args = $"-i {inputFile.Wrap()} -copyts -r 1000 {pngComprArg} -vsync 0 -pix_fmt rgb24 -frame_pts true -vf {mpStr},{divisionFilter} {sizeStr} \"{frameFolderPath}/%08d.png\""; + args = $"-i {inputFile.Wrap()} {pngComprArg} -vsync 0 -pix_fmt rgb24 {timecodeStr} -vf {mpStr},{divisionFilter} {sizeStr} \"{frameFolderPath}/%08d.png\""; } await AvProcess.RunFfmpeg(args, AvProcess.LogMode.OnlyLastLine); await Task.Delay(1); diff --git a/Code/AudioVideo/FFmpegStrings.cs b/Code/AudioVideo/FFmpegStrings.cs deleted file mode 100644 index 4926349..0000000 --- a/Code/AudioVideo/FFmpegStrings.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Flowframes -{ - class FFmpegStrings - { - - } -} diff --git a/Code/Flowframes.csproj b/Code/Flowframes.csproj index d4ab1da..e2417bf 100644 --- a/Code/Flowframes.csproj +++ b/Code/Flowframes.csproj @@ -197,7 +197,6 @@ - Form @@ -221,6 +220,7 @@ + @@ -280,6 +280,8 @@ + + diff --git a/Code/Form1.Designer.cs b/Code/Form1.Designer.cs index 72dde4b..db48f59 100644 --- a/Code/Form1.Designer.cs +++ b/Code/Form1.Designer.cs @@ -32,7 +32,6 @@ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); this.titleLabel = new System.Windows.Forms.Label(); this.tilesize = new System.Windows.Forms.ComboBox(); - this.tileSizeInfoLabel = new System.Windows.Forms.Label(); this.aiCombox = new System.Windows.Forms.ComboBox(); this.label13 = new System.Windows.Forms.Label(); this.outModeCombox = new System.Windows.Forms.ComboBox(); @@ -95,6 +94,15 @@ this.longProgBar = new HTAlt.WinForms.HTProgressBar(); this.cancelBtn = new System.Windows.Forms.Button(); this.mainTabControl = new HTAlt.WinForms.HTTabControl(); + this.welcomeTab = new System.Windows.Forms.TabPage(); + this.label22 = new System.Windows.Forms.Label(); + this.panel8 = new System.Windows.Forms.Panel(); + this.patronsLabel = new System.Windows.Forms.Label(); + this.label21 = new System.Windows.Forms.Label(); + this.panel6 = new System.Windows.Forms.Panel(); + this.newsLabel = new System.Windows.Forms.Label(); + this.label15 = new System.Windows.Forms.Label(); + this.label11 = new System.Windows.Forms.Label(); this.interpOptsTab = new System.Windows.Forms.TabPage(); this.tilesizeNotAvailLabel = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label(); @@ -115,6 +123,9 @@ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.info1)).BeginInit(); this.mainTabControl.SuspendLayout(); + this.welcomeTab.SuspendLayout(); + this.panel8.SuspendLayout(); + this.panel6.SuspendLayout(); this.interpOptsTab.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit(); this.videoUtilsTab.SuspendLayout(); @@ -156,18 +167,6 @@ this.tilesize.TabIndex = 25; this.tilesize.SelectedIndexChanged += new System.EventHandler(this.tilesize_SelectedIndexChanged); // - // tileSizeInfoLabel - // - this.tileSizeInfoLabel.AutoSize = true; - this.tileSizeInfoLabel.ForeColor = System.Drawing.Color.Silver; - this.tileSizeInfoLabel.Location = new System.Drawing.Point(532, 135); - this.tileSizeInfoLabel.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0); - this.tileSizeInfoLabel.Name = "tileSizeInfoLabel"; - this.tileSizeInfoLabel.Size = new System.Drawing.Size(327, 15); - this.tileSizeInfoLabel.TabIndex = 24; - this.tileSizeInfoLabel.Text = "Note: You can use much higher values with CAIN than DAIN."; - this.tileSizeInfoLabel.Visible = false; - // // aiCombox // this.aiCombox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); @@ -637,6 +636,7 @@ // logBox // this.logBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.logBox.Cursor = System.Windows.Forms.Cursors.Arrow; this.logBox.ForeColor = System.Drawing.Color.White; this.logBox.Location = new System.Drawing.Point(221, 357); this.logBox.MinimumSize = new System.Drawing.Size(4, 21); @@ -928,6 +928,7 @@ this.mainTabControl.AllowDrop = true; this.mainTabControl.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(48))))); this.mainTabControl.BorderTabLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(122)))), ((int)(((byte)(204))))); + this.mainTabControl.Controls.Add(this.welcomeTab); this.mainTabControl.Controls.Add(this.interpOptsTab); this.mainTabControl.Controls.Add(this.videoUtilsTab); this.mainTabControl.Controls.Add(this.previewTab); @@ -936,7 +937,7 @@ this.mainTabControl.DisableDragging = true; this.mainTabControl.Font = new System.Drawing.Font("Segoe UI", 9F); this.mainTabControl.HoverTabButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(82)))), ((int)(((byte)(176)))), ((int)(((byte)(239))))); - this.mainTabControl.HoverTabColor = System.Drawing.Color.FromArgb(((int)(((byte)(28)))), ((int)(((byte)(151)))), ((int)(((byte)(234))))); + this.mainTabControl.HoverTabColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(63)))), ((int)(((byte)(70))))); this.mainTabControl.HoverUnselectedTabButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(85)))), ((int)(((byte)(85)))), ((int)(((byte)(85))))); this.mainTabControl.Location = new System.Drawing.Point(13, 62); this.mainTabControl.Name = "mainTabControl"; @@ -952,33 +953,133 @@ this.mainTabControl.UnselectedTabColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(63)))), ((int)(((byte)(70))))); this.mainTabControl.UpDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(63)))), ((int)(((byte)(70))))); this.mainTabControl.UpDownTextColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(112))))); + this.mainTabControl.SelectedIndexChanged += new System.EventHandler(this.mainTabControl_SelectedIndexChanged); this.mainTabControl.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form1_DragDrop); this.mainTabControl.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter); // + // welcomeTab + // + this.welcomeTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48))))); + this.welcomeTab.Controls.Add(this.label22); + this.welcomeTab.Controls.Add(this.panel8); + this.welcomeTab.Controls.Add(this.panel6); + this.welcomeTab.Controls.Add(this.label11); + this.welcomeTab.Location = new System.Drawing.Point(4, 27); + this.welcomeTab.Name = "welcomeTab"; + this.welcomeTab.Padding = new System.Windows.Forms.Padding(3); + this.welcomeTab.Size = new System.Drawing.Size(901, 258); + this.welcomeTab.TabIndex = 4; + this.welcomeTab.Text = "Welcome"; + // + // label22 + // + this.label22.AutoSize = true; + this.label22.Font = new System.Drawing.Font("Yu Gothic UI", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label22.ForeColor = System.Drawing.Color.Gray; + this.label22.Location = new System.Drawing.Point(142, 3); + this.label22.Margin = new System.Windows.Forms.Padding(3, 0, 3, 10); + this.label22.Name = "label22"; + this.label22.Size = new System.Drawing.Size(478, 40); + this.label22.TabIndex = 5; + this.label22.Text = "Click The Interpolation Tab To Begin."; + // + // panel8 + // + this.panel8.AutoScroll = true; + this.panel8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.panel8.Controls.Add(this.patronsLabel); + this.panel8.Controls.Add(this.label21); + this.panel8.Location = new System.Drawing.Point(593, 57); + this.panel8.Margin = new System.Windows.Forms.Padding(5); + this.panel8.Name = "panel8"; + this.panel8.Size = new System.Drawing.Size(300, 193); + this.panel8.TabIndex = 4; + // + // patronsLabel + // + this.patronsLabel.AutoSize = true; + this.patronsLabel.ForeColor = System.Drawing.Color.White; + this.patronsLabel.Location = new System.Drawing.Point(8, 31); + this.patronsLabel.Margin = new System.Windows.Forms.Padding(8, 8, 3, 0); + this.patronsLabel.Name = "patronsLabel"; + this.patronsLabel.Size = new System.Drawing.Size(0, 15); + this.patronsLabel.TabIndex = 9; + // + // label21 + // + this.label21.AutoSize = true; + this.label21.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label21.ForeColor = System.Drawing.Color.White; + this.label21.Location = new System.Drawing.Point(8, 8); + this.label21.Margin = new System.Windows.Forms.Padding(8, 8, 3, 0); + this.label21.Name = "label21"; + this.label21.Size = new System.Drawing.Size(119, 15); + this.label21.TabIndex = 8; + this.label21.Text = "Patreon Supporters:"; + // + // panel6 + // + this.panel6.AutoScroll = true; + this.panel6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.panel6.Controls.Add(this.newsLabel); + this.panel6.Controls.Add(this.label15); + this.panel6.Location = new System.Drawing.Point(8, 57); + this.panel6.Margin = new System.Windows.Forms.Padding(5); + this.panel6.Name = "panel6"; + this.panel6.Size = new System.Drawing.Size(575, 193); + this.panel6.TabIndex = 3; + // + // newsLabel + // + this.newsLabel.AutoSize = true; + this.newsLabel.ForeColor = System.Drawing.Color.White; + this.newsLabel.Location = new System.Drawing.Point(8, 31); + this.newsLabel.Margin = new System.Windows.Forms.Padding(8, 8, 3, 0); + this.newsLabel.Name = "newsLabel"; + this.newsLabel.Size = new System.Drawing.Size(0, 15); + this.newsLabel.TabIndex = 8; + // + // label15 + // + this.label15.AutoSize = true; + this.label15.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label15.ForeColor = System.Drawing.Color.White; + this.label15.Location = new System.Drawing.Point(8, 8); + this.label15.Margin = new System.Windows.Forms.Padding(8, 8, 3, 0); + this.label15.Name = "label15"; + this.label15.Size = new System.Drawing.Size(41, 15); + this.label15.TabIndex = 7; + this.label15.Text = "News:"; + // + // label11 + // + this.label11.AutoSize = true; + this.label11.Font = new System.Drawing.Font("Yu Gothic UI", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label11.ForeColor = System.Drawing.Color.White; + this.label11.Location = new System.Drawing.Point(6, 3); + this.label11.Margin = new System.Windows.Forms.Padding(3, 0, 3, 10); + this.label11.Name = "label11"; + this.label11.Size = new System.Drawing.Size(143, 40); + this.label11.TabIndex = 1; + this.label11.Text = "Welcome!"; + // // interpOptsTab // this.interpOptsTab.AllowDrop = true; this.interpOptsTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48))))); this.interpOptsTab.Controls.Add(this.tilesizeNotAvailLabel); - this.interpOptsTab.Controls.Add(this.panel7); this.interpOptsTab.Controls.Add(this.label1); this.interpOptsTab.Controls.Add(this.browseOutBtn); this.interpOptsTab.Controls.Add(this.browseInputFileBtn); this.interpOptsTab.Controls.Add(this.browseInputBtn); this.interpOptsTab.Controls.Add(this.label4); - this.interpOptsTab.Controls.Add(this.pictureBox4); this.interpOptsTab.Controls.Add(this.label2); - this.interpOptsTab.Controls.Add(this.pictureBox3); this.interpOptsTab.Controls.Add(this.label3); - this.interpOptsTab.Controls.Add(this.pictureBox2); this.interpOptsTab.Controls.Add(this.inputTbox); - this.interpOptsTab.Controls.Add(this.pictureBox1); this.interpOptsTab.Controls.Add(this.outputTbox); - this.interpOptsTab.Controls.Add(this.info1); this.interpOptsTab.Controls.Add(this.interpFactorCombox); this.interpOptsTab.Controls.Add(this.tilesize); this.interpOptsTab.Controls.Add(this.fpsInTbox); - this.interpOptsTab.Controls.Add(this.tileSizeInfoLabel); this.interpOptsTab.Controls.Add(this.fpsOutTbox); this.interpOptsTab.Controls.Add(this.label5); this.interpOptsTab.Controls.Add(this.aiCombox); @@ -988,6 +1089,12 @@ this.interpOptsTab.Controls.Add(this.label8); this.interpOptsTab.Controls.Add(this.label9); this.interpOptsTab.Controls.Add(this.outModeCombox); + this.interpOptsTab.Controls.Add(this.panel7); + this.interpOptsTab.Controls.Add(this.pictureBox4); + this.interpOptsTab.Controls.Add(this.pictureBox3); + this.interpOptsTab.Controls.Add(this.pictureBox2); + this.interpOptsTab.Controls.Add(this.pictureBox1); + this.interpOptsTab.Controls.Add(this.info1); this.interpOptsTab.Location = new System.Drawing.Point(4, 27); this.interpOptsTab.Name = "interpOptsTab"; this.interpOptsTab.Padding = new System.Windows.Forms.Padding(3); @@ -1217,6 +1324,12 @@ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.info1)).EndInit(); this.mainTabControl.ResumeLayout(false); + this.welcomeTab.ResumeLayout(false); + this.welcomeTab.PerformLayout(); + this.panel8.ResumeLayout(false); + this.panel8.PerformLayout(); + this.panel6.ResumeLayout(false); + this.panel6.PerformLayout(); this.interpOptsTab.ResumeLayout(false); this.interpOptsTab.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); @@ -1258,7 +1371,6 @@ private System.Windows.Forms.Label statusLabel; private System.Windows.Forms.ComboBox aiCombox; private System.Windows.Forms.Label label13; - private System.Windows.Forms.Label tileSizeInfoLabel; private System.Windows.Forms.ComboBox tilesize; private System.Windows.Forms.Label label14; private System.Windows.Forms.Button debugExtractFramesBtn; @@ -1311,6 +1423,15 @@ private System.Windows.Forms.Panel panel2; private System.Windows.Forms.Panel panel3; private HTAlt.WinForms.HTButton updateBtn; + private System.Windows.Forms.TabPage welcomeTab; + private System.Windows.Forms.Label label11; + private System.Windows.Forms.Panel panel6; + private System.Windows.Forms.Label label15; + private System.Windows.Forms.Panel panel8; + private System.Windows.Forms.Label patronsLabel; + private System.Windows.Forms.Label label21; + private System.Windows.Forms.Label newsLabel; + private System.Windows.Forms.Label label22; } } diff --git a/Code/Form1.cs b/Code/Form1.cs index 032d0fb..b27e8ad 100644 --- a/Code/Form1.cs +++ b/Code/Form1.cs @@ -53,6 +53,8 @@ namespace Flowframes Setup.Init(); Initialized(); + GetWebInfo.LoadNews(newsLabel); + GetWebInfo.LoadPatronList(patronsLabel); Updater.AsyncUpdateCheck(); } @@ -60,6 +62,17 @@ namespace Flowframes public bool IsInFocus() { return (ActiveForm == this); } + public void SetTab (string tabName) + { + foreach(TabPage tab in mainTabControl.TabPages) + { + if (tab.Text.ToLower() == tabName.ToLower()) + mainTabControl.SelectedTab = tab; + } + mainTabControl.Refresh(); + mainTabControl.Update(); + } + public BatchEntry GetBatchEntry() { return new BatchEntry(inputTbox.Text.Trim(), outputTbox.Text.Trim(), GetAi(), fpsInTbox.GetFloat(), interpFactorCombox.GetInt(), GetOutMode()); @@ -158,7 +171,7 @@ namespace Flowframes public void runBtn_Click(object sender, EventArgs e) { if (!BatchProcessing.busy) - mainTabControl.SelectedIndex = 0; + SetTab("interpolation"); if (fpsInTbox.Visible) Interpolate.SetFps(fpsInTbox.GetFloat()); if (interpFactorCombox.Visible) @@ -245,7 +258,6 @@ namespace Flowframes private void aiCombox_SelectedIndexChanged(object sender, EventArgs e) { tilesize.Visible = GetAi().supportsTiling; - tileSizeInfoLabel.Visible = tilesize.Visible; tilesizeNotAvailLabel.Visible = !tilesize.Visible; interpFactorCombox_SelectedIndexChanged(null, null); if(GetAi().supportsTiling) @@ -282,7 +294,7 @@ namespace Flowframes private void Form1_DragDrop(object sender, DragEventArgs e) { if (Program.busy) return; - mainTabControl.SelectedIndex = 0; // Select main tab + SetTab("interpolation"); string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); inputTbox.Text = files[0]; Logger.Log("Selected video/directory: " + Path.GetFileName(files[0])); @@ -311,7 +323,7 @@ namespace Flowframes private void cancelBtn_Click(object sender, EventArgs e) { - mainTabControl.SelectedIndex = 0; + SetTab("interpolation"); Interpolate.Cancel(); } @@ -368,5 +380,10 @@ namespace Flowframes if (!initialized || !GetAi().supportsTiling) return; Config.Set($"tilesize_{GetAi().aiName}", tilesize.GetInt().ToString()); } + + private void mainTabControl_SelectedIndexChanged(object sender, EventArgs e) + { + mainTabControl.Refresh(); + } } } diff --git a/Code/Form1.resx b/Code/Form1.resx index 69f1b21..501f1a2 100644 --- a/Code/Form1.resx +++ b/Code/Form1.resx @@ -123,7 +123,8 @@ Based on: - dain-ncnn-vulkan by nihui, originally based on DAIN (Depth-Aware Video Frame Interpolation) by baowenbo - cain-ncnn-vulkan by nihui, originally based on and CAIN (Channel Attention Is All You Need for Video Frame Interpolation) by myungsub -- RIFE by hzwer +- RIFE by hzwer +- rife-ncnn-vulkan by nihui 17, 17 diff --git a/Code/Forms/SettingsForm.Designer.cs b/Code/Forms/SettingsForm.Designer.cs index 50a4cc8..9ad5112 100644 --- a/Code/Forms/SettingsForm.Designer.cs +++ b/Code/Forms/SettingsForm.Designer.cs @@ -69,6 +69,10 @@ this.enableAudio = new System.Windows.Forms.CheckBox(); this.label1 = new System.Windows.Forms.Label(); this.aiOptsPage = new Cyotek.Windows.Forms.TabListPage(); + this.panel12 = new System.Windows.Forms.Panel(); + this.label44 = new System.Windows.Forms.Label(); + this.ncnnThreads = new System.Windows.Forms.ComboBox(); + this.label43 = new System.Windows.Forms.Label(); this.panel2 = new System.Windows.Forms.Panel(); this.panel1 = new System.Windows.Forms.Panel(); this.torchGpus = new System.Windows.Forms.ComboBox(); @@ -108,6 +112,10 @@ this.label8 = new System.Windows.Forms.Label(); this.minOutVidLength = new System.Windows.Forms.ComboBox(); this.debugTab = new Cyotek.Windows.Forms.TabListPage(); + this.ffEncPreset = new System.Windows.Forms.ComboBox(); + this.label47 = new System.Windows.Forms.Label(); + this.label46 = new System.Windows.Forms.Label(); + this.label45 = new System.Windows.Forms.Label(); this.label41 = new System.Windows.Forms.Label(); this.ffprobeCountFrames = new System.Windows.Forms.CheckBox(); this.label40 = new System.Windows.Forms.Label(); @@ -122,14 +130,6 @@ this.cmdDebugMode = new System.Windows.Forms.ComboBox(); this.titleLabel = new System.Windows.Forms.Label(); this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); - this.label43 = new System.Windows.Forms.Label(); - this.ncnnThreads = new System.Windows.Forms.ComboBox(); - this.label44 = new System.Windows.Forms.Label(); - this.panel12 = new System.Windows.Forms.Panel(); - this.label45 = new System.Windows.Forms.Label(); - this.label46 = new System.Windows.Forms.Label(); - this.label47 = new System.Windows.Forms.Label(); - this.ffEncPreset = new System.Windows.Forms.ComboBox(); this.settingsTabList.SuspendLayout(); this.generalTab.SuspendLayout(); this.tabListPage2.SuspendLayout(); @@ -204,15 +204,12 @@ // tempDirBrowseBtn // this.tempDirBrowseBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); - this.tempDirBrowseBtn.FlatAppearance.BorderSize = 0; - this.tempDirBrowseBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.tempDirBrowseBtn.ForeColor = System.Drawing.Color.White; this.tempDirBrowseBtn.Location = new System.Drawing.Point(709, 66); this.tempDirBrowseBtn.Name = "tempDirBrowseBtn"; this.tempDirBrowseBtn.Size = new System.Drawing.Size(50, 23); this.tempDirBrowseBtn.TabIndex = 70; this.tempDirBrowseBtn.Text = "Browse"; - this.tempDirBrowseBtn.UseVisualStyleBackColor = false; this.tempDirBrowseBtn.Click += new System.EventHandler(this.tempDirBrowseBtn_Click); // // tempDirCustom @@ -627,6 +624,53 @@ this.aiOptsPage.Size = new System.Drawing.Size(762, 419); this.aiOptsPage.Text = "AI Specific Settings"; // + // panel12 + // + this.panel12.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent; + this.panel12.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.panel12.Location = new System.Drawing.Point(336, 187); + this.panel12.Name = "panel12"; + this.panel12.Size = new System.Drawing.Size(21, 21); + this.panel12.TabIndex = 58; + this.toolTip1.SetToolTip(this.panel12, "Allows custom input."); + // + // label44 + // + this.label44.AutoSize = true; + this.label44.ForeColor = System.Drawing.Color.Silver; + this.label44.Location = new System.Drawing.Point(370, 191); + this.label44.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); + this.label44.Name = "label44"; + this.label44.Size = new System.Drawing.Size(358, 13); + this.label44.TabIndex = 60; + this.label44.Text = "Use 1 for small videos, 2 for >1080p, higher values might cause slowdown!"; + // + // ncnnThreads + // + this.ncnnThreads.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.ncnnThreads.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.ncnnThreads.ForeColor = System.Drawing.Color.White; + this.ncnnThreads.FormattingEnabled = true; + this.ncnnThreads.Items.AddRange(new object[] { + "1", + "2", + "3", + "4"}); + this.ncnnThreads.Location = new System.Drawing.Point(280, 187); + this.ncnnThreads.Name = "ncnnThreads"; + this.ncnnThreads.Size = new System.Drawing.Size(50, 21); + this.ncnnThreads.TabIndex = 59; + // + // label43 + // + this.label43.AutoSize = true; + this.label43.Location = new System.Drawing.Point(10, 190); + this.label43.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); + this.label43.Name = "label43"; + this.label43.Size = new System.Drawing.Size(135, 13); + this.label43.TabIndex = 58; + this.label43.Text = "NCNN Processing Threads"; + // // panel2 // this.panel2.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent; @@ -1122,11 +1166,63 @@ this.debugTab.Size = new System.Drawing.Size(762, 419); this.debugTab.Text = "Debugging / Experimental"; // + // ffEncPreset + // + this.ffEncPreset.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.ffEncPreset.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.ffEncPreset.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.ffEncPreset.ForeColor = System.Drawing.Color.White; + this.ffEncPreset.FormattingEnabled = true; + this.ffEncPreset.Items.AddRange(new object[] { + "veryfast", + "faster", + "fast", + "medium", + "slow", + "slower", + "veryslow"}); + this.ffEncPreset.Location = new System.Drawing.Point(280, 217); + this.ffEncPreset.Name = "ffEncPreset"; + this.ffEncPreset.Size = new System.Drawing.Size(250, 21); + this.ffEncPreset.TabIndex = 78; + // + // label47 + // + this.label47.AutoSize = true; + this.label47.Location = new System.Drawing.Point(10, 220); + this.label47.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); + this.label47.Name = "label47"; + this.label47.Size = new System.Drawing.Size(85, 13); + this.label47.TabIndex = 77; + this.label47.Text = "Encoding Preset"; + // + // label46 + // + this.label46.AutoSize = true; + this.label46.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label46.Location = new System.Drawing.Point(10, 160); + this.label46.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); + this.label46.Name = "label46"; + this.label46.Size = new System.Drawing.Size(65, 16); + this.label46.TabIndex = 76; + this.label46.Text = "FFmpeg"; + // + // label45 + // + this.label45.AutoSize = true; + this.label45.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label45.Location = new System.Drawing.Point(10, 10); + this.label45.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); + this.label45.Name = "label45"; + this.label45.Size = new System.Drawing.Size(63, 16); + this.label45.TabIndex = 75; + this.label45.Text = "General"; + // // label41 // this.label41.AutoSize = true; this.label41.ForeColor = System.Drawing.Color.Silver; - this.label41.Location = new System.Drawing.Point(308, 280); + this.label41.Location = new System.Drawing.Point(308, 250); this.label41.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); this.label41.Name = "label41"; this.label41.Size = new System.Drawing.Size(423, 13); @@ -1137,7 +1233,7 @@ // ffprobeCountFrames // this.ffprobeCountFrames.AutoSize = true; - this.ffprobeCountFrames.Location = new System.Drawing.Point(280, 280); + this.ffprobeCountFrames.Location = new System.Drawing.Point(280, 250); this.ffprobeCountFrames.Name = "ffprobeCountFrames"; this.ffprobeCountFrames.Size = new System.Drawing.Size(15, 14); this.ffprobeCountFrames.TabIndex = 73; @@ -1146,7 +1242,7 @@ // label40 // this.label40.AutoSize = true; - this.label40.Location = new System.Drawing.Point(10, 280); + this.label40.Location = new System.Drawing.Point(10, 250); this.label40.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); this.label40.Name = "label40"; this.label40.Size = new System.Drawing.Size(162, 13); @@ -1157,7 +1253,7 @@ // this.label38.AutoSize = true; this.label38.ForeColor = System.Drawing.Color.Silver; - this.label38.Location = new System.Drawing.Point(570, 224); + this.label38.Location = new System.Drawing.Point(570, 194); this.label38.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); this.label38.Name = "label38"; this.label38.Size = new System.Drawing.Size(131, 13); @@ -1168,7 +1264,7 @@ // this.panel11.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent; this.panel11.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; - this.panel11.Location = new System.Drawing.Point(536, 220); + this.panel11.Location = new System.Drawing.Point(536, 190); this.panel11.Name = "panel11"; this.panel11.Size = new System.Drawing.Size(21, 21); this.panel11.TabIndex = 61; @@ -1178,7 +1274,7 @@ // this.ffEncThreads.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); this.ffEncThreads.ForeColor = System.Drawing.Color.White; - this.ffEncThreads.Location = new System.Drawing.Point(280, 220); + this.ffEncThreads.Location = new System.Drawing.Point(280, 190); this.ffEncThreads.MinimumSize = new System.Drawing.Size(4, 21); this.ffEncThreads.Name = "ffEncThreads"; this.ffEncThreads.Size = new System.Drawing.Size(250, 21); @@ -1187,7 +1283,7 @@ // label37 // this.label37.AutoSize = true; - this.label37.Location = new System.Drawing.Point(10, 220); + this.label37.Location = new System.Drawing.Point(10, 190); this.label37.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); this.label37.Name = "label37"; this.label37.Size = new System.Drawing.Size(204, 13); @@ -1271,105 +1367,6 @@ this.titleLabel.TabIndex = 1; this.titleLabel.Text = "Settings"; // - // label43 - // - this.label43.AutoSize = true; - this.label43.Location = new System.Drawing.Point(10, 190); - this.label43.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); - this.label43.Name = "label43"; - this.label43.Size = new System.Drawing.Size(135, 13); - this.label43.TabIndex = 58; - this.label43.Text = "NCNN Processing Threads"; - // - // ncnnThreads - // - this.ncnnThreads.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); - this.ncnnThreads.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.ncnnThreads.ForeColor = System.Drawing.Color.White; - this.ncnnThreads.FormattingEnabled = true; - this.ncnnThreads.Items.AddRange(new object[] { - "1", - "2", - "3", - "4"}); - this.ncnnThreads.Location = new System.Drawing.Point(280, 187); - this.ncnnThreads.Name = "ncnnThreads"; - this.ncnnThreads.Size = new System.Drawing.Size(50, 21); - this.ncnnThreads.TabIndex = 59; - // - // label44 - // - this.label44.AutoSize = true; - this.label44.ForeColor = System.Drawing.Color.Silver; - this.label44.Location = new System.Drawing.Point(370, 191); - this.label44.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); - this.label44.Name = "label44"; - this.label44.Size = new System.Drawing.Size(358, 13); - this.label44.TabIndex = 60; - this.label44.Text = "Use 1 for small videos, 2 for >1080p, higher values might cause slowdown!"; - // - // panel12 - // - this.panel12.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent; - this.panel12.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; - this.panel12.Location = new System.Drawing.Point(336, 187); - this.panel12.Name = "panel12"; - this.panel12.Size = new System.Drawing.Size(21, 21); - this.panel12.TabIndex = 58; - this.toolTip1.SetToolTip(this.panel12, "Allows custom input."); - // - // label45 - // - this.label45.AutoSize = true; - this.label45.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label45.Location = new System.Drawing.Point(10, 10); - this.label45.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); - this.label45.Name = "label45"; - this.label45.Size = new System.Drawing.Size(63, 16); - this.label45.TabIndex = 75; - this.label45.Text = "General"; - // - // label46 - // - this.label46.AutoSize = true; - this.label46.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label46.Location = new System.Drawing.Point(10, 190); - this.label46.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); - this.label46.Name = "label46"; - this.label46.Size = new System.Drawing.Size(65, 16); - this.label46.TabIndex = 76; - this.label46.Text = "FFmpeg"; - // - // label47 - // - this.label47.AutoSize = true; - this.label47.Location = new System.Drawing.Point(10, 250); - this.label47.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7); - this.label47.Name = "label47"; - this.label47.Size = new System.Drawing.Size(85, 13); - this.label47.TabIndex = 77; - this.label47.Text = "Encoding Preset"; - // - // ffEncPreset - // - this.ffEncPreset.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); - this.ffEncPreset.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.ffEncPreset.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.ffEncPreset.ForeColor = System.Drawing.Color.White; - this.ffEncPreset.FormattingEnabled = true; - this.ffEncPreset.Items.AddRange(new object[] { - "veryfast", - "faster", - "fast", - "medium", - "slow", - "slower", - "veryslow"}); - this.ffEncPreset.Location = new System.Drawing.Point(280, 247); - this.ffEncPreset.Name = "ffEncPreset"; - this.ffEncPreset.Size = new System.Drawing.Size(250, 21); - this.ffEncPreset.TabIndex = 78; - // // SettingsForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); diff --git a/Code/Forms/UpdaterForm.cs b/Code/Forms/UpdaterForm.cs index 170d222..3bbdc81 100644 --- a/Code/Forms/UpdaterForm.cs +++ b/Code/Forms/UpdaterForm.cs @@ -32,8 +32,16 @@ namespace Flowframes.Forms } else { - updateBtn.Text = "Update To Latest Version!"; - statusLabel.Text = "Update Available!"; + if(installed < latest) + { + updateBtn.Text = "Update To Latest Version!"; + statusLabel.Text = "Update Available!"; + } + else + { + updateBtn.Text = "Rollback To Public Version"; + statusLabel.Text = "Using Newer Version Than Latest Public Release."; + } } updateBtn.Enabled = true; diff --git a/Code/Main/BatchProcessing.cs b/Code/Main/BatchProcessing.cs index eb76ecc..1a1e214 100644 --- a/Code/Main/BatchProcessing.cs +++ b/Code/Main/BatchProcessing.cs @@ -19,7 +19,7 @@ namespace Flowframes.Main public static async void Start() { stopped = false; - Program.mainForm.GetMainTabControl().SelectedIndex = 2; + Program.mainForm.SetTab("preview"); int initTaskCount = Program.batchQueue.Count; for (int i = 0; i < initTaskCount; i++) @@ -35,7 +35,7 @@ namespace Flowframes.Main } Logger.Log("[Queue] Finished queue processing."); SetBusy(false); - Program.mainForm.GetMainTabControl().SelectedIndex = 0; + Program.mainForm.SetTab("interpolation"); } public static void Stop() diff --git a/Code/Main/Interpolate.cs b/Code/Main/Interpolate.cs index 6f20c9c..cf7138d 100644 --- a/Code/Main/Interpolate.cs +++ b/Code/Main/Interpolate.cs @@ -20,7 +20,7 @@ namespace Flowframes { public class Interpolate { - public enum OutMode { VidMp4, VidGif, ImgPng, ImgJpg } + public enum OutMode { VidMp4, VidGif, ImgPng } public static string currentTempDir; static string framesPath; @@ -29,6 +29,7 @@ namespace Flowframes public static float currentOutFps; public static string lastInputPath; + public static AI lastAi; public static bool canceled = false; @@ -52,6 +53,7 @@ namespace Flowframes if (!Utils.CheckDeleteOldTempFolder()) return; // Try to delete temp folder if an old one exists if(!Utils.CheckPathValid(inPath)) return; // Check if input path/file is valid Utils.PathAsciiCheck(inPath, outDir); + lastAi = ai; Program.mainForm.SetStatus("Starting..."); Program.mainForm.SetWorking(true); await Task.Delay(10); @@ -131,8 +133,6 @@ namespace Flowframes if (Config.GetInt("dedupMode") == 1) await MagickDedupe.Run(framesPath); - //await Task.Delay(10000); - if (Config.GetInt("timingMode") == 1 && Config.GetInt("dedupMode") != 0) await VfrDedupe.CreateTimecodeFile(framesPath, Config.GetBool("enableLoop"), interpFactor, firstFrameFix); @@ -140,8 +140,11 @@ namespace Flowframes MagickDedupe.RenameCounterDir(framesPath, "png"); MagickDedupe.ZeroPadDir(framesPath, "png", 8); - if (firstFrameFix) - IOUtils.TryCopy(new DirectoryInfo(framesPath).GetFiles("*.png")[0].FullName, Path.Combine(framesPath, "00000000.png"), true); + if (lastAi.aiName == Networks.rifeCuda.aiName) + { + bool s = IOUtils.TryCopy(new DirectoryInfo(framesPath).GetFiles("*.png")[0].FullName, Path.Combine(framesPath, "00000000.png"), true); + Logger.Log("FirstFrameFix TryCopy Success:" + s, true); + } } static async Task RunAi(string outpath, int targetFrames, int tilesize, AI ai) @@ -170,7 +173,7 @@ namespace Flowframes if (AiProcess.processTime.IsRunning && Directory.Exists(outdir)) { if (firstProgUpd && Program.mainForm.IsInFocus()) - Program.mainForm.GetMainTabControl().SelectedIndex = 2; + Program.mainForm.SetTab("preview"); firstProgUpd = false; string[] frames = Directory.GetFiles(outdir, $"*.{Utils.lastExt}"); if (frames.Length > 1) @@ -197,7 +200,7 @@ namespace Flowframes if(!Config.GetBool("keepTempFolder")) IOUtils.TryDeleteIfExists(currentTempDir); Program.mainForm.SetWorking(false); - Program.mainForm.mainTabControl.SelectedIndex = 0; + Program.mainForm.SetTab("interpolation"); Logger.Log("Canceled interpolation."); if (!string.IsNullOrWhiteSpace(reason) && !noMsgBox) Utils.ShowMessage($"Canceled:\n\n{reason}"); diff --git a/Code/OS/AiProcess.cs b/Code/OS/AiProcess.cs index afecab6..6f4dfde 100644 --- a/Code/OS/AiProcess.cs +++ b/Code/OS/AiProcess.cs @@ -22,10 +22,9 @@ namespace Flowframes public static int lastStartupTimeMs = 1000; - static void Init (Process proc, int startupTimeMs, string defaultExt = "png", bool needsFirstFrameFix = false) + static void Init (Process proc, int startupTimeMs, string defaultExt = "png") { lastStartupTimeMs = startupTimeMs; - Interpolate.firstFrameFix = needsFirstFrameFix; InterpolateUtils.lastExt = defaultExt; if (Config.GetBool("jpegInterps")) InterpolateUtils.lastExt = "jpg"; processTime.Restart(); @@ -134,8 +133,7 @@ namespace Flowframes string rifeDir = Path.Combine(Paths.GetPkgPath(), Path.GetFileNameWithoutExtension(Packages.rifeCuda.fileName)); Process rifePy = OSUtils.NewProcess(!OSUtils.ShowHiddenCmd()); - Logger.Log("HIDDEN: " + !OSUtils.ShowHiddenCmd()); - Init(rifePy, 3000, "png", true); + Init(rifePy, 3000, "png"); string args = $" --input {framesPath.Wrap()} --times {(int)Math.Log(interpFactor, 2)}"; rifePy.StartInfo.Arguments = $"{OSUtils.GetHiddenCmdArg()} cd /D {rifeDir.Wrap()} & " + $"set CUDA_VISIBLE_DEVICES={Config.Get("torchGpus")} & {Python.GetPyCmd()} {script} {args} --imgformat {InterpolateUtils.lastExt}"; diff --git a/Code/OS/Updater.cs b/Code/OS/Updater.cs index 26bef09..52405cd 100644 --- a/Code/OS/Updater.cs +++ b/Code/OS/Updater.cs @@ -82,7 +82,7 @@ namespace Flowframes.OS int latest = latestVer.GetInt(); int installed = GetInstalledVer(); - if (installed != latest) + if (installed < latest) Logger.Log("An update for Flowframes is available! Download it using the Updater."); else Logger.Log("Flowframes is up to date."); diff --git a/Code/Program.cs b/Code/Program.cs index 8541d73..b89dd6d 100644 --- a/Code/Program.cs +++ b/Code/Program.cs @@ -12,7 +12,7 @@ namespace Flowframes { static class Program { - public const int version = 15; + public const int version = 16; public static Form1 mainForm; diff --git a/Code/Properties/Resources.Designer.cs b/Code/Properties/Resources.Designer.cs index ed254c2..f72b81d 100644 --- a/Code/Properties/Resources.Designer.cs +++ b/Code/Properties/Resources.Designer.cs @@ -170,6 +170,16 @@ namespace Flowframes.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flowframesIcoNew_512px { + get { + object obj = ResourceManager.GetObject("flowframesIcoNew_512px", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// diff --git a/Code/Properties/Resources.resx b/Code/Properties/Resources.resx index 6a6d8a1..739a066 100644 --- a/Code/Properties/Resources.resx +++ b/Code/Properties/Resources.resx @@ -121,9 +121,6 @@ ..\Resources\baseline_image_white_48dp-4x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\baseline_image_white_48dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\baseline_queue_white_48dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -139,6 +136,9 @@ ..\Resources\baseline_system_update_alt_white_48dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\patreon256px.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\questmark-72px-bordeer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -157,8 +157,8 @@ ..\Resources\separatorTest1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\patreon256px.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\baseline_image_white_48dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\baseline_create_white_18dp-semiTransparent.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -169,4 +169,7 @@ ..\Resources\baseline_image_white_48dp-4x-25pcAlpha.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\flowframesIcoNew-512px.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/Code/Resources/flowframesIcoNew-512px.png b/Code/Resources/flowframesIcoNew-512px.png new file mode 100644 index 0000000000000000000000000000000000000000..1e78c398bbd317aa2a661e744a165a2e1e0cac63 GIT binary patch literal 3842 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 literal 0 HcmV?d00001 diff --git a/Code/Resources/flowframesIcoNew.png b/Code/Resources/flowframesIcoNew.png new file mode 100644 index 0000000000000000000000000000000000000000..2d8579a292744025adc01f92ee5851cee49cca7f GIT binary patch literal 341888 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

oDvgW!F+I|kRZ#io7 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