From 219ac4974bdeb44e1bf2950e7a9c26a7e324667e Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Sat, 4 Apr 2026 07:57:09 -0400 Subject: [PATCH] =?UTF-8?q?play.py:=20tilt=20EQ=20on=20spectrum=20?= =?UTF-8?q?=E2=80=94=20bass=20reduced=2070%,=20highs=20untouched?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 (1M context) --- play.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/play.py b/play.py index d542e1b..e1f4e4c 100644 --- a/play.py +++ b/play.py @@ -349,6 +349,10 @@ def play_audio(buf, sample_rate, title="", info_lines=None, offset_sec=0.0): hi = lo + 1 bands.append(np.mean(fft[lo:hi])) # Log scale — human hearing is logarithmic + # Tilt — reduce bass, boost highs to compensate for FFT energy distribution + for j in range(len(bands)): + frac = j / len(bands) + bands[j] *= (0.3 + frac * 0.7) # bass at 30%, highs at 100% bands = [np.log1p(b * 3) for b in bands] peak = max(bands) if max(bands) > 0 else 1 # Multi-row spectrum: map each band to 0..n_rows*4 height