mirror of
https://github.com/n00mkrad/flowframes.git
synced 2025-12-16 08:27:44 +01:00
Fixed autoenc getting stuck with new code
This commit is contained in:
@@ -23,8 +23,8 @@ namespace Flowframes.Main
|
|||||||
public static List<int> encodedFrameLines = new List<int>();
|
public static List<int> encodedFrameLines = new List<int>();
|
||||||
public static List<int> unencodedFrameLines = new List<int>();
|
public static List<int> unencodedFrameLines = new List<int>();
|
||||||
|
|
||||||
|
public static bool debug;
|
||||||
public static bool busy;
|
public static bool busy;
|
||||||
|
|
||||||
public static bool paused;
|
public static bool paused;
|
||||||
|
|
||||||
public static void UpdateChunkAndBufferSizes ()
|
public static void UpdateChunkAndBufferSizes ()
|
||||||
@@ -45,6 +45,8 @@ namespace Flowframes.Main
|
|||||||
|
|
||||||
public static async Task MainLoop(string interpFramesPath)
|
public static async Task MainLoop(string interpFramesPath)
|
||||||
{
|
{
|
||||||
|
debug = Config.GetBool("autoEncDebug", false);
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
UpdateChunkAndBufferSizes();
|
UpdateChunkAndBufferSizes();
|
||||||
@@ -82,16 +84,16 @@ namespace Flowframes.Main
|
|||||||
//for (int frameLineNum = lastEncodedFrameNum; frameLineNum < interpFramesLines.Length; frameLineNum++)
|
//for (int frameLineNum = lastEncodedFrameNum; frameLineNum < interpFramesLines.Length; frameLineNum++)
|
||||||
// unencodedFrameLines.Add(frameLineNum);
|
// unencodedFrameLines.Add(frameLineNum);
|
||||||
|
|
||||||
|
bool aiRunning = !AiProcess.lastAiProcess.HasExited;
|
||||||
|
|
||||||
for (int frameLineNum = lastEncodedFrameNum; frameLineNum < interpFramesLines.Length; frameLineNum++)
|
for (int frameLineNum = lastEncodedFrameNum; frameLineNum < interpFramesLines.Length; frameLineNum++)
|
||||||
{
|
{
|
||||||
if (interpFramesLines[frameLineNum].Contains(InterpolationProgress.lastFrame.ToString().PadLeft(Padding.interpFrames, '0')))
|
if (aiRunning && interpFramesLines[frameLineNum].Contains(InterpolationProgress.lastFrame.ToString().PadLeft(Padding.interpFrames, '0')))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
unencodedFrameLines.Add(frameLineNum);
|
unencodedFrameLines.Add(frameLineNum);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool aiRunning = !AiProcess.lastAiProcess.HasExited;
|
|
||||||
|
|
||||||
if (unencodedFrameLines.Count > 0 && (unencodedFrameLines.Count >= (chunkSize + safetyBufferFrames) || !aiRunning)) // Encode every n frames, or after process has exited
|
if (unencodedFrameLines.Count > 0 && (unencodedFrameLines.Count >= (chunkSize + safetyBufferFrames) || !aiRunning)) // Encode every n frames, or after process has exited
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -176,7 +178,10 @@ namespace Flowframes.Main
|
|||||||
public static bool HasWorkToDo ()
|
public static bool HasWorkToDo ()
|
||||||
{
|
{
|
||||||
if (Interpolate.canceled || interpFramesFolder == null) return false;
|
if (Interpolate.canceled || interpFramesFolder == null) return false;
|
||||||
// Logger.Log($"HasWorkToDo - Process Running: {(AiProcess.currentAiProcess != null && !AiProcess.currentAiProcess.HasExited)} - encodedFrameLines.Count: {encodedFrameLines.Count} - interpFramesLines.Length: {interpFramesLines.Length}");
|
|
||||||
|
if(debug)
|
||||||
|
Logger.Log($"HasWorkToDo - Process Running: {(AiProcess.lastAiProcess != null && !AiProcess.lastAiProcess.HasExited)} - encodedFrameLines.Count: {encodedFrameLines.Count} - interpFramesLines.Length: {interpFramesLines.Length}");
|
||||||
|
|
||||||
return ((AiProcess.lastAiProcess != null && !AiProcess.lastAiProcess.HasExited) || encodedFrameLines.Count < interpFramesLines.Length);
|
return ((AiProcess.lastAiProcess != null && !AiProcess.lastAiProcess.HasExited) || encodedFrameLines.Count < interpFramesLines.Length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user