Skip to content

v33 — software volume for play_media, fixes all-or-nothing

Latest

Choose a tag to compare

@CheapDevotion CheapDevotion released this 12 May 17:19

What's in v33

`set_volume` now drives a per-sample software gain inside MediaPlayer rather than mapping to STREAM_ALARM index. Fixes the all-or-nothing behavior we hit live: STREAM_ALARM's volume curve on the Lenovo CD-18781Y is so steep that mid-range values are effectively inaudible.

Volume model

  • `set_volume 0.4` stores 0.4 in pref `media-volume`
  • Next `play_media` pegs STREAM_ALARM to hardware max, then applies `MediaPlayer.setVolume(0.4, 0.4)` — a linear software multiplier
  • 0.4 actually sounds like 40%
  • `stop_media` restores STREAM_ALARM to whatever it was before

Security siren and Spotify Connect volume paths are unaffected (independent code paths, independent volume controls).