1
mirror of https://github.com/n00mkrad/flowframes synced 2024-11-16 19:10:31 +01:00

Created build script for Flowframes archives, removed rifeMode option

This commit is contained in:
N00MKRAD 2020-12-08 21:46:17 +01:00
parent f968db6180
commit 567569e406
10 changed files with 100 additions and 85 deletions

2
.gitignore vendored
View File

@ -30,10 +30,12 @@ bld/
[Oo]bj/
[Ll]og/
[Ll]ogs/
Flowframes*.7z
# NMKD Python Redist Pkg
[Pp]y*/
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot

BIN
Build/7za.dll Normal file

Binary file not shown.

BIN
Build/7za.exe Normal file

Binary file not shown.

View File

@ -0,0 +1,37 @@
@echo off
echo ===============================
echo == NMKD'S FLOWFRAMES BUILDER ==
echo ===============================
echo.
echo This script makes a build ready for distribution by creating two 7z archives, one with and one without embedded python.
echo.
set "ver=16"
set /p ver="Enter the version number: "
cd ..\Code\bin\x64\Release
rmdir /s/q FlowframesApp%ver%
mkdir FlowframesApp%ver%
mkdir FlowframesApp%ver%/FlowframesData
mkdir FlowframesApp%ver%/FlowframesData/pkgs
xcopy "../../../../pkgs" "FlowframesApp%ver%/FlowframesData\pkgs\" /E
echo %ver% >> "FlowframesApp%ver%/FlowframesData/ver.ini"
xcopy Flowframes.exe FlowframesApp%ver%
cd ../../../../Build
7za.exe a FlowframesApp%ver%-Full.7z -m0=flzma2 -mx7 "..\Code\bin\x64\Release\FlowframesApp%ver%"
rmdir /s/q ..\Code\bin\x64\Release\FlowframesApp%ver%\FlowframesData\pkgs\py
rmdir /s/q ..\Code\bin\x64\Release\FlowframesApp%ver%\FlowframesData\pkgs\py-tu
rmdir /s/q ..\Code\bin\x64\Release\FlowframesApp%ver%\FlowframesData\pkgs\py-amp
7za.exe a FlowframesApp%ver%-NoPython.7z -m0=flzma2 -mx5 "..\Code\bin\x64\Release\FlowframesApp%ver%"
rmdir /s/q ..\Code\bin\x64\Release\FlowframesApp%ver%
pause

9
Build/HowToInstall.txt Normal file
View File

@ -0,0 +1,9 @@
1) Download the 7z file with "-Full" if you want all dependencies (Python/Pytorch, etc) included, or the file with "-NoPython" if you already have a system pytorch installation, or if you have an AMD GPU that can't use pytorch anyway
2) Extract the 7z file using 7zip or any other program that supports it
3) Run Flowframes.exe
If you updated from an older version, you can optionally copy "FlowframesData/config.ini" to your new installation if you want to keep your settings.
You can delete your old installation after updating.
IT IS NOT RECOMMENDED TO OVERWRITE YOUR OLD INSTALLATION!
Instead, delete it first or install the new one to a different/empty folder.

View File

@ -56,6 +56,28 @@
<PropertyGroup>
<StartupObject />
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x64\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x64</PlatformTarget>
<LangVersion>7.3</LangVersion>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<OutputPath>bin\x64\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x64</PlatformTarget>
<LangVersion>7.3</LangVersion>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="7z.NET, Version=1.0.3.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>packages\7z.NET.1.0.3\lib\net463\7z.NET.dll</HintPath>

View File

