Added NCNN threads option, tilesize support for RIFE-NCNN

This commit is contained in:
N00MKRAD
2020-11-25 17:27:15 +01:00
parent 6c8e3732a2
commit 8ddd9fc2a1
8 changed files with 455 additions and 396 deletions

View File

@@ -15,8 +15,9 @@ namespace Flowframes.Data
public string description;
public FlowPackage pkg;
public int minPkgVer;
public bool supportsTiling;
public AI(string aiNameArg, string friendlyNameArg, string descArg, FlowPackage pkgArg, int minPkgVerForThisBuild)
public AI(string aiNameArg, string friendlyNameArg, string descArg, FlowPackage pkgArg, int minPkgVerForThisBuild, bool supportsTilingArg)
{
aiName = aiNameArg;
aiNameShort = aiNameArg.Split(' ')[0];
@@ -25,6 +26,7 @@ namespace Flowframes.Data
description = descArg;
pkg = pkgArg;
minPkgVer = minPkgVerForThisBuild;
supportsTiling = supportsTilingArg;
}
}
}

View File

@@ -6,10 +6,10 @@ namespace Flowframes.Data
{
class Networks
{
public static AI rifeCuda = new AI("RIFE_CUDA", "RIFE", "CUDA/Pytorch Implementation of RIFE", Packages.rifeCuda, 1);
public static AI rifeNcnn = new AI("RIFE_NCNN", "RIFE (NCNN)", "Vulkan/NCNN Implementation of RIFE", Packages.rifeNcnn, 1);
public static AI dainNcnn = new AI("DAIN_NCNN", "DAIN (NCNN)", "Vulkan/NCNN Implementation of DAIN", Packages.dainNcnn, 0);
public static AI cainNcnn = new AI("CAIN_NCNN", "CAIN (NCNN)", "Vulkan/NCNN Implementation of CAIN", Packages.cainNcnn, 0);
public static AI rifeCuda = new AI("RIFE_CUDA", "RIFE", "CUDA/Pytorch Implementation of RIFE", Packages.rifeCuda, 1, false);
public static AI rifeNcnn = new AI("RIFE_NCNN", "RIFE (NCNN)", "Vulkan/NCNN Implementation of RIFE", Packages.rifeNcnn, 1, true);
public static AI dainNcnn = new AI("DAIN_NCNN", "DAIN (NCNN)", "Vulkan/NCNN Implementation of DAIN", Packages.dainNcnn, 0, true);
public static AI cainNcnn = new AI("CAIN_NCNN", "CAIN (NCNN)", "Vulkan/NCNN Implementation of CAIN", Packages.cainNcnn, 0, true);
public static List<AI> networks = new List<AI>();

676
Code/Form1.Designer.cs generated
View File

@@ -31,13 +31,12 @@
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
this.titleLabel = new System.Windows.Forms.Label();
this.tilesizeComboxCain = new System.Windows.Forms.ComboBox();
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();
this.label9 = new System.Windows.Forms.Label();
this.tilesizeComboxDain = new System.Windows.Forms.ComboBox();
this.label8 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label6 = new System.Windows.Forms.Label();
@@ -78,6 +77,21 @@
this.panel1 = new System.Windows.Forms.Panel();
this.statusLabel = new System.Windows.Forms.Label();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.updateBtn = new HTAlt.WinForms.HTButton();
this.queueBtn = new HTAlt.WinForms.HTButton();
this.panel7 = new System.Windows.Forms.Panel();
this.pictureBox4 = new System.Windows.Forms.PictureBox();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.info1 = new System.Windows.Forms.PictureBox();
this.panel4 = new System.Windows.Forms.Panel();
this.panel2 = new System.Windows.Forms.Panel();
this.panel3 = new System.Windows.Forms.Panel();
this.settingsBtn = new HTAlt.WinForms.HTButton();
this.patreonBtn = new HTAlt.WinForms.HTButton();
this.paypalBtn = new HTAlt.WinForms.HTButton();
this.discordBtn = new HTAlt.WinForms.HTButton();
this.installerBtn = new HTAlt.WinForms.HTButton();
this.longProgBar = new HTAlt.WinForms.HTProgressBar();
this.cancelBtn = new System.Windows.Forms.Button();
this.mainTabControl = new HTAlt.WinForms.HTTabControl();
@@ -87,41 +101,26 @@
this.browseOutBtn = new HTAlt.WinForms.HTButton();
this.browseInputFileBtn = new HTAlt.WinForms.HTButton();
this.browseInputBtn = new HTAlt.WinForms.HTButton();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.videoUtilsTab = new System.Windows.Forms.TabPage();
this.label10 = new System.Windows.Forms.Label();
this.utilsExtractAudioCbox = new System.Windows.Forms.CheckBox();
this.previewTab = new System.Windows.Forms.TabPage();
this.abtTab = new System.Windows.Forms.TabPage();
this.updateBtn = new HTAlt.WinForms.HTButton();
this.htButton1 = new HTAlt.WinForms.HTButton();
this.queueBtn = new HTAlt.WinForms.HTButton();
this.panel7 = new System.Windows.Forms.Panel();
this.pictureBox4 = new System.Windows.Forms.PictureBox();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.info1 = new System.Windows.Forms.PictureBox();
this.panel4 = new System.Windows.Forms.Panel();
this.panel2 = new System.Windows.Forms.Panel();
this.panel3 = new System.Windows.Forms.Panel();
this.previewPicturebox = new System.Windows.Forms.PictureBox();
this.settingsBtn = new HTAlt.WinForms.HTButton();
this.patreonBtn = new HTAlt.WinForms.HTButton();
this.paypalBtn = new HTAlt.WinForms.HTButton();
this.discordBtn = new HTAlt.WinForms.HTButton();
this.installerBtn = new HTAlt.WinForms.HTButton();
this.abtTab = new System.Windows.Forms.TabPage();
this.htButton1 = new HTAlt.WinForms.HTButton();
this.panel1.SuspendLayout();
this.mainTabControl.SuspendLayout();
this.interpOptsTab.SuspendLayout();
this.videoUtilsTab.SuspendLayout();
this.previewTab.SuspendLayout();
this.abtTab.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.info1)).BeginInit();
this.mainTabControl.SuspendLayout();
this.interpOptsTab.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
this.videoUtilsTab.SuspendLayout();
this.previewTab.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.previewPicturebox)).BeginInit();
this.abtTab.SuspendLayout();
this.SuspendLayout();
//
// titleLabel
@@ -136,22 +135,26 @@
this.titleLabel.TabIndex = 0;
this.titleLabel.Text = "Flowframes Video Interpolator";
//
// tilesizeComboxCain
// tilesize
//
this.tilesizeComboxCain.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.tilesizeComboxCain.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.tilesizeComboxCain.ForeColor = System.Drawing.Color.White;
this.tilesizeComboxCain.FormattingEnabled = true;
this.tilesizeComboxCain.Items.AddRange(new object[] {
this.tilesize.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.tilesize.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.tilesize.ForeColor = System.Drawing.Color.White;
this.tilesize.FormattingEnabled = true;
this.tilesize.Items.AddRange(new object[] {
"384",
"512",
"768",
"1024",
"1280",
"1536",
"1792",
"2048"});
this.tilesizeComboxCain.Location = new System.Drawing.Point(281, 127);
this.tilesizeComboxCain.Name = "tilesizeComboxCain";
this.tilesizeComboxCain.Size = new System.Drawing.Size(125, 23);
this.tilesizeComboxCain.TabIndex = 25;
"2048",
"3072",
"4096"});
this.tilesize.Location = new System.Drawing.Point(281, 127);
this.tilesize.Name = "tilesize";
this.tilesize.Size = new System.Drawing.Size(125, 23);
this.tilesize.TabIndex = 25;
this.tilesize.SelectedIndexChanged += new System.EventHandler(this.tilesize_SelectedIndexChanged);
//
// tileSizeInfoLabel
//
@@ -218,28 +221,6 @@
this.label9.TabIndex = 15;
this.label9.Text = "Output Mode";
//
// tilesizeComboxDain
//
this.tilesizeComboxDain.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.tilesizeComboxDain.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.tilesizeComboxDain.ForeColor = System.Drawing.Color.White;
this.tilesizeComboxDain.FormattingEnabled = true;
this.tilesizeComboxDain.Items.AddRange(new object[] {
"256",
"384",
"448",
"512",
"640",
"768",
"832",
"960",
"1024",
"1280"});
this.tilesizeComboxDain.Location = new System.Drawing.Point(281, 127);
this.tilesizeComboxDain.Name = "tilesizeComboxDain";
this.tilesizeComboxDain.Size = new System.Drawing.Size(125, 23);
this.tilesizeComboxDain.TabIndex = 14;
//
// label8
//
this.label8.AutoSize = true;
@@ -661,6 +642,7 @@
this.logBox.MinimumSize = new System.Drawing.Size(4, 21);
this.logBox.Multiline = true;
this.logBox.Name = "logBox";
this.logBox.ReadOnly = true;
this.logBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.logBox.Size = new System.Drawing.Size(701, 111);
this.logBox.TabIndex = 5;
@@ -705,245 +687,6 @@
this.statusLabel.TabIndex = 7;
this.statusLabel.Text = "Ready";
//
// longProgBar
//
this.longProgBar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.longProgBar.BorderThickness = 0;
this.longProgBar.Location = new System.Drawing.Point(221, 474);
this.longProgBar.Name = "longProgBar";
this.longProgBar.Size = new System.Drawing.Size(700, 15);
this.longProgBar.TabIndex = 33;
//
// cancelBtn
//
this.cancelBtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.cancelBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.cancelBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.cancelBtn.ForeColor = System.Drawing.Color.LightCoral;
this.cancelBtn.Location = new System.Drawing.Point(12, 418);
this.cancelBtn.Name = "cancelBtn";
this.cancelBtn.Size = new System.Drawing.Size(203, 71);
this.cancelBtn.TabIndex = 34;
this.cancelBtn.Text = "Cancel";
this.cancelBtn.UseVisualStyleBackColor = false;
this.cancelBtn.Visible = false;
this.cancelBtn.Click += new System.EventHandler(this.cancelBtn_Click);
//
// mainTabControl
//
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.interpOptsTab);
this.mainTabControl.Controls.Add(this.videoUtilsTab);
this.mainTabControl.Controls.Add(this.previewTab);
this.mainTabControl.Controls.Add(this.abtTab);
this.mainTabControl.DisableClose = true;
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.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";
this.mainTabControl.Padding = new System.Drawing.Point(14, 4);
this.mainTabControl.SelectedIndex = 0;
this.mainTabControl.SelectedTabButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(28)))), ((int)(((byte)(151)))), ((int)(((byte)(234)))));
this.mainTabControl.SelectedTabColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(122)))), ((int)(((byte)(204)))));
this.mainTabControl.Size = new System.Drawing.Size(909, 289);
this.mainTabControl.TabIndex = 4;
this.mainTabControl.TextColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
this.mainTabControl.UnderBorderTabLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(67)))), ((int)(((byte)(70)))));
this.mainTabControl.UnselectedBorderTabLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(63)))), ((int)(((byte)(70)))));
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.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form1_DragDrop);
this.mainTabControl.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter);
//
// 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.tilesizeComboxDain);
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.tilesizeComboxCain);
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);
this.interpOptsTab.Controls.Add(this.label6);
this.interpOptsTab.Controls.Add(this.label13);
this.interpOptsTab.Controls.Add(this.label7);
this.interpOptsTab.Controls.Add(this.label8);
this.interpOptsTab.Controls.Add(this.label9);
this.interpOptsTab.Controls.Add(this.outModeCombox);
this.interpOptsTab.Location = new System.Drawing.Point(4, 27);
this.interpOptsTab.Name = "interpOptsTab";
this.interpOptsTab.Padding = new System.Windows.Forms.Padding(3);
this.interpOptsTab.Size = new System.Drawing.Size(901, 258);
this.interpOptsTab.TabIndex = 0;
this.interpOptsTab.Text = "Interpolation";
this.interpOptsTab.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form1_DragDrop);
this.interpOptsTab.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter);
//
// tilesizeNotAvailLabel
//
this.tilesizeNotAvailLabel.ForeColor = System.Drawing.Color.Silver;
this.tilesizeNotAvailLabel.Location = new System.Drawing.Point(278, 131);
this.tilesizeNotAvailLabel.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0);
this.tilesizeNotAvailLabel.Name = "tilesizeNotAvailLabel";
this.tilesizeNotAvailLabel.Size = new System.Drawing.Size(203, 24);
this.tilesizeNotAvailLabel.TabIndex = 37;
this.tilesizeNotAvailLabel.Text = "Not available for the selected AI.";
this.tilesizeNotAvailLabel.Visible = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.ForeColor = System.Drawing.Color.Silver;
this.label1.Location = new System.Drawing.Point(492, 162);
this.label1.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(360, 15);
this.label1.TabIndex = 36;
this.label1.Text = "Export encoder and quality options can be changed in the Settings.";
//
// browseOutBtn
//
this.browseOutBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.browseOutBtn.FlatAppearance.BorderSize = 0;
this.browseOutBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.browseOutBtn.ForeColor = System.Drawing.Color.White;
this.browseOutBtn.Location = new System.Drawing.Point(689, 68);
this.browseOutBtn.Name = "browseOutBtn";
this.browseOutBtn.Size = new System.Drawing.Size(206, 23);
this.browseOutBtn.TabIndex = 35;
this.browseOutBtn.Text = "Browse (Folder)";
this.browseOutBtn.UseVisualStyleBackColor = false;
this.browseOutBtn.Click += new System.EventHandler(this.browseOutBtn_Click);
//
// browseInputFileBtn
//
this.browseInputFileBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.browseInputFileBtn.FlatAppearance.BorderSize = 0;
this.browseInputFileBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.browseInputFileBtn.ForeColor = System.Drawing.Color.White;
this.browseInputFileBtn.Location = new System.Drawing.Point(795, 39);
this.browseInputFileBtn.Name = "browseInputFileBtn";
this.browseInputFileBtn.Size = new System.Drawing.Size(100, 23);
this.browseInputFileBtn.TabIndex = 34;
this.browseInputFileBtn.Text = "Browse (Video)";
this.browseInputFileBtn.UseVisualStyleBackColor = false;
this.browseInputFileBtn.Click += new System.EventHandler(this.browseInputFileBtn_Click);
//
// browseInputBtn
//
this.browseInputBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.browseInputBtn.FlatAppearance.BorderSize = 0;
this.browseInputBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.browseInputBtn.ForeColor = System.Drawing.Color.White;
this.browseInputBtn.Location = new System.Drawing.Point(689, 39);
this.browseInputBtn.Name = "browseInputBtn";
this.browseInputBtn.Size = new System.Drawing.Size(100, 23);
this.browseInputBtn.TabIndex = 33;
this.browseInputBtn.Text = "Browse (Folder)";
this.browseInputBtn.UseVisualStyleBackColor = false;
this.browseInputBtn.Click += new System.EventHandler(this.browseInputBtn_Click);
//
// videoUtilsTab
//
this.videoUtilsTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.videoUtilsTab.Controls.Add(this.panel4);
this.videoUtilsTab.Controls.Add(this.panel2);
this.videoUtilsTab.Controls.Add(this.panel3);
this.videoUtilsTab.Controls.Add(this.label10);
this.videoUtilsTab.Controls.Add(this.utilsExtractAudioCbox);
this.videoUtilsTab.Controls.Add(this.utilsDedupTestBtn);
this.videoUtilsTab.Controls.Add(this.label16);
this.videoUtilsTab.Controls.Add(this.utilsDedupBtn);
this.videoUtilsTab.Controls.Add(this.debugExtractFramesBtn);
this.videoUtilsTab.Controls.Add(this.label26);
this.videoUtilsTab.Controls.Add(this.label17);
this.videoUtilsTab.Controls.Add(this.utilsLoopVidBtn);
this.videoUtilsTab.Controls.Add(this.label24);
this.videoUtilsTab.Controls.Add(this.label18);
this.videoUtilsTab.Controls.Add(this.utilsConvCrf);
this.videoUtilsTab.Controls.Add(this.utilsLoopTimesCombox);
this.videoUtilsTab.Controls.Add(this.utilsConvertMp4Btn);
this.videoUtilsTab.Controls.Add(this.label19);
this.videoUtilsTab.Controls.Add(this.label23);
this.videoUtilsTab.Controls.Add(this.label20);
this.videoUtilsTab.Controls.Add(this.utilsChangeSpeedBtn);
this.videoUtilsTab.Controls.Add(this.utilsSpeedCombox);
this.videoUtilsTab.Location = new System.Drawing.Point(4, 27);
this.videoUtilsTab.Name = "videoUtilsTab";
this.videoUtilsTab.Padding = new System.Windows.Forms.Padding(3);
this.videoUtilsTab.Size = new System.Drawing.Size(901, 258);
this.videoUtilsTab.TabIndex = 1;
this.videoUtilsTab.Text = "Video Utilities";
//
// label10
//
this.label10.AutoSize = true;
this.label10.ForeColor = System.Drawing.Color.White;
this.label10.Location = new System.Drawing.Point(441, 11);
this.label10.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(107, 15);
this.label10.TabIndex = 35;
this.label10.Text = "Also Extract Audio:";
//
// utilsExtractAudioCbox
//
this.utilsExtractAudioCbox.AutoSize = true;
this.utilsExtractAudioCbox.Checked = true;
this.utilsExtractAudioCbox.CheckState = System.Windows.Forms.CheckState.Checked;
this.utilsExtractAudioCbox.Location = new System.Drawing.Point(575, 11);
this.utilsExtractAudioCbox.Name = "utilsExtractAudioCbox";
this.utilsExtractAudioCbox.Size = new System.Drawing.Size(15, 14);
this.utilsExtractAudioCbox.TabIndex = 34;
this.utilsExtractAudioCbox.UseVisualStyleBackColor = true;
//
// previewTab
//
this.previewTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.previewTab.Controls.Add(this.previewPicturebox);
this.previewTab.Location = new System.Drawing.Point(4, 27);
this.previewTab.Margin = new System.Windows.Forms.Padding(0);
this.previewTab.Name = "previewTab";
this.previewTab.Size = new System.Drawing.Size(901, 258);
this.previewTab.TabIndex = 3;
this.previewTab.Text = "Preview";
//
// abtTab
//
this.abtTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.abtTab.Controls.Add(this.label14);
this.abtTab.Location = new System.Drawing.Point(4, 27);
this.abtTab.Name = "abtTab";
this.abtTab.Padding = new System.Windows.Forms.Padding(3);
this.abtTab.Size = new System.Drawing.Size(901, 258);
this.abtTab.TabIndex = 2;
this.abtTab.Text = "About";
//
// updateBtn
//
this.updateBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
@@ -962,23 +705,6 @@
this.updateBtn.UseVisualStyleBackColor = false;
this.updateBtn.Click += new System.EventHandler(this.updateBtn_Click);
//
// htButton1
//
this.htButton1.BackColor = System.Drawing.Color.Transparent;
this.htButton1.ButtonImage = global::Flowframes.Properties.Resources.separatorTest1;
this.htButton1.DrawImage = true;
this.htButton1.Enabled = false;
this.htButton1.FlatAppearance.BorderSize = 0;
this.htButton1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.htButton1.ForeColor = System.Drawing.Color.White;
this.htButton1.ImageIndex = 0;
this.htButton1.ImageSizeMode = HTAlt.WinForms.HTButton.ButtonImageSizeMode.Zoom;
this.htButton1.Location = new System.Drawing.Point(698, 12);
this.htButton1.Name = "htButton1";
this.htButton1.Size = new System.Drawing.Size(40, 40);
this.htButton1.TabIndex = 40;
this.htButton1.UseVisualStyleBackColor = false;
//
// queueBtn
//
this.queueBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
@@ -1029,16 +755,6 @@
this.pictureBox3.TabStop = false;
this.toolTip1.SetToolTip(this.pictureBox3, "Supports drag-n-drop.\r\nGets auto-assigned whenever you set an input file.");
//
// pictureBox2
//
this.pictureBox2.BackgroundImage = global::Flowframes.Properties.Resources.questmark_72px_bordeer;
this.pictureBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pictureBox2.Location = new System.Drawing.Point(86, 158);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(29, 21);
this.pictureBox2.TabIndex = 29;
this.pictureBox2.TabStop = false;
//
// pictureBox1
//
this.pictureBox1.BackgroundImage = global::Flowframes.Properties.Resources.questmark_72px_bordeer;
@@ -1093,19 +809,6 @@
this.panel3.TabIndex = 58;
this.toolTip1.SetToolTip(this.panel3, "Allows custom input.");
//
// previewPicturebox
//
this.previewPicturebox.Dock = System.Windows.Forms.DockStyle.Fill;
this.previewPicturebox.Image = global::Flowframes.Properties.Resources.baseline_image_white_48dp_4x_25pcAlpha;
this.previewPicturebox.Location = new System.Drawing.Point(0, 0);
this.previewPicturebox.Margin = new System.Windows.Forms.Padding(0);
this.previewPicturebox.Name = "previewPicturebox";
this.previewPicturebox.Size = new System.Drawing.Size(901, 258);
this.previewPicturebox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.previewPicturebox.TabIndex = 0;
this.previewPicturebox.TabStop = false;
this.previewPicturebox.MouseClick += new System.Windows.Forms.MouseEventHandler(this.previewPicturebox_MouseClick);
//
// settingsBtn
//
this.settingsBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
@@ -1196,6 +899,284 @@
this.installerBtn.UseVisualStyleBackColor = false;
this.installerBtn.Click += new System.EventHandler(this.installerBtn_Click);
//
// longProgBar
//
this.longProgBar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.longProgBar.BorderThickness = 0;
this.longProgBar.Location = new System.Drawing.Point(221, 474);
this.longProgBar.Name = "longProgBar";
this.longProgBar.Size = new System.Drawing.Size(700, 15);
this.longProgBar.TabIndex = 33;
//
// cancelBtn
//
this.cancelBtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.cancelBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.cancelBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.cancelBtn.ForeColor = System.Drawing.Color.LightCoral;
this.cancelBtn.Location = new System.Drawing.Point(12, 418);
this.cancelBtn.Name = "cancelBtn";
this.cancelBtn.Size = new System.Drawing.Size(203, 71);
this.cancelBtn.TabIndex = 34;
this.cancelBtn.Text = "Cancel";
this.cancelBtn.UseVisualStyleBackColor = false;
this.cancelBtn.Visible = false;
this.cancelBtn.Click += new System.EventHandler(this.cancelBtn_Click);
//
// mainTabControl
//
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.interpOptsTab);
this.mainTabControl.Controls.Add(this.videoUtilsTab);
this.mainTabControl.Controls.Add(this.previewTab);
this.mainTabControl.Controls.Add(this.abtTab);
this.mainTabControl.DisableClose = true;
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.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";
this.mainTabControl.Padding = new System.Drawing.Point(14, 4);
this.mainTabControl.SelectedIndex = 0;
this.mainTabControl.SelectedTabButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(28)))), ((int)(((byte)(151)))), ((int)(((byte)(234)))));
this.mainTabControl.SelectedTabColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(122)))), ((int)(((byte)(204)))));
this.mainTabControl.Size = new System.Drawing.Size(909, 289);
this.mainTabControl.TabIndex = 4;
this.mainTabControl.TextColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
this.mainTabControl.UnderBorderTabLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(67)))), ((int)(((byte)(70)))));
this.mainTabControl.UnselectedBorderTabLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(63)))), ((int)(((byte)(70)))));
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.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form1_DragDrop);
this.mainTabControl.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter);
//
// 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);
this.interpOptsTab.Controls.Add(this.label6);
this.interpOptsTab.Controls.Add(this.label13);
this.interpOptsTab.Controls.Add(this.label7);
this.interpOptsTab.Controls.Add(this.label8);
this.interpOptsTab.Controls.Add(this.label9);
this.interpOptsTab.Controls.Add(this.outModeCombox);
this.interpOptsTab.Location = new System.Drawing.Point(4, 27);
this.interpOptsTab.Name = "interpOptsTab";
this.interpOptsTab.Padding = new System.Windows.Forms.Padding(3);
this.interpOptsTab.Size = new System.Drawing.Size(901, 258);
this.interpOptsTab.TabIndex = 0;
this.interpOptsTab.Text = "Interpolation";
this.interpOptsTab.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form1_DragDrop);
this.interpOptsTab.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter);
//
// tilesizeNotAvailLabel
//
this.tilesizeNotAvailLabel.ForeColor = System.Drawing.Color.Silver;
this.tilesizeNotAvailLabel.Location = new System.Drawing.Point(278, 131);
this.tilesizeNotAvailLabel.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0);
this.tilesizeNotAvailLabel.Name = "tilesizeNotAvailLabel";
this.tilesizeNotAvailLabel.Size = new System.Drawing.Size(203, 24);
this.tilesizeNotAvailLabel.TabIndex = 37;
this.tilesizeNotAvailLabel.Text = "Not available for the selected AI.";
this.tilesizeNotAvailLabel.Visible = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.ForeColor = System.Drawing.Color.Silver;
this.label1.Location = new System.Drawing.Point(492, 162);
this.label1.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(360, 15);
this.label1.TabIndex = 36;
this.label1.Text = "Export encoder and quality options can be changed in the Settings.";
//
// browseOutBtn
//
this.browseOutBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.browseOutBtn.FlatAppearance.BorderSize = 0;
this.browseOutBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.browseOutBtn.ForeColor = System.Drawing.Color.White;
this.browseOutBtn.Location = new System.Drawing.Point(689, 68);
this.browseOutBtn.Name = "browseOutBtn";
this.browseOutBtn.Size = new System.Drawing.Size(206, 23);
this.browseOutBtn.TabIndex = 35;
this.browseOutBtn.Text = "Browse (Folder)";
this.browseOutBtn.UseVisualStyleBackColor = false;
this.browseOutBtn.Click += new System.EventHandler(this.browseOutBtn_Click);
//
// browseInputFileBtn
//
this.browseInputFileBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.browseInputFileBtn.FlatAppearance.BorderSize = 0;
this.browseInputFileBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.browseInputFileBtn.ForeColor = System.Drawing.Color.White;
this.browseInputFileBtn.Location = new System.Drawing.Point(795, 39);
this.browseInputFileBtn.Name = "browseInputFileBtn";
this.browseInputFileBtn.Size = new System.Drawing.Size(100, 23);
this.browseInputFileBtn.TabIndex = 34;
this.browseInputFileBtn.Text = "Browse (Video)";
this.browseInputFileBtn.UseVisualStyleBackColor = false;
this.browseInputFileBtn.Click += new System.EventHandler(this.browseInputFileBtn_Click);
//
// browseInputBtn
//
this.browseInputBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.browseInputBtn.FlatAppearance.BorderSize = 0;
this.browseInputBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.browseInputBtn.ForeColor = System.Drawing.Color.White;
this.browseInputBtn.Location = new System.Drawing.Point(689, 39);
this.browseInputBtn.Name = "browseInputBtn";
this.browseInputBtn.Size = new System.Drawing.Size(100, 23);
this.browseInputBtn.TabIndex = 33;
this.browseInputBtn.Text = "Browse (Folder)";
this.browseInputBtn.UseVisualStyleBackColor = false;
this.browseInputBtn.Click += new System.EventHandler(this.browseInputBtn_Click);
//
// pictureBox2
//
this.pictureBox2.BackgroundImage = global::Flowframes.Properties.Resources.questmark_72px_bordeer;
this.pictureBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pictureBox2.Location = new System.Drawing.Point(86, 158);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(29, 21);
this.pictureBox2.TabIndex = 29;
this.pictureBox2.TabStop = false;
//
// videoUtilsTab
//
this.videoUtilsTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.videoUtilsTab.Controls.Add(this.panel4);
this.videoUtilsTab.Controls.Add(this.panel2);
this.videoUtilsTab.Controls.Add(this.panel3);
this.videoUtilsTab.Controls.Add(this.label10);
this.videoUtilsTab.Controls.Add(this.utilsExtractAudioCbox);
this.videoUtilsTab.Controls.Add(this.utilsDedupTestBtn);
this.videoUtilsTab.Controls.Add(this.label16);
this.videoUtilsTab.Controls.Add(this.utilsDedupBtn);
this.videoUtilsTab.Controls.Add(this.debugExtractFramesBtn);
this.videoUtilsTab.Controls.Add(this.label26);
this.videoUtilsTab.Controls.Add(this.label17);
this.videoUtilsTab.Controls.Add(this.utilsLoopVidBtn);
this.videoUtilsTab.Controls.Add(this.label24);
this.videoUtilsTab.Controls.Add(this.label18);
this.videoUtilsTab.Controls.Add(this.utilsConvCrf);
this.videoUtilsTab.Controls.Add(this.utilsLoopTimesCombox);
this.videoUtilsTab.Controls.Add(this.utilsConvertMp4Btn);
this.videoUtilsTab.Controls.Add(this.label19);
this.videoUtilsTab.Controls.Add(this.label23);
this.videoUtilsTab.Controls.Add(this.label20);
this.videoUtilsTab.Controls.Add(this.utilsChangeSpeedBtn);
this.videoUtilsTab.Controls.Add(this.utilsSpeedCombox);
this.videoUtilsTab.Location = new System.Drawing.Point(4, 27);
this.videoUtilsTab.Name = "videoUtilsTab";
this.videoUtilsTab.Padding = new System.Windows.Forms.Padding(3);
this.videoUtilsTab.Size = new System.Drawing.Size(901, 258);
this.videoUtilsTab.TabIndex = 1;
this.videoUtilsTab.Text = "Video Utilities";
//
// label10
//
this.label10.AutoSize = true;
this.label10.ForeColor = System.Drawing.Color.White;
this.label10.Location = new System.Drawing.Point(441, 11);
this.label10.Margin = new System.Windows.Forms.Padding(8, 0, 3, 0);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(107, 15);
this.label10.TabIndex = 35;
this.label10.Text = "Also Extract Audio:";
//
// utilsExtractAudioCbox
//
this.utilsExtractAudioCbox.AutoSize = true;
this.utilsExtractAudioCbox.Checked = true;
this.utilsExtractAudioCbox.CheckState = System.Windows.Forms.CheckState.Checked;
this.utilsExtractAudioCbox.Location = new System.Drawing.Point(575, 11);
this.utilsExtractAudioCbox.Name = "utilsExtractAudioCbox";
this.utilsExtractAudioCbox.Size = new System.Drawing.Size(15, 14);
this.utilsExtractAudioCbox.TabIndex = 34;
this.utilsExtractAudioCbox.UseVisualStyleBackColor = true;
//
// previewTab
//
this.previewTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.previewTab.Controls.Add(this.previewPicturebox);
this.previewTab.Location = new System.Drawing.Point(4, 27);
this.previewTab.Margin = new System.Windows.Forms.Padding(0);
this.previewTab.Name = "previewTab";
this.previewTab.Size = new System.Drawing.Size(901, 258);
this.previewTab.TabIndex = 3;
this.previewTab.Text = "Preview";
//
// previewPicturebox
//
this.previewPicturebox.Dock = System.Windows.Forms.DockStyle.Fill;
this.previewPicturebox.Image = global::Flowframes.Properties.Resources.baseline_image_white_48dp_4x_25pcAlpha;
this.previewPicturebox.Location = new System.Drawing.Point(0, 0);
this.previewPicturebox.Margin = new System.Windows.Forms.Padding(0);
this.previewPicturebox.Name = "previewPicturebox";
this.previewPicturebox.Size = new System.Drawing.Size(901, 258);
this.previewPicturebox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.previewPicturebox.TabIndex = 0;
this.previewPicturebox.TabStop = false;
this.previewPicturebox.MouseClick += new System.Windows.Forms.MouseEventHandler(this.previewPicturebox_MouseClick);
//
// abtTab
//
this.abtTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.abtTab.Controls.Add(this.label14);
this.abtTab.Location = new System.Drawing.Point(4, 27);
this.abtTab.Name = "abtTab";
this.abtTab.Padding = new System.Windows.Forms.Padding(3);
this.abtTab.Size = new System.Drawing.Size(901, 258);
this.abtTab.TabIndex = 2;
this.abtTab.Text = "About";
//
// htButton1
//
this.htButton1.BackColor = System.Drawing.Color.Transparent;
this.htButton1.ButtonImage = global::Flowframes.Properties.Resources.separatorTest1;
this.htButton1.DrawImage = true;
this.htButton1.Enabled = false;
this.htButton1.FlatAppearance.BorderSize = 0;
this.htButton1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.htButton1.ForeColor = System.Drawing.Color.White;
this.htButton1.ImageIndex = 0;
this.htButton1.ImageSizeMode = HTAlt.WinForms.HTButton.ButtonImageSizeMode.Zoom;
this.htButton1.Location = new System.Drawing.Point(698, 12);
this.htButton1.Name = "htButton1";
this.htButton1.Size = new System.Drawing.Size(40, 40);
this.htButton1.TabIndex = 40;
this.htButton1.UseVisualStyleBackColor = false;
//
// Form1
//
this.AllowDrop = true;
@@ -1231,19 +1212,19 @@
this.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.info1)).EndInit();
this.mainTabControl.ResumeLayout(false);
this.interpOptsTab.ResumeLayout(false);
this.interpOptsTab.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
this.videoUtilsTab.ResumeLayout(false);
this.videoUtilsTab.PerformLayout();
this.previewTab.ResumeLayout(false);
this.abtTab.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.info1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.previewPicturebox)).EndInit();
this.abtTab.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
@@ -1264,7 +1245,6 @@
private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox fpsOutTbox;
private System.Windows.Forms.TextBox fpsInTbox;
private System.Windows.Forms.ComboBox tilesizeComboxDain;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.ComboBox outModeCombox;
private System.Windows.Forms.Label label9;
@@ -1279,7 +1259,7 @@
private System.Windows.Forms.ComboBox aiCombox;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.Label tileSizeInfoLabel;
private System.Windows.Forms.ComboBox tilesizeComboxCain;
private System.Windows.Forms.ComboBox tilesize;
private System.Windows.Forms.Label label14;
private System.Windows.Forms.Button debugExtractFramesBtn;
private System.Windows.Forms.Label label16;

