Skip to content

[Feature]: Ignore category volume #34

@BVengo

Description

@BVengo

Request Description

Add a new button allowing the sound to ignore category overrides. For example, you can turn all hostile mobs down but toggle the button to still hear creepers.

If untoggled, the volume calculation would be:
volume * category * soundcontroller

If toggled, the volume calculation would be:
volume * soundcontroller

Issues with Volume > 100%

There have been a lot of reports regarding volumes > 100%, primarily regarding inconsistent or broken behaviour. See #14 and #26 - most other reports are via Discord.

Looking into it further, it is impossible to increase the volume over 100% without running into clamps in the underlying audio libraries. The only way is to replace the sound files, or circumvent the entire audio pipeline and modify audio directly as the files are read in (which would lead to audio distortion).

The reason why SoundController added > 100% audio is because in many cases, it appeared to be working. In reality, it's because the categories or master volume were set lower than 100%, and so increasing the individual volumes over 100% simply raised their level within the still-restricted 0-1 range.

For example,
Master Volume: 50
Hostile Mobs: 50
Sound Controller: 100
Volume = 0.5 * 0.5 * 1.0 = 0.25

Sound Controller: 200
Volume = 0.5 * 0.5 * 2.0 = 0.5

However, if the master volume and the hostile mobs are both at 100%, sound controller > 100 does nothing.

This new feature ditches the raising of volumes over 100% (given the expected behaviour is impossible, making it non-intuitive) and adds a simple button.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions