-
Notifications
You must be signed in to change notification settings - Fork 10
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
capture: Add _bxt_cap_skip_non_gameplay_frames #55
Conversation
Just realize I need to put a check whether it is demo is playing.... |
Hmmm, it is still not quite working right. |
That one works but the last demo won't skip the loading because right now I have no idea how to check whether a demo is going to be played. Trying to approach the other way that the game is being played but not the demo but it seems bit complicated now. |
This should be better. It will start recording as soon as the game is done loading in general, not just limited to demo anymore. However, the fact that it will record when the game is loaded means recording the game when a map is not running will not record anything. But if prompted to a map, it will record right away. Maybe if that is needed then that could be the default behavior and extra cvar or this could be instead and there is another cvar (like |
So, some thoughts on this:
|
outout.mp4
|
@SmileyAG what do you think from segmented run rendering perspective? |
I think it's ok to remove wait gaps since for rendering I'm always memorise at my head all transitions per the next demos after a multiple times of playback, and cuz anyway later I had to re-record audiotrack of some demo or with enabled cmd like |
👍 I am still wondering how this would get implemented. Yalter does mention there could be some intentions of just recording to see things. If we were to have a command to record for segmented run then we might have another |
Here are some testings. This video is the normal and this commit with audio on top of another. Not sure how helpful it is. out.mp4Here is some waveform with video toggled off and on occasionally to see that videos are matched. Screencast.from.2022-11-29.01-01-22.webm |
Here is how it does with live TAS recording. no.mp4With cut: yes.mp4A selected portion from no cut that I edit myself to see how it compares with this: select.mp4 |
027ebc5
to
a262d84
Compare
Hmmm, I thought I sync the change so your forced changes will get here also.... Welp, feel free to force push that. I think it should be on by default because I think when people want to record, they wouldn't want to record the main menu as soon as they start the client. I have counted some demo records so I give the recommendation for the number of skipped frame is six ( |
The only problem with conditioning this variable is it will skipp all the frames if the player carries no weapon. Not perfect unless I find something else. Edit: doing fallback instead because this is a hard problem for me. |
8ce424e
to
41a3df8
Compare
41a3df8
to
ec6807c
Compare
b363826
to
9c1c3c3
Compare
Just re-did this by making it in its own module. Should feel better than before. I recently find myself recording lots of demos and this is indeed very useful to feel less irritating looking at the product(s). I am also advocating to have this on by default. What do you think? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am also advocating to have this on by default. What do you think?
A bit of a problem with this is that it's natural to try bxt_cap_start in the menu just to test that the recording works--I frequently do this myself.
9c1c3c3
to
9d17531
Compare
Thanks |
Great addition, thank you, @khanghugo, very cool! |
Recording normally would have loading. Here is a recording with lots of segments.
yes_loading.mp4
Here is one without loading.
no_loading.mp4
The
frame_count
could be changed around to omit early frames entirely. Though it might come at a cost of recording become janky. Some frames are broken as #2 mentions. That would need something else.