philliphsu/ClockPlus

Feature Request: Increasing Volume

Opened this issue · 1 comments

jfml commented

This would be my perfect alarm clock for me if it had an option to increase the Volume from a chooseable minimum to a maximum. Is that possible? Amazing work, anyway (timers that get sorted by time is such an improvement over what Cyanogen/LOS does)!

The presence of above feature request is a "user winning feature"

The idea is that an alarm starts at a lower volume level to be audible to a keen listener, and with the passage of successive short intervals of time, after each interval the volume is raised, causing alarm more likely to be heard and responded to, before distracting others.

The use case is that

  • a phones owner, clock app user would keep phone near by
  • user does not want to trouble/disturb/wake-up other occupants/people at location
  • user is a light sleeper/alert to alarm/keen-eared-type person who can respond to alarm before the elapse of time to the higher volume levels are reached

Each Timer, Stopwatch and Alarm set could independently have this setting

The parameters for such feature

  • bool: toggle button : to enable the increasing volume feature
  • int: seconds to elapse to the next volume level (range: 5s to, 0s can be interpreted as disabled )
  • int: number of levels (default 10), implicitly decides the increment
  • int/float: a minimum start volume (optional, default 10%)
  • int/float: a maximum end volume (optional, default 100%)

To implement

  • When in alarm_triggered_callback()
  • -- if increasing_volume feature is enabled
  • -- -- if this is the start, i.e. 0s, start alarm at min-volume
  • -- -- set a callback to invoke volume-increment-callback after pre-configured interval
  • -- else just set the volume to the pre-configured alarm volume
  • -- continue with the rest of the regular alarm setting procedure
  • When in volume-increment-callback()
  • -- increase alarm volume to the next level by adding to it the the pre-configured increment
  • -- if the max-volume not yet reached set callback trigger for next increment after another elapsed no of seconds

After investigating a few clock-apps, ended up using google-clock-app for this feature.