rockbox/apps/plugins
Aidan MacDonald 5b27e2255a Add perceptual volume adjustment
The perceived loudness change of a change in volume depends
on the listening volume: at high volumes a 1 dB increment is
noticeable, but at low volumes a larger increment is needed
to get a comparable change in loudness.

Perceptual volume adjustment accounts for this fact, and
divides the hardware volume range into a number of steps.
Each step changes the dB volume by a variable amount, with
most of the steps concentrated at higher volumes. This
makes it possible to sweep over the entire hardware volume
range quickly, without losing the ability to finely adjust
the volume at normal listening levels.

Use "Volume Adjustment Mode" in the system settings menu
to select perceptual volume mode. The number of steps used
is controlled by "Number of Volume Steps". (Number of steps
has no effect in direct adjustment mode.)

It's still possible to set a specific dB volume level from
the sound settings menu when perceptual volume is enabled,
and perceptual volume does not affect the volume displayed
by themes.

Change-Id: I6f91fd3f7c5e2d323a914e47b5653033e92b4b3b
2023-01-22 21:19:57 +00:00
..
beatbox [1/4] Remove SH support and all archos targets 2020-07-24 21:20:13 +00:00
bitmaps Fix red in 9bd5249 2023-01-06 06:38:57 +01:00
chessbox plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
clock plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
doom plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
fft plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
fractals plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
frotz keyboard add ability to specify temporary custom layouts 2020-07-22 06:48:28 -04:00
goban Document intentional fallthroughs + fix harmless unintended ones 2021-08-04 18:59:46 +00:00
imageviewer plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
lib PictureFlow: id3 functions refactoring 2023-01-19 15:12:57 -05:00
lua lua: rocklib_events fix 2023-01-02 13:38:08 -05:00
lua_scripts random_playlist.lua make index more sparse 2021-12-08 22:09:16 -05:00
midi New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
mikmod Add perceptual volume adjustment 2023-01-22 21:19:57 +00:00
mpegplayer plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
pacbox plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
pdbox Silence warnings that happen on newer GCCs 2020-10-13 20:09:14 -04:00
pictureflow PictureFlow: fix_path_part checked too many chars 2023-01-19 15:36:18 -05:00
puzzles plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
reversi New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
rockboy settings: Remove setting ID return from find_setting() 2022-12-17 13:36:38 +00:00
sdl Add perceptual volume adjustment 2023-01-22 21:19:57 +00:00
searchengine [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
shortcuts gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
sudoku New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
text_viewer Remove browse_context_init() 2022-12-17 13:36:38 +00:00
xworld settings: Remove setting ID return from find_setting() 2022-12-17 13:36:38 +00:00
zxbox New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
2048.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
alarmclock.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
announce_status.c announce_status Fix USB fall through and usb on plugin start 2021-11-13 03:38:28 -05:00
battery_bench.c apps: Add ability to do a clean reboot 2022-04-16 14:36:39 +01:00
bench_mem_jpeg.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
bench_scaler.c
blackjack.c Remove the (very) incomplete port for the Tatung TPJ-1102 2021-08-14 16:29:39 -04:00
boomshine.lua lua boomshine update to use rockevents library 2020-06-25 13:50:57 +00:00
bounce.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
brickmania.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
bubbles.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
BUILD_OVERLAY
calculator.c Document intentional fallthroughs + fix harmless unintended ones 2021-08-04 18:59:46 +00:00
calendar.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
CATEGORIES Revert "RFC: Get rid of mpegplayer plugin" 2022-10-13 11:08:11 -04:00
chessbox.c
chessclock.c New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
chip8.c New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
chopper.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
clix.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
codebuster.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
credits.c plugins: Credits: Fix logo sizes 2023-01-05 23:45:41 -05:00
credits.pl
crypt_firmware.c rockbox: move firmware checksum algorithms into a common header 2020-11-22 05:12:04 +00:00
cube.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
db_folder_select.c folder_select.c move to plugin as db_folder_select 2021-11-11 00:28:59 -05:00
demystify.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
dice.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
dict.c keyboard add ability to specify temporary custom layouts 2020-07-22 06:48:28 -04:00
disktidy.c [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
disktidy.config Revert r31239 and r31250. Selecting ALL in disktidy used to be generally safe for most people, and these changes change that, making it easy to delete most or all of a user's music. This is a *very* bad idea. 2011-12-26 00:03:28 +00:00
duke3d.c Port of Duke Nukem 3D 2017-12-23 21:01:26 -05:00
elfdep.pl
fire.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
fireworks.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
flipit.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
goban.c Fix yellows/reds. Red where caused by preprocessor condition mismatch. 2010-08-24 15:01:33 +00:00
greyscale.c Nuke the never-functional iriver ifp-7xx port 2021-04-26 07:42:58 -04:00
helloworld.c Update comments in the helloword plugin. 2010-08-30 20:58:38 +00:00
helloworld.lua Helloworld.lua: fix file_put_contents depending on a wrong return value of io.write + use a cleaner version of if(file == nil) (thanks to Christophe Gragnic) 2009-07-08 21:05:56 +00:00
invadrox.c Define LCD_STRIDEFORMAT unconditionally 2022-09-30 10:42:49 +01:00
iriver_flash.c rockbox: move firmware checksum algorithms into a common header 2020-11-22 05:12:04 +00:00
iriverify.c
jackpot.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
jewels.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
keybox.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
keyremap.c Add locked actions to all soft lock targets 2023-01-02 13:19:43 -05:00
lamp.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
lastfm_scrobbler.c lastfm_scrobbler Add settings WIP 2022-05-28 06:23:37 -04:00
logo.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
lrcplayer.c Add perceptual volume adjustment 2023-01-22 21:19:57 +00:00
lua_scripts.lua lua print table put_line a do_menu alternative 2021-04-20 03:30:41 +00:00
main_menu_config.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
matrix.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
maze.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
mazezam.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
md5sum.c md5sum: clean up whitespace 2020-07-26 15:41:54 -04:00
metronome.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
minesweeper.c New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
mosaique.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
mp3_encoder.c New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
multiboot_select.c plugins: Add multiboot select plugin 2022-04-16 14:36:39 +01:00
open_plugins.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
oscilloscope.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
otp.c Remove browse_context_init() 2022-12-17 13:36:38 +00:00
pegbox.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
periodic_table.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
pictureflow.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
pitch_detector.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
pitch_screen.c wps.c cleanup gui_show_wps 2022-12-14 22:35:33 -05:00
pixel-painter.lua Lua fix pixel-painter score save 2018-11-05 07:18:08 +01:00
plasma.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
plugin.lds DM320: Regorganize LCD and TTB memory layout 2021-07-09 09:24:38 +00:00
plugin_crt0.c apps: Add ability to do a clean reboot 2022-04-16 14:36:39 +01:00
plugins.make rb_info plugin and button,action+context name helper 2021-11-22 21:39:45 -05:00
pong.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
properties.c database: make parent tables work with plugin 2023-01-19 15:56:35 -05:00
quake.c sdl: Fix path substitution in log messages, fix game names in comments 2019-08-22 22:00:43 +03:00
random_folder_advance_config.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
rb_info.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
remote_control.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
resistor.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
robotfindskitten.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
rockblox.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
rockblox1d.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
rockbox-fonts.config New plugin theme_remove which offers a way to remove specified theme. 2009-10-12 13:55:59 +00:00
rockboy.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
rocklife.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
rockpaint.c Remove browse_context_init() 2022-12-17 13:36:38 +00:00
search.c [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
settings_dumper.c EQ settings: Rework the settings to clean up the config file. 2013-02-09 13:05:32 +01:00
shopper.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
sliding_puzzle.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
snake.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
snake2.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
snake2.levels
snow.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
sokoban.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
sokoban.levels Some more sokoban changes from Sean Morrisey's FS #6702. (includes moving the default level file back to the previous filename) 2007-06-29 19:52:13 +00:00
solitaire.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
sort.c plugins: make local functions static for a subset of plugins 2011-09-17 17:20:27 +00:00
SOURCES Define LCD_STRIDEFORMAT unconditionally 2022-09-30 10:42:49 +01:00
SOURCES.app_build keyboard.c Use viewports, move text box pos 2022-04-07 19:46:56 -04:00
spacerocks.c plugins: SpaceRocks: iPod keymap, use Menu button for Menu 2022-12-29 08:10:01 +01:00
speedread.c Remove browse_context_init() 2022-12-17 13:36:38 +00:00
star.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
starfield.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
stats.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
stopwatch.c Nuke the never-functional iriver ifp-7xx port 2021-04-26 07:42:58 -04:00
stopwatch.lua New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
SUBDIRS Revert "RFC: Get rid of mpegplayer plugin" 2022-10-13 11:08:11 -04:00
SUBDIRS.app_build [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
superdom.c gui: Remove show/hide selection option in lists 2022-10-02 09:21:25 -04:00
test_boost.c Fix two variable-set-but-not-used warnings 2020-07-24 23:26:15 -04:00
test_codec.c plugins: HAVE_BACKLIGHT in the test plugins 2020-07-24 19:42:32 -04:00
test_core_jpeg.c
test_disk.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
test_fps.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
test_gfx.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
test_grey.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
test_greylib_bitmap_scale.c test_X plugins PLA integration 2012-03-03 19:55:51 +01:00
test_kbd.c keyboard.c Use viewports, move text box pos 2022-04-07 19:46:56 -04:00
test_mem.c test_mem: fix asm variant of read/write test 2020-11-04 13:00:01 +00:00
test_mem_jpeg.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_resize.c LCD core move buf ptr and address look up function viewport struct 2020-10-26 12:28:48 -04:00
test_sampr.c Add 192 and 176KHz to mikmod and test_sampr plugins 2020-09-30 22:52:56 -04:00
test_scanrate.c [1/4] Remove SH support and all archos targets 2020-07-24 21:20:13 +00:00
test_touchscreen.c New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
test_usb.c plugins: add USB TSR test plugin 2022-05-21 14:58:55 +01:00
test_viewports.c Bug Fix test_viewports.c call scroll_stop before changing viewports 2022-11-16 01:49:41 -05:00
test_viewports.lua Fix some typos 2009-05-25 14:56:59 +00:00
text_editor.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
theme_remove.c [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
vbrfix.c plugins trade talk_value for talk_value_decimal 2021-08-19 01:17:29 +00:00
viewers.config Revert "RFC: Get rid of mpegplayer plugin" 2022-10-13 11:08:11 -04:00
vu_meter.c plugins: VU Meter: Ignore backlight timeout 2022-12-27 09:43:34 -05:00
wav2wv.c [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
wavview.c
windows_lnk.c plugin windows_lnk: fix missing return-on-error 2020-07-07 02:36:33 +00:00
wolf3d.c sdl: Fix path substitution in log messages, fix game names in comments 2019-08-22 22:00:43 +03:00
wormlet.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
xobox.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
zxbox.c