Skip to content

Commit 49dad7e

Browse files
committed
Save av1an config on application close, implement --chunk-order GUI
1 parent bce2257 commit 49dad7e

File tree

5 files changed

+70
-19
lines changed

5 files changed

+70
-19
lines changed

ff-utils-winforms/Forms/MainForm.Av1an.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ partial class MainForm
4242
public ComboBox av1anOptsSplitModeBox { get { return av1anOptsSplitMode; } }
4343
public ComboBox av1anOptsChunkModeBox { get { return av1anOptsChunkMode; } }
4444
public ComboBox av1anOptsConcatModeBox { get { return av1anOptsConcatMode; } }
45+
public ComboBox av1anOptsChunkOrderBox { get { return av1anOptsChunkOrder; } }
4546
public NumericUpDown av1anOptsWorkerCountUpDown { get { return av1anOptsWorkerCount; } }
4647

4748
public void InitAv1an()
@@ -85,6 +86,7 @@ public void LoadConfigAv1an()
8586
ConfigParser.LoadComboxIndex(av1anAudCodec);
8687
ConfigParser.LoadComboxIndex(av1anOptsChunkMode);
8788
ConfigParser.LoadComboxIndex(av1anOptsConcatMode);
89+
ConfigParser.LoadComboxIndex(av1anOptsChunkOrder);
8890
ConfigParser.LoadGuiElement(av1anOptsWorkerCount, false);
8991
ConfigParser.LoadGuiElement(av1anThreads, false);
9092
}
@@ -99,6 +101,7 @@ public void SaveConfigAv1an(object sender = null, EventArgs e = null)
99101
ConfigParser.SaveComboxIndex(av1anAudCodec);
100102
ConfigParser.SaveComboxIndex(av1anOptsChunkMode);
101103
ConfigParser.SaveComboxIndex(av1anOptsConcatMode);
104+
ConfigParser.SaveComboxIndex(av1anOptsChunkOrder);
102105
ConfigParser.SaveGuiElement(av1anOptsWorkerCount);
103106
ConfigParser.SaveGuiElement(av1anThreads);
104107
}

ff-utils-winforms/Forms/MainForm.Designer.cs

Lines changed: 41 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ff-utils-winforms/Forms/MainForm.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ private async void MainForm_Shown(object sender, EventArgs e)
9191
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
9292
{
9393
SaveConfig();
94+
SaveConfigAv1an();
9495

9596
if (Keyboard.Modifiers == System.Windows.Input.ModifierKeys.Shift)
9697
{

ff-utils-winforms/UI/Tasks/Av1an.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,13 @@ public static async Task Run(bool resume = false, string overrideTempDir = "", s
7171
string vf = await GetVideoFilterArgs(codecArgs);
7272
string a = CodecUtils.GetCodec(aCodec).GetArgs(GetAudioArgsFromUi()).Arguments;
7373
string w = Program.mainForm.av1anOptsWorkerCountUpDown.Value.ToString();
74-
string s = GetSplittingMethod();
74+
string s = GetSplittingMethodArgs();
7575
string m = GetChunkGenMethod();
76-
string c = GetConcatMethod();
77-
string thr = Program.mainForm.av1anThreadsUpDown.Value.ToString();
76+
string c = GetConcatMethodArgs();
77+
string o = GetChunkOrderArgs();
78+
string thr = GetThreadAffArgs();
7879

79-
args = $"-i {inPath.Wrap()} -y --verbose --keep --split-method {s} -m {m} -c {c} --set-thread-affinity {thr} {GetScDownscaleArg()} {cust} {v} -f \" {vf} \" -a \" {a} \" -w {w} -o {outPath.Wrap()}";
80+
args = $"-i {inPath.Wrap()} -y --verbose --keep {s} {m} {c} {thr} {GetScDownscaleArg()} {cust} {v} -f \" {vf} \" -a \" {a} \" -w {w} -o {outPath.Wrap()}";
8081

8182
if (vmaf)
8283
{

ff-utils-winforms/UI/Tasks/Av1anUi.cs

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -250,17 +250,21 @@ public static async Task<string> GetVideoFilterArgs(CodecArgs codecArgs = null)
250250
return "";
251251
}
252252

253-
public static string GetSplittingMethod()
253+
public static string GetSplittingMethodArgs()
254254
{
255+
string s = "";
256+
255257
if (form.av1anOptsSplitModeBox.SelectedIndex == 0)
256-
return $"none";
258+
s = $"none";
257259
else
258-
return $"av-scenechange";
260+
s = $"av-scenechange";
261+
262+
return $"--split-method {s}";
259263
}
260264

261265
public static string GetChunkGenMethod()
262266
{
263-
return form.av1anOptsChunkModeBox.Text.ToLower().Trim();
267+
return $"-m {form.av1anOptsChunkModeBox.Text.ToLower().Trim()}";
264268

265269
// switch (form.av1anOptsChunkModeBox.SelectedIndex)
266270
// {
@@ -274,9 +278,19 @@ public static string GetChunkGenMethod()
274278
// return "";
275279
}
276280

277-
public static string GetConcatMethod()
281+
public static string GetConcatMethodArgs()
282+
{
283+
return $"-c {form.av1anOptsConcatModeBox.Text.ToLower().Trim()}";
284+
}
285+
286+
public static string GetChunkOrderArgs()
287+
{
288+
return $"--chunk-order {form.av1anOptsChunkOrderBox.Text.Split('(')[0].ToLower().Trim()}";
289+
}
290+
291+
public static string GetThreadAffArgs()
278292
{
279-
return form.av1anOptsConcatModeBox.Text.ToLower().Trim();
293+
return $"--set-thread-affinity {form.av1anThreadsUpDown.Value}";
280294
}
281295

282296
public static string GetOutPath()

0 commit comments

Comments
 (0)