Author Topic: Reverb just about audible playing midi file  (Read 1818 times)

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #25 on: 3 Mar '22 - 12:23 »
It's also worth considering that Roland SC-VA is not the same as Roland VSC. So besides the same soundfonts you should also use the same emulation you compare the results to.

Do you happen to know which of VSC and SC-VA has the more accurate reverb compared to the SC-55 hardware that most GS MIDI files were probably created with?

Anyway here is a link to download an extract of my soundfont that you can use to double check the resulting sound from your side.
The soundfont contains only presets for previous sent song.

https://we.tl/t-0meFrLKXuj

Ah! I see that soundfont is adding quite a bit of reverb to the instruments (up to 28%), so that probably explains the excessive reverb. BASSMIDI includes a BASS_MIDI_FONT_NOFX option to ignore a soundfont's reverb/chorus values. Does VMS present that option to the user? If so, please give it a try.

I'm thinking of adding another option to use the soundfont's reverb/chorus values as minimums, ie. it'll use the higher of the soundfont and MIDI values instead of summing them.

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #26 on: 3 Mar '22 - 13:46 »
Ah! I see that soundfont is adding quite a bit of reverb to the instruments (up to 28%), so that probably explains the excessive reverb.
That's may be to compensate the lack of reverb in the previous versions of bassmidi.

BASSMIDI includes a BASS_MIDI_FONT_NOFX option to ignore a soundfont's reverb/chorus values. Does VMS present that option to the user? If so, please give it a try.

There is an option in the Option tab of VMS -> MIDI Synth -> Disable MIDI efx (sustain, reverb)  (see attached picture)
but when checking it the sound is dry.
Do you refer at that option?

Falcosoft

  • Posts: 114
Re: Reverb just about audible playing midi file
« Reply #27 on: 3 Mar '22 - 14:13 »
There is an option in the Option tab of VMS -> MIDI Synth -> Disable MIDI efx (sustain, reverb)  (see attached picture)
but when checking it the sound is dry.
Do you refer at that option?
No, that's a different option (BASS_MIDI_NOFX) that fully disables effect processing.

Do you happen to know which of VSC and SC-VA has the more accurate reverb compared to the SC-55 hardware that most GS MIDI files were probably created with?
It's important to note that non-patched version 1.60 of Virtual Sound Canvas does not handle SysEx messages at all. It's easy to detect since you cannot even change between GS and GM2 modes by sending the corresponding SysEx reset messages. So it is less than perfect to test different reverb settings.
To this date SC-VA is the most accurate 'classic' Roland synth emulator but it emulates 99% accurately the SC-8820.  Both SC-8820 and SC-VA can be switched to the more classic SC-88 and SC-55 modes but these modes are not the same as the real hardware.
But in my humble opinion still SC-VA is the best emulator option to compare any GS specific sounds/features currently.   
 


Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #28 on: 3 Mar '22 - 15:43 »
I'm using VSC 3.23. It does support sysex messages (can hear/see the effect of them), but apparently not the PRE-LPF (40 01 32) or PREDELAY (40 01 37) reverb parameters.

I'll have a look at SC-VA to see what it's doing differently.

Falcosoft

  • Posts: 114
Re: Reverb just about audible playing midi file
« Reply #29 on: 3 Mar '22 - 16:27 »
I'm using VSC 3.23. It does support sysex messages (can hear/see the effect of them), but apparently not the PRE-LPF (40 01 32) or PREDELAY (40 01 37) reverb parameters.

I'll have a look at SC-VA to see what it's doing differently.

Yeah, then your are using the latest 'driver' version. I was referring to the latest VSTi version.
BTW, It's rather hard to get a legal trial SC-VA version nowadays since Roland is actively promoting only the cloud version. But the offline trial version can still be downloaded from Roland:
https://static.roland.com/assets/media/zip/scva_win_trial.zip

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #30 on: 4 Mar '22 - 14:41 »
Ah! I see that soundfont is adding quite a bit of reverb to the instruments (up to 28%), so that probably explains the excessive reverb.
That's may be to compensate the lack of reverb in the previous versions of bassmidi.

BASSMIDI includes a BASS_MIDI_FONT_NOFX option to ignore a soundfont's reverb/chorus values. Does VMS present that option to the user? If so, please give it a try.

