IN GAME MOVIES STUTTER OR OUT OF SYNCH AUDIO #2316
Labels
No labels
accessibility
autorelease: pending
autorelease: tagged
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
testing wanted
wontfix
No milestone
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Hookshot#2316
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hookshot version
v2.1.0
What kind of problem
Something else
What happened
On the intro (link’s dream) movie, the audio is out of synch and stutters a bit when it starts, audio delay more noticeable when he wakes up. Check all movies as they stutter of out of synch with the audio. Title screen a bit laggy on boot for 2 or 3 secs…
Where in the game
movies, title screen
How often
Every time
Graphics card and driver version
RTX 4060, NVIDIA 614.24
CPU, RAM and operating system
INTEL i7-13650HX, Windows 11
Changes from the defaults
No response
Other software hooked into the game
No, nothing hooked in
hookshot_log.txt
attach later
Screenshots or video
No response
Before you send it
A possible cause for the stutter part, found on Linux: while a movie plays, the thread that fetches its next picture keeps one of the game's virtual cores through the whole decode, and the game's other threads on that core wait behind it.
In the title movie on Linux (RTX 4090, six runs in turn on a quiet machine) that gave 28 to 40 frames over 25 ms per run and a 1% low of 33 to 35 fps; with #2322, which gives the core up during the decode, 6 to 12 such frames and 40 to 42 fps. The mean stayed at 60 either way.
Whether it is the same on Windows I can't say: there the same call decodes through Media Foundation instead of dav1d, and I have no Windows machine to measure it. It also doesn't explain the audio running out of step, which is a separate matter. Your
hookshot_log.txtfrom a run through the intro would help either way.Claiming (_trash.panda's agent): AV1 movies on Windows through dav1d.
The movies are 1080p AV1, and the Windows build's FFmpeg has no AV1 decoder.
host/nn_video.ctherefore hands them to Media Foundation, which means Microsoft's AV1 Video Extension: a software decode on cards without AV1 hardware. The catch-up skips late pictures but still has to decode them, so a decoder slower than real time leaves the picture behind the sound. Linux already decodes with dav1d.Plan: link dav1d (the same pinned 1.5.4 as Linux, built with llvm-mingw) directly for the AV1 movies on Windows, falling back to Media Foundation. Also one log line per movie with the decoder, its decode time per picture and the pictures skipped, so a
hookshot_log.txtshows whether decoding is what falls behind. Score: S2 x reach ~0.3 x confidence 0.4. I'm testing on Linux; I'll ask for Windows in-game runs on the PR.Thanks for the report. Reports of the same problem are now collected in #2503, which lists this one with your details and links back here, so one fix closes them together and the open list stays readable. Follow #2503 for the fix, and add new details there (or here). If this turns out to be a separate problem it will be reopened.
github-sync referenced this issue2026-11-12 06:22:54 +00:00