Zerberus: add support for "global_volume=" opcode

• Jul 12, 2018 - 20:24
Reported version
S5 - Suggestion

In order to adjust the balance of an entire SFZ file (such as the individual drum line SFZ files we are using in MDL), it would be very helpful to implement a global volume control such as the following:


...which would boost the volume of the entire SFZ file by 2 dB. This opcode is part of the ARIA engine's SFZ implementation.

In addition to the <global> zone, ARIA also supports another level between <global> and <group>, which is <master>, which we could also consider adding along with master_volume= for control of specific sections within an SFZ file. This gives a SFZ hierarchy of: global / master / group / region. As far as I understand, there can only be one global zone, but the other zones can appear more than once. More details on these opcodes is listed on this page: http://ariaengine.com/forums/index.php?p=/discussion/4389/arias-custom-…

So in summary: global_volume= support would be massively helpful in our work on the MDL percussion library (and future sample libraries), and master_volume= would be a useful addition as well, but is less crucial to my work and would involve adding support for the <master> zone.


Fixed in branch 2.3.2, commit b29ceb84fe

fix #274258, fix #274396: implement global_volume and attenuate Zerberus

Attenuated Zerberus to be 4.5dB louder.

add global_volume=-4.5 value to the unit test to prevent failing and
testing new opcode