View File

@@ -33,8 +33,8 @@ namespace Flowframes
// Main Tab
UIUtils.InitCombox(interpFactorCombox, 0);
UIUtils.InitCombox(outModeCombox, 0);
UIUtils.InitCombox(tilesizeComboxDain, 3);
UIUtils.InitCombox(tilesizeComboxCain, 4);
//ConfigParser.LoadGuiElement(tilesize);
UIUtils.InitCombox(tilesize, 4);
// Video Utils
UIUtils.InitCombox(utilsLoopTimesCombox, 0);
UIUtils.InitCombox(utilsSpeedCombox, 0);
@@ -165,12 +165,7 @@ namespace Flowframes
Interpolate.interpFactor = interpFactorCombox.GetInt();
string inPath = inputTbox.Text.Trim();
string outPath = outputTbox.Text.Trim();
Interpolate.OutMode outMode = GetOutMode();
AI ai = GetAi();
int tilesize = tilesizeComboxDain.GetInt();
if (ai.aiName == Networks.cainNcnn.aiName)
tilesize = tilesizeComboxCain.GetInt();
Interpolate.Start(inPath, outPath, tilesize, outMode, ai);
Interpolate.Start(inPath, outPath, tilesize.GetInt(), GetOutMode(), GetAi());
}
Interpolate.OutMode GetOutMode()
@@ -249,11 +244,12 @@ namespace Flowframes
private void aiCombox_SelectedIndexChanged(object sender, EventArgs e)
{
tilesizeComboxCain.Visible = GetAi().aiName == Networks.cainNcnn.aiName;
tilesizeComboxDain.Visible = GetAi().aiName == Networks.dainNcnn.aiName;
tileSizeInfoLabel.Visible = (tilesizeComboxCain.Visible || tilesizeComboxDain.Visible);
tilesizeNotAvailLabel.Visible = !tileSizeInfoLabel.Visible;
tilesize.Visible = GetAi().supportsTiling;
tileSizeInfoLabel.Visible = tilesize.Visible;
tilesizeNotAvailLabel.Visible = !tilesize.Visible;
interpFactorCombox_SelectedIndexChanged(null, null);
if(GetAi().supportsTiling)
tilesize.Text = Config.GetInt($"tilesize_{GetAi().aiName}").ToString();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
@@ -366,5 +362,11 @@ namespace Flowframes
{
new UpdaterForm().ShowDialog();
}
private void tilesize_SelectedIndexChanged(object sender, EventArgs e)
{
if (!initialized || !GetAi().supportsTiling) return;
Config.Set($"tilesize_{GetAi().aiName}", tilesize.GetInt().ToString());
}
}
}