Here's a modified version of the MIDITEST example that changes the "Reverb & Chorus" switch to toggle the BASS_MIDI_FONT_NOFX option on the sounfont, so you can check what difference it makes:

   www.un4seen.com/stuff/miditest64-sfx.exe

Note a setting change takes effect on subsequently played notes, not currently playing notes, so you may need to wait a bit for it to fully take effect (ie. for current notes to be released). Or seek to force a reset.

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #31 on: 5 Mar '22 - 11:10 »
I have tested miditest64-sfx.exe playing some songs. There is a little difference checking/unchecking "Reverb & Chorus" option: when checked there is a bit more reverb and the sound seems louder.
In my opinion Roland devices like SC 88/880/8850 or SC-VA are standard de facto for MIDI files production so virtual synths and soundfonts should emulate or enhance that kind of sound.
I hope you have found SC-VA so that you can make all the test by yourself.

Falcosoft

  • Posts: 114
Re: Reverb just about audible playing midi file
« Reply #32 on: 5 Mar '22 - 12:04 »
...
In my opinion Roland devices like SC 88/880/8850 or SC-VA are standard de facto for MIDI files production so virtual synths and soundfonts should emulate or enhance that kind of sound.
...

I only partly agree. For mimicking Roland sound we have SC-VA, VSC. For XG sound we have S-YXG50. But to emulate early Creative SB HW Soundfont synths (AWE, Live, Audigy) we only have SF2 soft synths.
SF2 soft synths never can achieve the perfect emulation of Roland or Yamaha gear. But they can emulate Creative SB synths perfectly if they want. So I strongly think that preserving Creative SB compatibility is at least as (if not more) important as mimicking Roland/Yamaha features.
If you have to decide how a preset/instrument in an SF2 file should behave your best help is the SF2 specification from Creative and your best reference is a Creative HW synth.
Roland and Yamaha do not even know or care that SF2 soundfont as a technology exists at all...
« Last Edit: 5 Mar '22 - 12:21 by Falcosoft »

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #33 on: 6 Mar '22 - 10:18 »
Just a couple of considerations.
Our point is reverb level/type when playing MIDI files.
I have never own a Sound Blaster card but here I can consider it like a SF.
When playing a midi file, bassmidi is responsible for correctly translating midi message so that the "sound engine" (SF o sound card) can render the sound.
A SF is only partly responsible for reverb level/type; it mainly depends on the midi file msgs (sysex, controllers, NRPN).
In the past years, midi file producers have taken existing midi devices as a model for their production. In my experience I noted that there a lot of midi files that have been made "thinking" they would have been played with Roland devices. You can determine that because those midi files contain sysex msgs by Roland. There are also a lot of midi files for Yamaha devices but, in my "world", they are less than Roland.
I know we never could get the same behavior of a Roland or Yamaha device; we should approach to emulate the device that better sound wiht existing midi files.

Falcosoft

  • Posts: 114
