From a60a7cd8d1abefaab934657d528a86b339aec023 Mon Sep 17 00:00:00 2001 From: Thomas Farstrike Date: Tue, 9 Dec 2025 13:35:22 +0100 Subject: [PATCH] Comments --- CHANGELOG.md | 2 +- internal_filesystem/lib/mpos/audio/stream_wav.py | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c0cd8be..05fe5fd0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ 0.5.2 ===== -- AudioFlinger: optimize WAV volume scaling +- AudioFlinger: optimize WAV volume scaling for speed and immediately set volume 0.5.1 ===== diff --git a/internal_filesystem/lib/mpos/audio/stream_wav.py b/internal_filesystem/lib/mpos/audio/stream_wav.py index 84723800..a57cf279 100644 --- a/internal_filesystem/lib/mpos/audio/stream_wav.py +++ b/internal_filesystem/lib/mpos/audio/stream_wav.py @@ -323,12 +323,14 @@ class WAVStream: # smaller chunk size means less jerks but buffer can run empty # at 22050 Hz, 16-bit, 2-ch, 4096/4 = 1024 samples / 22050 = 46ms # with rough volume scaling: - # 4096 => audio stutters during quasibird + # 4096 => audio stutters during quasibird at ~20fps # 8192 => no audio stutters and quasibird runs at ~16 fps => good compromise! # 16384 => no audio stutters during quasibird but low framerate (~8fps) # with optimized volume scaling: - # 8192 => no audio stutters and quasibird runs at ~12fps - chunk_size = 4096*2 + # 6144 => audio stutters and quasibird at ~17fps + # 7168 => audio slightly stutters and quasibird at ~16fps + # 8192 => no audio stutters and quasibird runs at ~15fps + chunk_size = 8192 bytes_per_original_sample = (bits_per_sample // 8) * channels total_original = 0