NDI output
Some checks failed
CI / React UI Build (push) Successful in 10s
CI / Native Windows Build And Tests (push) Failing after 1m47s
CI / Windows Release Package (push) Has been skipped

This commit is contained in:
2026-05-22 16:41:24 +10:00
parent 4e6b37304f
commit 93aa8fa981
10 changed files with 397 additions and 47 deletions

View File

@@ -162,25 +162,42 @@ private:
return;
}
Log("app", "Starting video output thread.");
if (!mOutputThread.Start())
if (mOutput->RequiresPreroll())
{
DisableVideoOutput("Video output thread failed to start.");
return;
}
Log("app", "Starting video output thread.");
if (!mOutputThread.Start())
{
DisableVideoOutput("Video output thread failed to start.");
return;
}
Log("app", "Waiting for video output preroll frames.");
if (!WaitForPreroll())
{
DisableVideoOutput("Timed out waiting for DeckLink preroll frames.");
return;
}
Log("app", "Waiting for video output preroll frames.");
if (!WaitForPreroll())
{
DisableVideoOutput("Timed out waiting for video output preroll frames.");
return;
}
Log("app", "Starting scheduled video playback.");
if (!mOutput->StartScheduledPlayback(outputError))
Log("app", "Starting scheduled video playback.");
if (!mOutput->StartScheduledPlayback(outputError))
{
DisableVideoOutput("Scheduled video playback failed: " + outputError);
return;
}
}
else
{
DisableVideoOutput("Scheduled video playback failed: " + outputError);
return;
Log("app", "Starting video output backend without preroll.");
if (!mOutput->StartScheduledPlayback(outputError))
{
DisableVideoOutput("Video output failed to start: " + outputError);
return;
}
if (!mOutputThread.Start())
{
DisableVideoOutput("Video output thread failed to start.");
return;
}
}
mVideoOutputEnabled = true;