mirror of https://github.com/n00mkrad/flowframes
Removed obsolete frame timing option, improved dedupe settings UI
This commit is contained in:
parent
325f34e6fb
commit
e3d494c940
|
@ -32,6 +32,8 @@
|
|||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SettingsForm));
|
||||
this.settingsTabList = new Cyotek.Windows.Forms.TabList();
|
||||
this.generalTab = new Cyotek.Windows.Forms.TabListPage();
|
||||
this.clearModelCacheBtn = new HTAlt.WinForms.HTButton();
|
||||
this.label64 = new System.Windows.Forms.Label();
|
||||
this.modelSuffix = new System.Windows.Forms.CheckBox();
|
||||
this.label63 = new System.Windows.Forms.Label();
|
||||
this.label62 = new System.Windows.Forms.Label();
|
||||
|
@ -63,15 +65,11 @@
|
|||
this.scnDetect = new System.Windows.Forms.CheckBox();
|
||||
this.label50 = new System.Windows.Forms.Label();
|
||||
this.mpDedupePanel = new System.Windows.Forms.Panel();
|
||||
this.panel13 = new System.Windows.Forms.Panel();
|
||||
this.mpdecimateMode = new System.Windows.Forms.ComboBox();
|
||||
this.label42 = new System.Windows.Forms.Label();
|
||||
this.magickDedupePanel = new System.Windows.Forms.Panel();
|
||||
this.panel3 = new System.Windows.Forms.Panel();
|
||||
this.dedupThresh = new System.Windows.Forms.ComboBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.timingMode = new System.Windows.Forms.ComboBox();
|
||||
this.label35 = new System.Windows.Forms.Label();
|
||||
this.label27 = new System.Windows.Forms.Label();
|
||||
this.jpegInterps = new System.Windows.Forms.CheckBox();
|
||||
this.label25 = new System.Windows.Forms.Label();
|
||||
|
@ -159,8 +157,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.label64 = new System.Windows.Forms.Label();
|
||||
this.clearModelCacheBtn = new HTAlt.WinForms.HTButton();
|
||||
this.settingsTabList.SuspendLayout();
|
||||
this.generalTab.SuspendLayout();
|
||||
this.tabListPage2.SuspendLayout();
|
||||
|
@ -213,6 +209,30 @@
|
|||
this.generalTab.Size = new System.Drawing.Size(762, 419);
|
||||
this.generalTab.Text = "General";
|
||||
//
|
||||
// clearModelCacheBtn
|
||||
//
|
||||
this.clearModelCacheBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.clearModelCacheBtn.FlatAppearance.BorderSize = 0;
|
||||
this.clearModelCacheBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.clearModelCacheBtn.ForeColor = System.Drawing.Color.White;
|
||||
this.clearModelCacheBtn.Location = new System.Drawing.Point(280, 216);
|
||||
this.clearModelCacheBtn.Name = "clearModelCacheBtn";
|
||||
this.clearModelCacheBtn.Size = new System.Drawing.Size(206, 23);
|
||||
this.clearModelCacheBtn.TabIndex = 79;
|
||||
this.clearModelCacheBtn.Text = "Clear Model Cache";
|
||||
this.clearModelCacheBtn.UseVisualStyleBackColor = false;
|
||||
this.clearModelCacheBtn.Click += new System.EventHandler(this.clearModelCacheBtn_Click);
|
||||
//
|
||||
// label64
|
||||
//
|
||||
this.label64.AutoSize = true;
|
||||
this.label64.Location = new System.Drawing.Point(10, 221);
|
||||
this.label64.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
|
||||
this.label64.Name = "label64";
|
||||
this.label64.Size = new System.Drawing.Size(157, 13);
|
||||
this.label64.TabIndex = 78;
|
||||
this.label64.Text = "Delete Downloaded Model Files";
|
||||
//
|
||||
// modelSuffix
|
||||
//
|
||||
this.modelSuffix.AutoSize = true;
|
||||
|
@ -432,6 +452,7 @@
|
|||
//
|
||||
this.tabListPage2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
|
||||
this.tabListPage2.Controls.Add(this.sbsAllowAutoEnc);
|
||||
this.tabListPage2.Controls.Add(this.label4);
|
||||
this.tabListPage2.Controls.Add(this.label53);
|
||||
this.tabListPage2.Controls.Add(this.autoEncMode);
|
||||
this.tabListPage2.Controls.Add(this.label49);
|
||||
|
@ -443,8 +464,6 @@
|
|||
this.tabListPage2.Controls.Add(this.label50);
|
||||
this.tabListPage2.Controls.Add(this.mpDedupePanel);
|
||||
this.tabListPage2.Controls.Add(this.magickDedupePanel);
|
||||
this.tabListPage2.Controls.Add(this.timingMode);
|
||||
this.tabListPage2.Controls.Add(this.label35);
|
||||
this.tabListPage2.Controls.Add(this.label27);
|
||||
this.tabListPage2.Controls.Add(this.jpegInterps);
|
||||
this.tabListPage2.Controls.Add(this.label25);
|
||||
|
@ -576,25 +595,13 @@
|
|||
//
|
||||
// mpDedupePanel
|
||||
//
|
||||
this.mpDedupePanel.Controls.Add(this.panel13);
|
||||
this.mpDedupePanel.Controls.Add(this.mpdecimateMode);
|
||||
this.mpDedupePanel.Controls.Add(this.label42);
|
||||
this.mpDedupePanel.Location = new System.Drawing.Point(536, 67);
|
||||
this.mpDedupePanel.Location = new System.Drawing.Point(599, 67);
|
||||
this.mpDedupePanel.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.mpDedupePanel.Name = "mpDedupePanel";
|
||||
this.mpDedupePanel.Size = new System.Drawing.Size(218, 21);
|
||||
this.mpDedupePanel.Size = new System.Drawing.Size(135, 21);
|
||||
this.mpDedupePanel.TabIndex = 61;
|
||||
//
|
||||
// panel13
|
||||
//
|
||||
this.panel13.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent;
|
||||
this.panel13.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
|
||||
this.panel13.Location = new System.Drawing.Point(164, 0);
|
||||
this.panel13.Name = "panel13";
|
||||
this.panel13.Size = new System.Drawing.Size(21, 21);
|
||||
this.panel13.TabIndex = 57;
|
||||
this.toolTip1.SetToolTip(this.panel13, "Allows custom input.");
|
||||
//
|
||||
// mpdecimateMode
|
||||
//
|
||||
this.mpdecimateMode.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
|
@ -605,38 +612,27 @@
|
|||
this.mpdecimateMode.Items.AddRange(new object[] {
|
||||
"Normal",
|
||||
"Aggressive"});
|
||||
this.mpdecimateMode.Location = new System.Drawing.Point(46, 0);
|
||||
this.mpdecimateMode.Location = new System.Drawing.Point(0, 0);
|
||||
this.mpdecimateMode.Margin = new System.Windows.Forms.Padding(3, 3, 8, 3);
|
||||
this.mpdecimateMode.Name = "mpdecimateMode";
|
||||
this.mpdecimateMode.Size = new System.Drawing.Size(107, 21);
|
||||
this.mpdecimateMode.Size = new System.Drawing.Size(135, 21);
|
||||
this.mpdecimateMode.TabIndex = 28;
|
||||
//
|
||||
// label42
|
||||
//
|
||||
this.label42.AutoSize = true;
|
||||
this.label42.Location = new System.Drawing.Point(3, 3);
|
||||
this.label42.Margin = new System.Windows.Forms.Padding(3);
|
||||
this.label42.Name = "label42";
|
||||
this.label42.Size = new System.Drawing.Size(37, 13);
|
||||
this.label42.TabIndex = 29;
|
||||
this.label42.Text = "Mode:";
|
||||
//
|
||||
// magickDedupePanel
|
||||
//
|
||||
this.magickDedupePanel.Controls.Add(this.panel3);
|
||||
this.magickDedupePanel.Controls.Add(this.dedupThresh);
|
||||
this.magickDedupePanel.Controls.Add(this.label4);
|
||||
this.magickDedupePanel.Location = new System.Drawing.Point(536, 67);
|
||||
this.magickDedupePanel.Location = new System.Drawing.Point(599, 67);
|
||||
this.magickDedupePanel.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.magickDedupePanel.Name = "magickDedupePanel";
|
||||
this.magickDedupePanel.Size = new System.Drawing.Size(218, 21);
|
||||
this.magickDedupePanel.Size = new System.Drawing.Size(135, 21);
|
||||
this.magickDedupePanel.TabIndex = 60;
|
||||
//
|
||||
// panel3
|
||||
//
|
||||
this.panel3.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent;
|
||||
this.panel3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
|
||||
this.panel3.Location = new System.Drawing.Point(164, 0);
|
||||
this.panel3.Location = new System.Drawing.Point(114, 0);
|
||||
this.panel3.Name = "panel3";
|
||||
this.panel3.Size = new System.Drawing.Size(21, 21);
|
||||
this.panel3.TabIndex = 57;
|
||||
|
@ -655,47 +651,22 @@
|
|||
"4%",
|
||||
"5%",
|
||||
"10%"});
|
||||
this.dedupThresh.Location = new System.Drawing.Point(66, 0);
|
||||
this.dedupThresh.Location = new System.Drawing.Point(0, 0);
|
||||
this.dedupThresh.Margin = new System.Windows.Forms.Padding(3, 3, 8, 3);
|
||||
this.dedupThresh.Name = "dedupThresh";
|
||||
this.dedupThresh.Size = new System.Drawing.Size(87, 21);
|
||||
this.dedupThresh.Size = new System.Drawing.Size(103, 21);
|
||||
this.dedupThresh.TabIndex = 28;
|
||||
this.dedupThresh.Leave += new System.EventHandler(this.dedupThresh_Leave);
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(3, 3);
|
||||
this.label4.Location = new System.Drawing.Point(536, 71);
|
||||
this.label4.Margin = new System.Windows.Forms.Padding(3);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(57, 13);
|
||||
this.label4.TabIndex = 29;
|
||||
this.label4.Text = "Threshold:";
|
||||
//
|
||||
// timingMode
|
||||
//
|
||||
this.timingMode.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.timingMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.timingMode.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.timingMode.ForeColor = System.Drawing.Color.White;
|
||||
this.timingMode.FormattingEnabled = true;
|
||||
this.timingMode.Items.AddRange(new object[] {
|
||||
"Disabled (Static)",
|
||||
"Use Timecodes From Source Video"});
|
||||
this.timingMode.Location = new System.Drawing.Point(280, 97);
|
||||
this.timingMode.Name = "timingMode";
|
||||
this.timingMode.Size = new System.Drawing.Size(250, 21);
|
||||
this.timingMode.TabIndex = 59;
|
||||
//
|
||||
// label35
|
||||
//
|
||||
this.label35.AutoSize = true;
|
||||
this.label35.Location = new System.Drawing.Point(10, 100);
|
||||
this.label35.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
|
||||
this.label35.Name = "label35";
|
||||
this.label35.Size = new System.Drawing.Size(117, 13);
|
||||
this.label35.TabIndex = 58;
|
||||
this.label35.Text = "Dynamic Frame Timing ";
|
||||
this.label4.Text = "Sensitivity:";
|
||||
//
|
||||
// label27
|
||||
//
|
||||
|
@ -778,8 +749,8 @@
|
|||
this.dedupMode.FormattingEnabled = true;
|
||||
this.dedupMode.Items.AddRange(new object[] {
|
||||
"Disabled",
|
||||
"Remove After Extraction - Slow, Accurate",
|
||||
"Remove During Extraction - Fast, Less Accurate"});
|
||||
"1: After Extraction - Slow, Accurate",
|
||||
"2: During Extraction - Fast, Less Accurate"});
|
||||
this.dedupMode.Location = new System.Drawing.Point(280, 67);
|
||||
this.dedupMode.Name = "dedupMode";
|
||||
this.dedupMode.Size = new System.Drawing.Size(250, 21);
|
||||
|
@ -792,9 +763,9 @@
|
|||
this.label2.Location = new System.Drawing.Point(10, 70);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(132, 13);
|
||||
this.label2.Size = new System.Drawing.Size(139, 13);
|
||||
this.label2.TabIndex = 26;
|
||||
this.label2.Text = "Remove Duplicate Frames";
|
||||
this.label2.Text = "Frame De-Duplication Mode";
|
||||
//
|
||||
// enableAudio
|
||||
//
|
||||
|
@ -1777,30 +1748,6 @@
|
|||
this.titleLabel.TabIndex = 1;
|
||||
this.titleLabel.Text = "Settings";
|
||||
//
|
||||
// label64
|
||||
//
|
||||
this.label64.AutoSize = true;
|
||||
this.label64.Location = new System.Drawing.Point(10, 221);
|
||||
this.label64.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
|
||||
this.label64.Name = "label64";
|
||||
this.label64.Size = new System.Drawing.Size(157, 13);
|
||||
this.label64.TabIndex = 78;
|
||||
this.label64.Text = "Delete Downloaded Model Files";
|
||||
//
|
||||
// clearModelCacheBtn
|
||||
//
|
||||
this.clearModelCacheBtn.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.clearModelCacheBtn.FlatAppearance.BorderSize = 0;
|
||||
this.clearModelCacheBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.clearModelCacheBtn.ForeColor = System.Drawing.Color.White;
|
||||
this.clearModelCacheBtn.Location = new System.Drawing.Point(280, 216);
|
||||
this.clearModelCacheBtn.Name = "clearModelCacheBtn";
|
||||
this.clearModelCacheBtn.Size = new System.Drawing.Size(206, 23);
|
||||
this.clearModelCacheBtn.TabIndex = 79;
|
||||
this.clearModelCacheBtn.Text = "Clear Model Cache";
|
||||
this.clearModelCacheBtn.UseVisualStyleBackColor = false;
|
||||
this.clearModelCacheBtn.Click += new System.EventHandler(this.clearModelCacheBtn_Click);
|
||||
//
|
||||
// SettingsForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
@ -1823,9 +1770,7 @@
|
|||
this.tabListPage2.ResumeLayout(false);
|
||||
this.tabListPage2.PerformLayout();
|
||||
this.mpDedupePanel.ResumeLayout(false);
|
||||
this.mpDedupePanel.PerformLayout();
|
||||
this.magickDedupePanel.ResumeLayout(false);
|
||||
this.magickDedupePanel.PerformLayout();
|
||||
this.aiOptsPage.ResumeLayout(false);
|
||||
this.aiOptsPage.PerformLayout();
|
||||
this.vidExportTab.ResumeLayout(false);
|
||||
|
@ -1904,8 +1849,6 @@
|
|||
private System.Windows.Forms.Panel panel10;
|
||||
private System.Windows.Forms.ComboBox maxVidHeight;
|
||||
private System.Windows.Forms.Label label31;
|
||||
private System.Windows.Forms.ComboBox timingMode;
|
||||
private System.Windows.Forms.Label label35;
|
||||
private System.Windows.Forms.Label label36;
|
||||
private System.Windows.Forms.ComboBox tempFolderLoc;
|
||||
private System.Windows.Forms.CheckBox keepTempFolder;
|
||||
|
@ -1921,9 +1864,7 @@
|
|||
private System.Windows.Forms.CheckBox ffprobeCountFrames;
|
||||
private System.Windows.Forms.Label label40;
|
||||
private System.Windows.Forms.Panel mpDedupePanel;
|
||||
private System.Windows.Forms.Panel panel13;
|
||||
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;
|
||||
|
|
|
@ -75,7 +75,6 @@ namespace Flowframes.Forms
|
|||
ConfigParser.SaveComboxIndex(dedupMode);
|
||||
ConfigParser.SaveComboxIndex(mpdecimateMode);
|
||||
ConfigParser.SaveGuiElement(dedupThresh, ConfigParser.StringMode.Float);
|
||||
ConfigParser.SaveComboxIndex(timingMode);
|
||||
ConfigParser.SaveGuiElement(enableLoop);
|
||||
ConfigParser.SaveGuiElement(jpegInterps);
|
||||
ConfigParser.SaveGuiElement(scnDetect);
|
||||
|
@ -124,7 +123,6 @@ namespace Flowframes.Forms
|
|||
ConfigParser.LoadComboxIndex(dedupMode);
|
||||
ConfigParser.LoadComboxIndex(mpdecimateMode);
|
||||
ConfigParser.LoadGuiElement(dedupThresh, "%");
|
||||
ConfigParser.LoadComboxIndex(timingMode);
|
||||
ConfigParser.LoadGuiElement(enableLoop);
|
||||
ConfigParser.LoadGuiElement(jpegInterps);
|
||||
ConfigParser.LoadGuiElement(scnDetect);
|
||||
|
|
|
@ -125,7 +125,6 @@ namespace Flowframes.IO
|
|||
if (key == "enableAudio") return WriteDefault(key, "True");
|
||||
if (key == "autoDedupFrames") return WriteDefault(key, "100");
|
||||
if (key == "vfrDedupe") return WriteDefault(key, "True");
|
||||
if (key == "timingMode") return WriteDefault(key, "1");
|
||||
if (key == "scnDetectValue") return WriteDefault(key, "0.2");
|
||||
if (key == "autoEncMode") return WriteDefault(key, "2");
|
||||
// Video Export
|
||||
|
|
|
@ -97,15 +97,6 @@ namespace Flowframes
|
|||
if (audioFile != null && !File.Exists(audioFile))
|
||||
await FFmpegCommands.ExtractAudio(inPath, audioFile);
|
||||
}
|
||||
|
||||
if (!canceled && Config.GetBool("enableLoop") && Config.GetInt("timingMode") != 1)
|
||||
{
|
||||
string lastFrame = IOUtils.GetHighestFrameNumPath(outPath);
|
||||
int newNum = Path.GetFileName(lastFrame).GetInt() + 1;
|
||||
string newFilename = Path.Combine(lastFrame.GetParentDir(), newNum.ToString().PadLeft(Padding.inputFrames, '0') + ".png");
|
||||
string firstFrame = new DirectoryInfo(outPath).GetFiles("*.png")[0].FullName;
|
||||
File.Copy(firstFrame, newFilename);
|
||||
}
|
||||
}
|
||||
|
||||
public static async Task PostProcessFrames (bool sbsMode = false)
|
||||
|
@ -133,8 +124,7 @@ namespace Flowframes
|
|||
|
||||
if (canceled) return;
|
||||
|
||||
bool useTimestamps = Config.GetInt("timingMode") == 1; // TODO: Auto-Disable timestamps if input frames are sequential, not timestamped
|
||||
await FrameOrder.CreateTimecodeFiles(current.framesFolder, FrameOrder.Mode.CFR, Config.GetBool("enableLoop"), current.interpFactor, !useTimestamps);
|
||||
await FrameOrder.CreateTimecodeFiles(current.framesFolder, FrameOrder.Mode.CFR, Config.GetBool("enableLoop"), current.interpFactor, false);
|
||||
|
||||
if (canceled) return;
|
||||
|
||||
|
|
Loading…
Reference in New Issue