aza547 / wow-recorder

A desktop screen recorder application that records and saves videos of in-game World of Warcraft encounters, and provides a graphical user interface to view the replays. It is free, open source and contains no adverts.
http://www.warcraftrecorder.com
Other
150 stars 27 forks source link

Recording may start several seconds into arena games #26

Closed aza547 closed 1 year ago

aza547 commented 2 years ago

Fundamental limitation of how we currently start a recording, due to the WoW combatlog not being written live. It gets flushed periodically (not sure how often/what triggers this). Usually this means recording starts when you get into combat, usually its OK but occasionally you can miss vital positioning moments in the first few seconds.

Only real idea for a fix is to move to a model where we are permanently recording, and then go back and clip videos to size after the arena match ends. The ARENA_MATCH_END event has the duration of the game in it so it's trivial to get this. Less trivial but surely possible to clip videos. Think this is what SquadOV does after discussion with @ericlytle.

aza547 commented 2 years ago

https://stackoverflow.com/questions/31046930/how-to-cut-a-video-in-specific-start-end-time-in-ffmpeg-by-node-js

aza547 commented 2 years ago

Should consider the implications of a fix against the instant replay of videos. The solution should not mean videos are not instantly viewable.

ericlytle commented 2 years ago

i was thinking a little about this. Is the delay in combat log caused by the simplecombatlogger addon or does it do it when you manually start combat logs too? something im going to try to test around when i can

aza547 commented 2 years ago

I suspect it's not caused by the addon, but happy to be proven wrong!

aza547 commented 2 years ago

The addon pretty reliably seems to start logging as soon as I zone into arena from memory...

aza547 commented 2 years ago

This is loads better now. But we can still do more.

The current recording strategy is:

This leaves a small window between the start of an encounter/arena that if the 5 minute restarts falls in we'll still have this problem. For example, if the gates open and 2 secs later the restart triggers, then 2 secs later the ARENA_MATCH_START event hits.

The fix to this is to add some logic to handle this scenario by stitching an old buffer video onto the new one. We only delete buffer recording files that are not the most recent, so it will always be available.

Might try tackle this in a few weeks but expect this to be drastically improved as of 2.5.0.

aza547 commented 2 years ago

Discord request for some extra time at start of raid recording to grab pull timer.

aza547 commented 1 year ago

Closing this as I think it's good enough as it is.