View File

@@ -122,6 +122,10 @@
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.settingsTabList.SuspendLayout();
this.generalTab.SuspendLayout();
this.tabListPage2.SuspendLayout();
@@ -600,6 +604,10 @@
// aiOptsPage
//
this.aiOptsPage.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
this.aiOptsPage.Controls.Add(this.panel12);
this.aiOptsPage.Controls.Add(this.label44);
this.aiOptsPage.Controls.Add(this.ncnnThreads);
this.aiOptsPage.Controls.Add(this.label43);
this.aiOptsPage.Controls.Add(this.panel2);
this.aiOptsPage.Controls.Add(this.panel1);
this.aiOptsPage.Controls.Add(this.torchGpus);
@@ -1255,6 +1263,53 @@
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.");
//
// SettingsForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@@ -1384,5 +1439,9 @@
private System.Windows.Forms.ComboBox mpdecimateMode;
private System.Windows.Forms.Label label42;
private System.Windows.Forms.Panel magickDedupePanel;
private System.Windows.Forms.Label label44;
private System.Windows.Forms.ComboBox ncnnThreads;
private System.Windows.Forms.Label label43;
private System.Windows.Forms.Panel panel12;
}
}

View File

@@ -34,14 +34,16 @@ namespace Flowframes.Forms
void SaveSettings ()
{
// Clamp...
h264Crf.Text = h264Crf.GetInt().Clamp(0, 40).ToString();
h265Crf.Text = h265Crf.GetInt().Clamp(0, 40).ToString();
gifskiQ.Text = gifskiQ.GetInt().Clamp(0, 100).ToString();
// Remove spaces...
torchGpus.Text = torchGpus.Text.Replace(" ", "");
ncnnGpus.Text = ncnnGpus.Text.Replace(" ", "");
// Force numbers...
ffEncThreads.Text = ffEncThreads.GetInt().ToString();
ncnnThreads.Text = ncnnThreads.GetInt().ToString();
// General
ConfigParser.SaveGuiElement(maxVidHeight);
@@ -60,6 +62,7 @@ namespace Flowframes.Forms
ConfigParser.SaveComboxIndex(rifeMode);
ConfigParser.SaveGuiElement(torchGpus);
ConfigParser.SaveGuiElement(ncnnGpus);
ConfigParser.SaveGuiElement(ncnnThreads);
// Video Export
ConfigParser.SaveGuiElement(minOutVidLength, ConfigParser.StringMode.Int);
ConfigParser.SaveComboxIndex(mp4Enc);
@@ -97,6 +100,7 @@ namespace Flowframes.Forms
ConfigParser.LoadComboxIndex(rifeMode);
ConfigParser.LoadGuiElement(torchGpus);
ConfigParser.LoadGuiElement(ncnnGpus);
ConfigParser.LoadGuiElement(ncnnThreads);
// Video Export
ConfigParser.LoadGuiElement(minOutVidLength);
ConfigParser.LoadComboxIndex(mp4Enc);

View File

@@ -76,34 +76,36 @@ namespace Flowframes.IO
return float.Parse(Get(key));
}
private static string WriteDefaultValIfExists(string key)
private static string WriteDefaultValIfExists(string key) // DEFAULTS TO 0, which means key that use 0 as default are not listed here
{
if (key == "dedupMode") return WriteDefault("dedupMode", "2");
if (key == "dedupThresh") return WriteDefault("dedupThresh", "2");
if (key == "keepFrames") return WriteDefault("keepFrames", "False");
if (key == "enableAudio") return WriteDefault("enableAudio", "True");
if (key == "logProcessOutput") return WriteDefault("logProcessOutput", "False");
if (key == "cmdDebugMode") return WriteDefault("cmdDebugMode", "0");
if (key == "enableLoop") return WriteDefault("enableLoop", "False");
if (key == "ncnnGpus") return WriteDefault("ncnnGpus", "0");
if (key == "torchGpus") return WriteDefault("torchGpus", "0");
if (key == "maxVidHeight") return WriteDefault("maxVidHeight", "2160");
if (key == "keepTempFolder") return WriteDefault("keepTempFolder", "False");
if (key == "deleteLogsOnStartup") return WriteDefault("deleteLogsOnStartup", "True");
if (key == "keepFrames") return WriteDefault("keepFrames", "False");
if (key == "tempDirCustom") return WriteDefault("tempDirCustom", "C:/");
// Interpolation
if (key == "dedupMode") return WriteDefault("dedupMode", "2");
if (key == "dedupThresh") return WriteDefault("dedupThresh", "2");
if (key == "enableAudio") return WriteDefault("enableAudio", "True");
if (key == "enableLoop") return WriteDefault("enableLoop", "False");
if (key == "autoDedupFrames") return WriteDefault("autoDedupFrames", "15");
if (key == "minOutVidLength") return WriteDefault("minOutVidLength", "2");
if (key == "mp4Enc") return WriteDefault("mp4Enc", "0");
if (key == "vfrDedupe") return WriteDefault("vfrDedupe", "True");
if (key == "jpegInterps") return WriteDefault("jpegInterps", "False");
if (key == "timingMode") return WriteDefault("timingMode", "1");
// Video Export
if (key == "h264Crf") return WriteDefault("h264Crf", "20");
if (key == "h265Crf") return WriteDefault("h265Crf", "22");
if (key == "gifskiQ") return WriteDefault("gifskiQ", "95");
if (key == "maxFps") return WriteDefault("maxFps", "0");
if (key == "maxFpsMode") return WriteDefault("maxFpsMode", "0");
if (key == "jpegInterps") return WriteDefault("jpegInterps", "False");
if (key == "minOutVidLength") return WriteDefault("minOutVidLength", "2");
// AI
if (key == "rifeMode") return WriteDefault("rifeMode", ((NvApi.GetVramGb() > 5f) ? 1 : 0).ToString()); // Enable by default if GPU has >5gb VRAM
if (key == "maxVidHeight") return WriteDefault("maxVidHeight", "2160");
if (key == "timingMode") return WriteDefault("timingMode", "1");
if (key == "tempDirCustom") return WriteDefault("tempDirCustom", "C:/");
if (key == "ncnnThreads") return WriteDefault("ncnnThreads", "2");
// Debug / Other / Experimental
if (key == "ffprobeCountFrames") return WriteDefault("ffprobeCountFrames", "False");
if (key == "vfrDedupe") return WriteDefault("vfrDedupe", "True");
// Tile Sizes
if (key == "tilesize_RIFE_NCNN") return WriteDefault("tilesize_RIFE_NCNN", "2048");
if (key == "tilesize_DAIN_NCNN") return WriteDefault("tilesize_DAIN_NCNN", "512");
if (key == "tilesize_CAIN_NCNN") return WriteDefault("tilesize_CAIN_NCNN", "2048");
return WriteDefault(key, "0");
}

