Skip to content

Commit

Permalink
Always render video when at end of turbo seek
Browse files Browse the repository at this point in the history
- resolves #2081

This is only noticable on cores that implement (video) frame skip.
  • Loading branch information
Morilli committed Oct 10, 2024
1 parent ed10275 commit c844379
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/BizHawk.Client.EmuHawk/MainForm.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3027,13 +3027,14 @@ private void StepRunLoop_Core(bool force = false)
}
// why not skip audio if the user doesn't want sound
bool renderSound = (Config.SoundEnabled && !IsTurboing)
|| (_currAviWriter?.UsesAudio ?? false);
|| _currAviWriter?.UsesAudio is true;
if (!renderSound)
{
atten = 0;
}

bool render = !InvisibleEmulation && (!_throttle.skipNextFrame || (_currAviWriter?.UsesVideo ?? false));
bool atTurboSeekEnd = IsTurboSeeking && Emulator.Frame == PauseOnFrame.Value - 1;
bool render = !InvisibleEmulation && (!_throttle.skipNextFrame || _currAviWriter?.UsesVideo is true || atTurboSeekEnd);
bool newFrame = Emulator.FrameAdvance(InputManager.ControllerOutput, render, renderSound);

MovieSession.HandleFrameAfter();
Expand All @@ -3060,7 +3061,7 @@ private void StepRunLoop_Core(bool force = false)
PressFrameAdvance = false;

// Update tools, but not if we're at the end of a turbo seek. In that case, updating will happen later when the seek is ended.
if (!(IsTurboSeeking && Emulator.Frame == PauseOnFrame.Value))
if (!atTurboSeekEnd)
{
if (IsTurboing)
{
Expand Down

0 comments on commit c844379

Please sign in to comment.