SFZ engines: config file & parse controllers

I also created a bug report.

1 Like

Hi @hannesmenzel ,

As an SFZ expert, can you please explain to me how the .yml relates to the .sfz?

I am trying to use this great new feature for the Leeds Town Hall Organ samples. The release time in the samples is far too short.

I can make a release controller by entering in the SFZ file:

<control>
set_cc72=0
label_cc72=Release

<global>
ampeg_release=0.001
ampeg_release_oncc72=5

This works great but has to be repeated for every preset.

From Jofe’s explanation I understand it is possible to get the same result in the yml file, or in a common.yml for all files in the same directory. But the only thing I can accomplish is set a preset value for a CC message.

However, I can’t figure out how to link a certain CC to `ampeg_release` like in the sfz. Is this even possible? Or do I misunderstand the use of the yaml in this context? I would appreciate an explanation.

Kind regards,

Hans.

Edit: I found it!

The secret lies in midi_controllers

Example in zynthian-data/soundfonts/sf2/ModSynth_R1.yml at vangelis · zynthian/zynthian-data · GitHub

I’m happy, this really is a huge improvement. Thanks @jofemodo!

h.

Edit 2: Hmm, not quite, little too optimistic. But too promising to give up. I’ll go on tomorrow :wink:

Hi @hannesmenzel !

Please, update and test (vangelis branch).

Regards,

1 Like

Hi, I can’t fully answer, on short vacation right now.
The yml files will not at all adjust your release, it’s only for binding your chosen CC to the zynthian UI.

Means you definitely have to adjust your releases inside your sfz exactly how you did it.

1 Like

Thanks @hannesmenzel, that’s exactly what I wanted to know. Now I don’t have to search any longer.

Great, I’ll test on Monday, thanks!

Yes, it’s working again, thanks!

Sorry, I just found an issue again possibly related to this. Can somebody working with SFZ please check if you can reproduce this?

SFZ with predefined controller links to MIDI CC (no matter if with custom yml file or automatically parsed) doesn’t react to Midi CC input. Anyhow: when Midi learning the specific control overwriting the predefined link, it works (So Midi CC input is working).

 ##########################       ----------------------------------------
#                          #      ZynthianOS ORAM-2505
#            ##            #      Timestamp: 2025-05-30
#      ##   #  #   ##      #      Built from RaspberryPiOS Bookworm (aarch64)
#     #  #  #  #  #  #     #      ----------------------------------------
###   #  #  #  #  #  #   ###      Kit:           Custom
#  #  #  #  #  #  #  #  #  #      Display:       Generic HDMI/DSI Display
#   ##   #  #  #  #   ##   #      Soundcard:     HifiBerry DAC+ ADC PRO
#         ##    ##         #      Wiring Layout: MCP23017_ENCODERS_V5TOUCH
#                          #      ----------------------------------------
 ##########################
                                  zynthian-ui: vangelis (8ddc27)
                                  zynthian-webconf: vangelis (f07094)
                                  zyncoder: vangelis (a03a07)
                                  zynthian-sys: vangelis (4e453b)
                                  zynthian-data: vangelis (6ac209)
                                  ---------------------------------------

Linux hannes-zynthian 6.12.47+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.12.47-1+rpt                                                                                                                                                                                                                                             1~bookworm (2025-09-16) aarch64

Hi @hannesmenzel !

Please, could you give a reproducible example, step by step?

Thanks

1 Like

Certainly!

  • Add sfizz chain
  • Load any sfz which contains any midi cc controls (no matter if containing yml or just parsing controls automatically). For example, use Pianos/Stereo Rhodes.
  • Turn respective encoder on your midi controller (for example volume encoder sending cc7, if volume control is present)
  • Control does not move (unexpected behavior)
  • Midi learn this control (push encoder, move encoder on midi controller)
  • Control does move (expected behavior)

Hi @hannesmenzel ,

Strange, it works for me. After loading Pianos/Rhodes sending CC7 immediately changes volume (without need for midi learn). Oram 2506.1 (stable).

Kind regards,
Hans.

1 Like

Sorry, i can’t reproduce:

  • Add a sfizz chain
  • Load “Pianos/Stereo Rhodes”
  • Move CC7 rotary in my “Akai MPK mini” keyboard => Volume changes and i can see how it changes in the zynthian UI control screen.

Using latest Vangelis here. Also tested in Oram Staging.

Regards,

3 Likes

Really strange, thats exactly the way to reproduce. I probably have to troubleshoot my device somehow, because it is not the first issue which seems to be only with my device here (also the strange issue of non-persistant active engines).