Videos: a driven video waits ready while its sprite is off (#404)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
adminandClaude Opus 5.5 committed 2026-10-11 15:37:21 +02:00
1 parent b14b657f4b
commit ec66887f1c
2 files changed
+10 -3

No files matched your search

+1 -1
@@ -21,7 +21,7 @@ php tests/php/releases.test.php # the release stor
php tests/php/files.test.php # uploaded files in a folder per account (#344), the same way
php tests/php/videos.test.php # the video store, its queue and the worker (#402), with the
# real ffmpeg: the CI image and game-maker-video have it
node tools/seed-e2e.mjs && node tools/e2e.mjs # 2000 editor checks, screenshots in /tmp/gm-e2e-*.png
node tools/seed-e2e.mjs && node tools/e2e.mjs # 2002 editor checks, screenshots in /tmp/gm-e2e-*.png
GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step
./e2e.sh start [GM_STEPS] # the same run detached, see below
./e2e.sh status # live progress, or the last run's result
+9 -2
@@ -122,11 +122,18 @@ shader's parameters. Or one sprite whose Texture is keyed from clip to clip.
is nudged by a few percent, and only seeks when it is more than 0.25 s off. A time that stands,
jumps or runs back holds the video and seeks; while a seek runs, only the newest one waits.
Seeking every frame would be too slow, a seek decodes from the last keyframe, up to 14 pictures.
- **The speed is read over up to 0.5 s:** a game steps its time in 1/60 s, and over a shorter
window one step more or less read as 17 % off, so the video was nudged and fell quiet in turn.
The first reading comes after 0.1 s, a time that stands for 0.1 s stands, and a start is
measured from where the time began to move.
- **Heard** only at about 1x (0.9x to 1.1x); a still, scrubbing, slow and fast motion are quiet.
- **Exact while it runs live in the browser**, as far as Chrome keeps up: a picture that comes too
late leaves the one before it on screen. Exporting a cut as a video file is #405.
- A driven sprite switched off for more than 2 s loses its player, like any video nothing shows. On
again, it seeks to its time and shows nothing until that picture is there.
- **Ready for the cut:** a driven sprite that is switched off or out of view keeps its player,
quiet, at its Video time, in the editor as in a game (#404). Switched on, the first frame shows
its picture, not its plain colour
while the video loads. Each one costs a player while it waits, so a cut with many clips
holds many videos at once.
## The worker