Conversation
Contributor
|
Why reduce the buffer time (seconds) limit? The megabyte limit can keep the buffer in line by itself. |
ThePunpun
force-pushed
the
fix-desktop-playback-memory
branch
from
September 3, 2026 18:26
fce755c to
b043485
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #555.
PR type
Why
The Windows embedded player allowed up to 768 MiB of demuxer cache. High-bitrate remux playback could therefore raise Nuvio’s memory usage substantially above its loaded Home-screen baseline.
A controlled A/B test using the same application build, hardware, title, source, and two-minute playback duration showed approximately 420 MB lower total peak memory after reducing the byte limits.
The selected limits retain approximately 24–27 seconds of buffered content in the tested high-bitrate stream while preserving responsive seeking. Lower byte limits were intentionally avoided to retain sufficient protection against network variation.
Desktop scope
This change is limited to the Windows embedded native player in
player_bridge.cpp.It does not change:
Issue or approval
Fixes #555.
UI / behavior impact
Policy check
CONTRIBUTING.md.Scope boundaries
Testing
Tested locally on Windows 11 with an Intel Core i7-10700K and NVIDIA GeForce RTX 2060 SUPER.
A controlled A/B test used the same build, approximately 130 GB remux, remote source, hardware, and two-minute playback duration:
The reduced configuration lowered:
The measurement run included a 120-second time limit, but its observed buffer-ahead remained approximately 24–27 seconds. The time limit was therefore not reached, and the final patch leaves
cache-secsunchanged.Also verified:
d3d11va..\gradlew.bat :composeApp:desktopTestcompleted successfully..\gradlew.bat :composeApp:desktopJarcompleted successfully.macOS, Linux, Android, and external-player runtime testing was not performed because their implementations are unchanged.
Screenshots / Video
Not a UI change.
Breaking changes
None.
Linked issues
Fixes #555.