@ -8,13 +8,19 @@ EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Debug|x64.ActiveCfg = Debug|x64
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Debug|x64.Build.0 = Debug|x64
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Release|Any CPU.Build.0 = Release|Any CPU
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Release|x64.ActiveCfg = Release|x64
{389E42DD-A163-49D7-9E0A-AE41090A07B3}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@ -44,7 +44,7 @@
this.panel10 = new System.Windows.Forms.Panel();
this.maxVidHeight = new System.Windows.Forms.ComboBox();
this.label31 = new System.Windows.Forms.Label();
this.deleteLogsOnStartup = new System.Windows.Forms.CheckBox();
this.delLogsOnStartup = new System.Windows.Forms.CheckBox();
this.label11 = new System.Windows.Forms.Label();
this.tabListPage2 = new Cyotek.Windows.Forms.TabListPage();
this.sbsAllowAutoEnc = new System.Windows.Forms.CheckBox();
@ -90,10 +90,6 @@
this.ncnnGpus = new System.Windows.Forms.ComboBox();
this.label5 = new System.Windows.Forms.Label();
this.label32 = new System.Windows.Forms.Label();
this.label30 = new System.Windows.Forms.Label();
this.rifeMode = new System.Windows.Forms.ComboBox();
this.label28 = new System.Windows.Forms.Label();
this.label29 = new System.Windows.Forms.Label();
this.vidExportTab = new Cyotek.Windows.Forms.TabListPage();
this.loopMode = new System.Windows.Forms.ComboBox();
this.label55 = new System.Windows.Forms.Label();
@ -182,7 +178,7 @@
this.generalTab.Controls.Add(this.panel10);
this.generalTab.Controls.Add(this.maxVidHeight);
this.generalTab.Controls.Add(this.label31);
this.generalTab.Controls.Add(this.deleteLogsOnStartup);
this.generalTab.Controls.Add(this.delLogsOnStartup);
this.generalTab.Controls.Add(this.label11);
this.generalTab.Name = "generalTab";
this.generalTab.Size = new System.Drawing.Size(762, 419);
@ -334,14 +330,14 @@
this.label31.TabIndex = 62;
this.label31.Text = "Maximum Video Input Size (Height)";
//
// deleteLogsOnStartup
// delLogsOnStartup
//
this.deleteLogsOnStartup.AutoSize = true;
this.deleteLogsOnStartup.Location = new System.Drawing.Point(280, 130);
this.deleteLogsOnStartup.Name = "deleteLogsOnStartup";
this.deleteLogsOnStartup.Size = new System.Drawing.Size(15, 14);
this.deleteLogsOnStartup.TabIndex = 23;
this.deleteLogsOnStartup.UseVisualStyleBackColor = true;
this.delLogsOnStartup.AutoSize = true;
this.delLogsOnStartup.Location = new System.Drawing.Point(280, 130);
this.delLogsOnStartup.Name = "delLogsOnStartup";
this.delLogsOnStartup.Size = new System.Drawing.Size(15, 14);
this.delLogsOnStartup.TabIndex = 23;
this.delLogsOnStartup.UseVisualStyleBackColor = true;
//
// label11
//
@ -754,10 +750,6 @@
this.aiOptsPage.Controls.Add(this.ncnnGpus);
this.aiOptsPage.Controls.Add(this.label5);
this.aiOptsPage.Controls.Add(this.label32);
this.aiOptsPage.Controls.Add(this.label30);
this.aiOptsPage.Controls.Add(this.rifeMode);
this.aiOptsPage.Controls.Add(this.label28);
this.aiOptsPage.Controls.Add(this.label29);
this.aiOptsPage.Name = "aiOptsPage";
this.aiOptsPage.Size = new System.Drawing.Size(762, 419);
this.aiOptsPage.Text = "AI Specific Settings";
@ -766,7 +758,7 @@
//
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, 177);
this.panel12.Location = new System.Drawing.Point(336, 97);
this.panel12.Name = "panel12";
this.panel12.Size = new System.Drawing.Size(21, 21);
this.panel12.TabIndex = 58;
@ -776,7 +768,7 @@
//
this.label44.AutoSize = true;
this.label44.ForeColor = System.Drawing.Color.Silver;
this.label44.Location = new System.Drawing.Point(370, 181);
this.label44.Location = new System.Drawing.Point(370, 101);
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);
@ -794,7 +786,7 @@
"2",
"3",
"4"});
this.ncnnThreads.Location = new System.Drawing.Point(280, 177);
this.ncnnThreads.Location = new System.Drawing.Point(280, 97);
this.ncnnThreads.Name = "ncnnThreads";
this.ncnnThreads.Size = new System.Drawing.Size(50, 21);
this.ncnnThreads.TabIndex = 59;
@ -802,7 +794,7 @@
// label43
//
this.label43.AutoSize = true;
this.label43.Location = new System.Drawing.Point(10, 180);
this.label43.Location = new System.Drawing.Point(10, 100);
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);
@ -813,7 +805,7 @@
//
this.panel2.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent;
this.panel2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.panel2.Location = new System.Drawing.Point(536, 147);
this.panel2.Location = new System.Drawing.Point(536, 67);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(21, 21);
this.panel2.TabIndex = 57;
@ -823,7 +815,7 @@
//
this.panel1.BackgroundImage = global::Flowframes.Properties.Resources.baseline_create_white_18dp_semiTransparent;
this.panel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.panel1.Location = new System.Drawing.Point(536, 117);
this.panel1.Location = new System.Drawing.Point(536, 37);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(21, 21);
this.panel1.TabIndex = 56;
@ -839,7 +831,7 @@
"0",
"1",
"0,1"});
this.torchGpus.Location = new System.Drawing.Point(280, 117);
this.torchGpus.Location = new System.Drawing.Point(280, 37);
this.torchGpus.Name = "torchGpus";
this.torchGpus.Size = new System.Drawing.Size(250, 21);
this.torchGpus.TabIndex = 55;
@ -847,7 +839,7 @@
// label33
//
this.label33.AutoSize = true;
this.label33.Location = new System.Drawing.Point(10, 120);
this.label33.Location = new System.Drawing.Point(10, 40);
this.label33.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
this.label33.Name = "label33";
this.label33.Size = new System.Drawing.Size(205, 13);
@ -864,7 +856,7 @@
"0",
"1",
"0,1"});
this.ncnnGpus.Location = new System.Drawing.Point(280, 147);
this.ncnnGpus.Location = new System.Drawing.Point(280, 67);
this.ncnnGpus.Name = "ncnnGpus";
this.ncnnGpus.Size = new System.Drawing.Size(250, 21);
this.ncnnGpus.TabIndex = 53;
@ -872,7 +864,7 @@
// label5
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(10, 150);
this.label5.Location = new System.Drawing.Point(10, 70);
this.label5.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(200, 13);
@ -883,60 +875,13 @@
//
this.label32.AutoSize = true;
this.label32.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold);
this.label32.Location = new System.Drawing.Point(10, 90);
this.label32.Location = new System.Drawing.Point(10, 10);
this.label32.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
this.label32.Name = "label32";
this.label32.Size = new System.Drawing.Size(162, 16);
this.label32.TabIndex = 51;
this.label32.Text = "AI Framework Settings";
//
// label30
//
this.label30.AutoSize = true;
this.label30.ForeColor = System.Drawing.Color.Silver;
this.label30.Location = new System.Drawing.Point(543, 41);
this.label30.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
this.label30.Name = "label30";
this.label30.Size = new System.Drawing.Size(190, 13);
this.label30.TabIndex = 49;
this.label30.Text = "An 8 GB GPU is recommended for this.";
//
// rifeMode
//
this.rifeMode.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.rifeMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.rifeMode.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.rifeMode.ForeColor = System.Drawing.Color.White;
this.rifeMode.FormattingEnabled = true;
this.rifeMode.Items.AddRange(new object[] {
"Disabled - Slower, but needs less VRAM",
"Enabled - Up to 2x as fast, needs more VRAM"});
this.rifeMode.Location = new System.Drawing.Point(280, 37);
this.rifeMode.Name = "rifeMode";
this.rifeMode.Size = new System.Drawing.Size(250, 21);
this.rifeMode.TabIndex = 48;
//
// label28
//
this.label28.AutoSize = true;
this.label28.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label28.Location = new System.Drawing.Point(10, 10);
this.label28.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
this.label28.Name = "label28";
this.label28.Size = new System.Drawing.Size(42, 16);
this.label28.TabIndex = 47;
this.label28.Text = "RIFE";
//
// label29
//
this.label29.AutoSize = true;
this.label29.Location = new System.Drawing.Point(10, 40);
this.label29.Margin = new System.Windows.Forms.Padding(10, 10, 10, 7);
this.label29.Name = "label29";
this.label29.Size = new System.Drawing.Size(116, 13);
this.label29.TabIndex = 45;
this.label29.Text = "Use Fast Parallel Mode";
//
// vidExportTab
//
this.vidExportTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
@ -1588,7 +1533,7 @@
private Cyotek.Windows.Forms.TabListPage tabListPage2;
private Cyotek.Windows.Forms.TabListPage debugTab;
private System.Windows.Forms.Label titleLabel;
private System.Windows.Forms.CheckBox deleteLogsOnStartup;
private System.Windows.Forms.CheckBox delLogsOnStartup;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.CheckBox enableAudio;
@ -1630,10 +1575,6 @@
private System.Windows.Forms.Label label26;
private System.Windows.Forms.Label label24;
private Cyotek.Windows.Forms.TabListPage aiOptsPage;
private System.Windows.Forms.Label label30;
private System.Windows.Forms.ComboBox rifeMode;
private System.Windows.Forms.Label label28;
private System.Windows.Forms.Label label29;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.ComboBox torchGpus;
private System.Windows.Forms.Label label33;

