diff options
| author | Javier <16884603+Xenon-Hacks@users.noreply.github.com> | 2026-10-31 20:56:43 -0400 |
|---|---|---|
| committer | Jonas <baguettegamerofficial2020@gmail.com> | 2026-11-03 05:55:03 +0600 |
| commit | 031e58e93046726446538a0efeebd56f7b5dc184 (patch) | |
| tree | d3aa49dfddf2acd5b9f8beadfc65cb00725b07bc /src/common/key_map.cpp | |
| parent | 3ffa971337144b32f88f12260362f5cf1cec8623 (diff) | |
nx2: video decoder: keep post-stream release fences pending
Bananza's movie player acquires one decoded frame every time a released
output image's fence completes, and aborts (2111-3604) when the ring is
empty. Completing those fences at once after the end of a stream (the
Mario Kart World workaround) made it acquire from an empty ring the
moment its cutscene movies ended.
Released images now keep their normal pending fence after the end of a
stream. Stop (207) and Finalize (115) complete every fence handed out
so far, so a client that waits on its returned images after a movie is
still released when it stops the decoder.
EDEN_NX2_VDEC_EOS_RELEASE_NOW=1 restores the old immediate completion;
EDEN_NX2_VDEC_TRACE=1 logs every decoder call.
Tested on Bananza: the post-breakout cutscene movie ends and gameplay
continues (mining tunnel). Mario Kart World not retested.
Assisted-by: Claude (Anthropic) for investigation and code.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 0f8eaa54be5bff351de7c9a80cc06a4b3453bc76)
(cherry picked from commit 8ed051843a33a5dec086d1ec6985798c8b336a6a)
Diffstat (limited to 'src/common/key_map.cpp')
0 files changed, 0 insertions, 0 deletions
