Adding features

This commit is contained in:
hz
2026-04-21 08:10:51 -05:00
parent f90c6d7b50
commit c52bd0c50c
25 changed files with 1059 additions and 54 deletions
+19 -2
View File
@@ -11,15 +11,32 @@ What already works:
- Highlight scoring
- Clip job creation with `start_tick` and `end_tick`
- Manual clip upload and in-page playback for `.mp4` and `.webm`
- Render worker scaffold with a `cs2-scripted` backend that resolves demos, creates per-attempt scripts/logs, and invokes a Windows wrapper script
What does not exist yet:
- Automatic demo-to-video rendering
- A separate render worker process
- A real CS2 capture backend
- Camera automation
- Encoding pipeline
What exists now for the first automation path:
- Worker backend: `src/Fragalytics.RenderWorker/Services/Cs2ScriptedRenderBackend.cs`
- Wrapper script entrypoint: `src/Fragalytics.RenderWorker/scripts/render-cs2-clip.ps1`
- Worker config: `src/Fragalytics.RenderWorker/appsettings.json`
Current behavior of that path:
- It resolves the source `.dem` from the clip job payload
- It creates per-attempt artifacts under `data/render-artifacts`
- It writes a launch script and log for each render attempt
- It invokes the configured wrapper script with resolved arguments
- It only marks success if the configured command produces the expected output file
This means the next implementation work is focused in one place:
- edit `render-cs2-clip.ps1` to launch CS2, drive demo playback, capture the clip, and write the output file
## Important Constraint
A `.dem` file is not video. It is replay data. To get a playable clip, the system must run Counter-Strike 2, load the demo, seek to the correct tick range, play the segment in-engine, capture the frames and audio, encode the output, and then attach the media file back to the clip job.