View File

@ -50,7 +50,7 @@ namespace Flowframes.Forms
ConfigParser.SaveGuiElement(maxVidHeight);
ConfigParser.SaveComboxIndex(tempFolderLoc);
ConfigParser.SaveGuiElement(keepTempFolder);
ConfigParser.SaveGuiElement(deleteLogsOnStartup);
ConfigParser.SaveGuiElement(delLogsOnStartup);
// Interpolation
ConfigParser.SaveGuiElement(enableAudio);
ConfigParser.SaveComboxIndex(dedupMode);
@ -64,7 +64,6 @@ namespace Flowframes.Forms
ConfigParser.SaveComboxIndex(autoEncMode);
ConfigParser.SaveGuiElement(sbsAllowAutoEnc);
// AI
ConfigParser.SaveComboxIndex(rifeMode);
ConfigParser.SaveGuiElement(torchGpus);
ConfigParser.SaveGuiElement(ncnnGpus);
ConfigParser.SaveGuiElement(ncnnThreads);
@ -91,7 +90,7 @@ namespace Flowframes.Forms
ConfigParser.LoadComboxIndex(processingMode);
ConfigParser.LoadGuiElement(maxVidHeight);
ConfigParser.LoadComboxIndex(tempFolderLoc); ConfigParser.LoadGuiElement(tempDirCustom);
ConfigParser.LoadGuiElement(deleteLogsOnStartup);
ConfigParser.LoadGuiElement(delLogsOnStartup);
ConfigParser.LoadGuiElement(keepTempFolder);
// Interpolation
ConfigParser.LoadGuiElement(enableAudio);
@ -106,7 +105,6 @@ namespace Flowframes.Forms
ConfigParser.LoadComboxIndex(autoEncMode);
ConfigParser.LoadGuiElement(sbsAllowAutoEnc);
// AI
ConfigParser.LoadComboxIndex(rifeMode);
ConfigParser.LoadGuiElement(torchGpus);
ConfigParser.LoadGuiElement(ncnnGpus);
ConfigParser.LoadGuiElement(ncnnThreads);

View File

@ -105,7 +105,7 @@ namespace Flowframes.IO
if (key == "gifColors") return WriteDefault(key, "128 (High)");
if (key == "minVidLength") return WriteDefault(key, "2");
// AI
if (key == "rifeMode") return WriteDefault(key, ((NvApi.GetVramGb() > 7f) ? 1 : 0).ToString()); // Enable by default if GPU has >7gb VRAM
//if (key == "rifeMode") return WriteDefault(key, ((NvApi.GetVramGb() > 7f) ? 1 : 0).ToString()); // Enable by default if GPU has >7gb VRAM
if (key == "ncnnThreads") return WriteDefault(key, "1");
// Debug / Other / Experimental
if (key == "ffEncPreset") return WriteDefault(key, "medium");