Re: Reverb just about audible playing midi file
« Reply #34 on: 7 Mar '22 - 07:52 »
Just a couple of considerations.
Our point is reverb level/type when playing MIDI files.
I have never own a Sound Blaster card but here I can consider it like a SF.
When playing a midi file, bassmidi is responsible for correctly translating midi message so that the "sound engine" (SF o sound card) can render the sound.
A SF is only partly responsible for reverb level/type; it mainly depends on the midi file msgs (sysex, controllers, NRPN).
In the past years, midi file producers have taken existing midi devices as a model for their production. In my experience I noted that there a lot of midi files that have been made "thinking" they would have been played with Roland devices. You can determine that because those midi files contain sysex msgs by Roland. There are also a lot of midi files for Yamaha devices but, in my "world", they are less than Roland.
I know we never could get the same behavior of a Roland or Yamaha device; we should approach to emulate the device that better sound wiht existing midi files.
Yeah, I was not talking about reverb related problems primarily. I was rather talking about the general 'always follow the Roland way' approach in case of BassMidi/SF2 synths.
In my humble opinion GS related features (Controllers, NRPNs etc.) should be enabled only when a GS Reset SysEx is sent by a Midi file or Bassmidi has been set to GS mode explicitly by using  MIDI_SYSTEM_GS. (BTW, most Roland hardware do the same: they disable GS specific controllers, NRPN's in GM mode.)
And in case of MIDI_SYSTEM_DEFAULT (and/or GM) mode of Bassmidi at least the defaults should be more Creative compatible. E.g. the GS specific controllers and NRPNs that are active all the time independently from the active mode of Bassmidi can cause many different issues that would be easy to cure if they were disabled in default or GM mode. I think you remember the 'wavy vibrato' problem.
But here is another one related to decay time (CC# 75):
https://coolsoft.altervista.org/en/forum/thread/1009

« Last Edit: 7 Mar '22 - 08:02 by Falcosoft »

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #35 on: 7 Mar '22 - 08:43 »
I agree, bassmidi should distinguish when in GM mode by "filtering" what is not GM stuff. On the other hand, MIDI files should contain GS commands only if GS mode is set and viceversa.

...
And in case of MIDI_SYSTEM_DEFAULT (and/or GM) mode of Bassmidi at least the defaults should be more Creative compatible.
...
In my way of see, Creative is not strictly related to MIDI specifications/standard; it's related to SF specifications.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #36 on: 8 Mar '22 - 17:34 »
But here is another one related to decay time (CC# 75):
https://coolsoft.altervista.org/en/forum/thread/1009

It looks like CC75 is probably used for some custom purpose in that MIDI file (it's all very low values). Here's a BASSMIDI update that will ignore CC71-78 when in GM1 mode (CC0/32 are already ignored too):

   www.un4seen.com/stuff/bassmidi.zip

No controllers are ignored in the other modes, including the default mode.

This update also includes some reverb tweaks following testing with SC-VA (it turns out that its reverb implementation is quite different to VSC). The update should match the SC-VA reverb times and predelays, and pre-LPF approximately. The REVERB PREDELAY sysex handling has also been corrected and re-enabled, and the per-drum reverb levels tweaked. The overall reverb levels are unchanged so far.

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #37 on: 9 Mar '22 - 08:48 »
I have played SILPGM.MID by my side:
1) via VMS, previous bassmidi version and my SF: channel 3 synth bass2 is a little cut but audible, channel 5 koto is totally cut

2) via VMS, latest bassmidi version 2.4.13.38 and my SF: no problem

3) via SC-VA: no problem

4) SLIPGM.mid modified with GS reset via SC-VA: no problem

5) via VMS, latest bassmidi version 2.4.13.38 and my SF and SLIPGM.mid modified with GS reset: channel 3 synth bass2 is a little cut but audible, channel 5 koto is totally cut

My considerations:
CC#75 is too much inluencing the sound while decay time is only one of four parts of the sound envelope. CC#75 should reduce only decay time, not the whole time of the playing note.
Filtering out cc#75 when in GM1 mode is a "provisional" and/or partly way of solving the problem that probably will be met in the future.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #38 on: 10 Mar '22 - 17:13 »
CC75 does already only affect the decay phase. In your case, it could be that the soundfont's Koto preset has no attack or hold phase and no sustain? That would make the decay phase the entire envelope. Note that if a key is released before the decay phase starts then the decay phase is skipped and it goes straight to the release phase, ie. CC75 has no effect then.

I tried playing the Koto on SC-VA with CC75 set to 0, and the sound stopped abruptly after 220ms (presumably the end of the hold phase), but not if the key was released before then (because the decay phase was skipped).

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #39 on: 10 Mar '22 - 17:46 »
Ian,
I don't know how/where investigate my koto preset to undestand how long the ADSR phases are.
So please have a look at my koto preset attached and let me know.
Thank you.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #40 on: 11 Mar '22 - 15:07 »
That Koto preset indeed has no attack or hold phase. If you're using Polyphone, the volume envelope is in the "Vol env ..." settings. It also has a graphical envelope view to see what the envelope looks like. You can try changing the hold phase length to 0.22 if you want to match SC-VA.

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #41 on: 13 Mar '22 - 12:51 »
Thank you for your indications.
I modified my koto instrument and now it is perfectly audible.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #42 on: 17 Mar '22 - 17:54 »
Here's another reverb tweak update:

   www.un4seen.com/stuff/bassmidi.zip

The GS reverb levels are lowered, but the "HALL 1" level is raised above the others like it is in SC-VA (VSC doesn't do that but Yamaha's GS emulation does so I've assumed the majority are correct). The XG reverbs have also been tweaked a bit but the levels are about the same as in the previous update, so higher than GS now (Yamaha's reverb is louder than Roland's). It varies across the reverb types but on average BASSMIDI's reverb levels are now around 4dB lower than Roland's and Yamaha's in my measurements. The reverb times have also been shortened slightly, as I noticed they were a bit too long.

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #43 on: 18 Mar '22 - 11:52 »
I have played some songs containing different reverb types. My MIDI files and so my tests are mainly in GS mode.
Surely the reverb level in this latest version of BASSMIDI is lower than previous versions.
I also compared this latest version with the official 2.4.13.16 in VMS and I confirm that the reverb level is a bit louder.
Comparing this latest version with SC-VA I can say that the reverb level is quite similar to SC-VA.
Definitely I prefer this latest version of BASSMIDI, also because I like a more dry sound than reverby one.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #44 on: 22 Mar '22 - 16:33 »
Yep, I think the GS reverb levels sound pretty good now. But I think the consistency with the Roland/Yamaha levels across the reverb types can be tweaked a bit more, so here's another update for that:

   www.un4seen.com/stuff/bassmidi.zip

The reverb levels should now be approximately 3dB below the Roland/Yamaha levels across all reverb types. This is hopefully the final reverb tweak needed :)

Falcosoft

  • Posts: 114
Re: Reverb just about audible playing midi file
« Reply #45 on: 22 Mar '22 - 21:45 »
I can also confirm that (from my point of view) reverb levels are back to "normal" and reverb overall sounds pretty good so I could remove the BASS_ATTRIB_MIDI_REVERB to 66% call.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #46 on: 21 Apr '22 - 15:34 »
I've been tweaking the reverb a bit more lately. Not just the levels but the entire algorithm, so that it should generally sound better, eg. remove ringing/resonance that was present in some cases. Here's the update:

   www.un4seen.com/stuff/bassmidi.zip

As I say, it should generally sound better than before but please let me know if you find any cases where it's actually worse.

syryo

  • Posts: 28
Re: Reverb just about audible playing midi file
« Reply #47 on: 26 Apr '22 - 17:09 »
I have a had a look to the latest version of bassmidi.dll and I think it sounds better than the previous, reverb is deeper, more spatial, so I prefer it.

ex-driver

  • Posts: 7
Re: Reverb just about audible playing midi file
« Reply #48 on: 3 May '22 - 22:05 »
After VMS (Virtual MIDI Synth) released the 2.4.13.42 Update and here the 2.4.14.0 i got 2 Problems now. The first to this thread: Some MIDIs now ignore reverb settings level in VMS Settings mode even i set it to 0% with override sysex or not. These MIDIS sounds like reverb level 100%now all the time. Is this VMS application Problem that the controllers are broken?

The other thing is. After Update VMS crashes all the time i apply changes after 2 or 3 time it closed itself. If i replace it with the older one 2.4.13.0 its fine or 2.4.13.16 (modulation fix). VMS problem too?. I reported it there but no answer. Don't know if Claudio is angry about me  ??? At the Moment i had to go back to the older Version at the Moment :(. greetings.

i can send u a test midi file  where it ignores the reverb level settings. I used winamp and windows media player.

Ian @ un4seen

  • Administrator
  • Posts: 24427
Re: Reverb just about audible playing midi file
« Reply #49 on: 4 May '22 - 12:36 »
I'm unable to reproduce the problem when playing that MIDI file with the pre-compiled MIDITEST.EXE example included in the BASSMIDI package (C\BIN folder). Please see if you can reproduce it there. If you can then please provide a dump file from that crash, or otherwise one from the VMS crash. Make sure you're using the latest (2.4.14) BASSMIDI.DLL in either case. You can make Windows generate dump files automatically by applying this "localdumps-full" registry entry:

   www.un4seen.com/stuff/localdumps.zip

Windows will then generate a dump file in "%LOCALAPPDATA%\CrashDumps" whenever a crash occurs. When you've got a dump file, you can upload it here:

   ftp.un4seen.com/incoming/

You can use the "localdumps-off" registry file to disable the automatic dump file generation afterwards.