View File

@@ -45,7 +45,7 @@ namespace Flowframes
Logger.Log("cmd.exe " + dain.StartInfo.Arguments, true);
if (!OSUtils.ShowHiddenCmd())
{
dain.OutputDataReceived += (sender, outLine) => { LogOutput(outLine.Data, "dain-ncnn-log.txt"); };
dain.OutputDataReceived += (sender, outLine) => { LogOutput("[O] " + outLine.Data, "dain-ncnn-log.txt"); };
dain.ErrorDataReceived += (sender, outLine) => { LogOutput("[E] " + outLine.Data, "dain-ncnn-log.txt"); };
}
dain.Start();
@@ -56,6 +56,9 @@ namespace Flowframes
}
while (!dain.HasExited)
await Task.Delay(1);
if (Interpolate.canceled) return;
Magick.MagickDedupe.ZeroPadDir(outPath, InterpolateUtils.lastExt, 8);
Logger.Log($"Done running DAIN - Interpolation took " + FormatUtils.Time(processTime.Elapsed));
processTime.Stop();
}
@@ -69,6 +72,7 @@ namespace Flowframes
if(times == 4 || times == 8) // #2
{
if (Interpolate.canceled) return;
Logger.Log("Re-Running CAIN for 4x interpolation...", false);
string run1ResultsPath = outPath + "-run1";
IOUtils.TryDeleteIfExists(run1ResultsPath);
@@ -81,6 +85,7 @@ namespace Flowframes
if (times == 8) // #3
{
if (Interpolate.canceled) return;
Logger.Log("Re-Running CAIN for 8x interpolation...", false);
string run2ResultsPath = outPath + "-run2";
IOUtils.TryDeleteIfExists(run2ResultsPath);
@@ -91,6 +96,9 @@ namespace Flowframes
Directory.Delete(run2ResultsPath, true);
}
if (Interpolate.canceled) return;
Magick.MagickDedupe.ZeroPadDir(outPath, InterpolateUtils.lastExt, 8);
Logger.Log($"Done running CAIN - Interpolation took " + FormatUtils.Time(processTime.Elapsed));
processTime.Stop();
}
@@ -105,7 +113,7 @@ namespace Flowframes
Logger.Log("cmd.exe " + cain.StartInfo.Arguments, true);
if (!OSUtils.ShowHiddenCmd())
{
cain.OutputDataReceived += (sender, outLine) => { LogOutput(outLine.Data, "cain-ncnn-log.txt"); };
cain.OutputDataReceived += (sender, outLine) => { LogOutput("[O] " + outLine.Data, "cain-ncnn-log.txt"); };
cain.ErrorDataReceived += (sender, outLine) => { LogOutput("[E] " + outLine.Data, "cain-ncnn-log.txt"); };
}
cain.Start();
@@ -126,6 +134,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);
string args = $" --input {framesPath.Wrap()} --times {(int)Math.Log(interpFactor, 2)}";
rifePy.StartInfo.Arguments = $"{OSUtils.GetHiddenCmdArg()} cd /D {rifeDir.Wrap()} & " +
@@ -134,7 +143,7 @@ namespace Flowframes
Logger.Log("cmd.exe " + rifePy.StartInfo.Arguments, true);
if (!OSUtils.ShowHiddenCmd())
{
rifePy.OutputDataReceived += (sender, outLine) => { LogOutput(outLine.Data, "rife-cuda-log.txt"); };
rifePy.OutputDataReceived += (sender, outLine) => { LogOutput("[O] " + outLine.Data, "rife-cuda-log.txt"); };
rifePy.ErrorDataReceived += (sender, outLine) => { LogOutput("[E] " + outLine.Data, "rife-cuda-log.txt"); };
}
rifePy.Start();
@@ -151,17 +160,17 @@ namespace Flowframes
public static async Task RunRifeNcnn (string framesPath, string outPath, int interpFactor, int tilesize)
{
string args = $" -v -i {framesPath.Wrap()} -o {outPath.Wrap()} -t {tilesize} -g {Config.Get("ncnnGpus")}";
string args = $" -v -i {framesPath.Wrap()} -o {outPath.Wrap()} -t {tilesize} -g {Config.Get("ncnnGpus")} -f {InterpolateUtils.lastExt} -j 4:{Config.Get("ncnnThreads")}:4";
string dir = Path.Combine(Paths.GetPkgPath(), Path.GetFileNameWithoutExtension(Packages.rifeNcnn.fileName));
Process rifeNcnn = OSUtils.NewProcess(!OSUtils.ShowHiddenCmd());
Init(rifeNcnn, 750);
rifeNcnn.StartInfo.Arguments = $"{OSUtils.GetHiddenCmdArg()} cd /D {dir.Wrap()} & rife-ncnn-vulkan.exe {args} -f {InterpolateUtils.lastExt}";
rifeNcnn.StartInfo.Arguments = $"{OSUtils.GetHiddenCmdArg()} cd /D {dir.Wrap()} & rife-ncnn-vulkan.exe {args}";
Logger.Log("Running RIFE...", false);
Logger.Log("cmd.exe " + rifeNcnn.StartInfo.Arguments, true);
if (!OSUtils.ShowHiddenCmd())
{
rifeNcnn.OutputDataReceived += (sender, outLine) => { LogOutput(outLine.Data, "rife-ncnn-log.txt"); };
rifeNcnn.OutputDataReceived += (sender, outLine) => { LogOutput("[O] " + outLine.Data, "rife-ncnn-log.txt"); };
rifeNcnn.ErrorDataReceived += (sender, outLine) => { LogOutput("[E] " + outLine.Data, "rife-ncnn-log.txt"); };
}
rifeNcnn.Start();
@@ -173,6 +182,7 @@ namespace Flowframes
while (!rifeNcnn.HasExited)
await Task.Delay(1);
if (Interpolate.canceled) return;
Magick.MagickDedupe.ZeroPadDir(outPath, InterpolateUtils.lastExt, 8);
Logger.Log($"Done running RIFE - Interpolation took " + FormatUtils.Time(processTime.Elapsed));
processTime.Stop();
@@ -180,11 +190,14 @@ namespace Flowframes
static void LogOutput (string line, string logFilename)
{
if (line == null)
if (string.IsNullOrWhiteSpace(line))
return;
Logger.LogToFile(line, false, logFilename);
if (line.Contains("ff:nocuda-cpu"))
Logger.Log("WARNING: CUDA-capable GPU device is not available, running on CPU instead!");
if (!hasShownError && line.ToLower().Contains("out of memory"))
{
hasShownError = true;
@@ -197,9 +210,6 @@ namespace Flowframes
InterpolateUtils.ShowMessage($"A python module is missing. Check {logFilename} for details.\n\n{line}", "Error");
}
if (!hasShownError && line.ToLower().Contains("ff:nocuda-cpu"))
Logger.Log($"WARNING: CUDA-capable GPU device is not available, running on CPU instead!");
if (!hasShownError && line.ToLower().Contains("no longer supports this gpu"))
{
hasShownError = true;