Once I find more info I’ll try to add some info or pointers to the GitLab issue. Maybe for the commits that add an entry in Settings to make changes. In the meantime there’s the build.prop way.
I just flashed Nougat LineageOS 14.1 UNOFFICIAL on a Moto G5 Plus potter. As @Cricoo mentioned, the defaults (in most ROMs I guess) for voice calls is 5, media is 15. In that LOS the defaults were upped to 7 and 20 respectively using the following additions…
I changed the media to 30, rebooted, and confirmed the steps. I rarely, almost never, talk on the phone so didn’t/can’t check voice volume. If I had to change it I would’ve doubled it to 14 or 15.
On /e/OS I have had GravityBox from the get-go, even on Pi/e/. Among other things it handled the media volume steps. On the Essential mata with Pi/e/ I disabled the media volume steps in GB (set to 30), rebooted, and tested what the defaults are. Much to my surprise it had 25 steps. Don’t know where that’s defined yet.
Added the media steps to build.prop with a value of 30. After reboot I confirmed it had 30 steps.
In a three year old XDA article it is mentioned that the volume steps that can be changed is/was in AudioService.java. Given how rapidly things change I don’t know if that’s still the place.
If at least those two volume steps are defined and present for all devices, maybe just modified build.props with those two configs would suffice(?). Set to values of 10 to 15 for voice calls and 30 for media.
Either way, the above gives us something to look at.
For anyone rooted or has TWRP they can test those lines. I figure there’s a Magisk module for this but it’s best to see if one’s ROM or device recognizes the build.prop entries.