Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Force ending test in overrun window leaks a buffer restart timer #350

Closed
aza547 opened this issue Mar 31, 2023 · 8 comments
Closed

Force ending test in overrun window leaks a buffer restart timer #350

aza547 opened this issue Mar 31, 2023 · 8 comments
Labels
bug Something isn't working

Comments

@aza547
Copy link
Owner

aza547 commented Mar 31, 2023

Causes games to be cut in half.

image

WarcraftRecorder-2023-03-30.log

image

@aza547 aza547 added the bug Something isn't working label Mar 31, 2023
@aza547
Copy link
Owner Author

aza547 commented Mar 31, 2023

[2023-03-30 19:54:07.247] [info] [VideoProcessQueue] Now processing video E:\Recording.temp\2023-03-30 19-53-54.mp4
[2023-03-30 19:54:07.248] [info] [VideoProcessQueue] Avoiding error by rejecting negative start -260.227
[2023-03-30 19:54:07.248] [info] [VideoProcessQueue] Desired duration: 270.052 Relative start time: 0

@aza547
Copy link
Owner Author

aza547 commented Mar 31, 2023

So we're aware that the video is undersized but we just do the best we can with what we have at that point and accept the reduced video duration. That's not much good if we want a 270s video but end up with 10s x)

@aza547
Copy link
Owner Author

aza547 commented Apr 1, 2023

See Recorder._bufferRestartIntervalID which I think is what is leaking on updating config.

On updating config we call .reconfigure() on the recorder class, we don't re-create it for dull reasons.

@aza547
Copy link
Owner Author

aza547 commented Apr 1, 2023

Hm less clear that this is a reconfigure() issue after another look at logs. At 19:33:54 where the first double restart happens, tracking back 5 mins to 19:28:54 looks like there was a test button going on there. The reconfigure a bit earlier doesn't seem to line up with the problem and looks to have worked fine.

@aza547
Copy link
Owner Author

aza547 commented Apr 1, 2023

[2023-03-30 19:28:53.332] [info] [Main] Force stopping recording due to user request.

I reckon the force stop caused this

@aza547
Copy link
Owner Author

aza547 commented Apr 1, 2023

[2023-03-30 19:28:51.105] [info] [Recorder] Stop called
[2023-03-30 19:28:51.106] [info] [Recorder] Stop recording after overrun: 3s
[2023-03-30 19:28:53.332] [info] [Main] Force stopping recording due to user request.

Probably a bug where the user force ended the test recording during the overrun window.

@aza547
Copy link
Owner Author

aza547 commented Apr 1, 2023

[2023-03-30 19:28:53.957] [info] [Recorder] Start OBS called
...
[2023-03-30 19:28:54.744] [info] [Recorder] Start OBS called

So the overrun ends and restarts the recording, and the force end also restarts the recording. So I guess that's how we end up with two buffer restart intervals.

A fix is probably to just check we don't have a bufferRestartIntervalID variable before we call setInterval() in Recorder.startBuffer()

@aza547 aza547 changed the title Updating settings leaks a restart timer Force ending test in overrun window leaks a buffer restart timer Apr 1, 2023
@aza547 aza547 closed this as completed Apr 1, 2023
@aza547
Copy link
Owner Author

aza547 commented Apr 1, 2023

d7c4f9c

@aza547 aza547 reopened this Apr 1, 2023
@aza547 aza547 closed this as completed Apr 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant