Author Topic: Midi Channel Command Depths Question  (Read 416 times)

MIDAPMI

  • Posts: 95
Midi Channel Command Depths Question
« on: 27 Oct '20 - 06:45 »
Okay, Great nice work, Actually BASSMIDI Support the midi channel command depths work?

Like:
CC10 to Pan Position %
CC91 to Reverb Mixer %
CC93 to Chorus Mixer %

I put 0 and not take effect, is for limit the reverb in instrument that will not have well sound will all.

Ian @ un4seen

  • Administrator
  • Posts: 23311
Re: Midi Channel Command Depths Question
« Reply #1 on: 27 Oct '20 - 13:21 »
How are you trying to set those things, eg. particular sysex?

Regarding CC91/93, the instrument's reverb/chorus levels (set in the soundfont) are added to the MIDI channel levels. You can disable that by using the BASS_MIDI_FONT_NOFX flag with BASS_MIDI_FontInit. The BASS_MIDI_NOFX flag can also be set on a MIDI stream to totally disable reverb/chorus.

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #2 on: 28 Oct '20 - 02:20 »
But Original soundblaster standard says that this can be controller inside from soundfont modulator-

You say the reverb that is Master Reverb, but i say the limit per instrument not per soundfont.

i read the soundblaster specs and says that is supported.

I know that instrument reverb, but the controller can be limited,

Example if i set to 500 cents when midi set the controller to 127 the reverb will be 50% instead of 100%
« Last Edit: 28 Oct '20 - 12:08 by MIDAPMI »

Ian @ un4seen

  • Administrator
  • Posts: 23311
Re: Midi Channel Command Depths Question
« Reply #3 on: 28 Oct '20 - 13:44 »
Ah, you meant the SF2 modulators. BASSMIDI doesn't currently support customisation of any CC modulators (except CC1 via sysex or MIDI_EVENT_MOD_XXX events). It always uses the default CC modulators from the SF2 spec, except the CC91/93 to Reverb/Chorus Effects Send modulators are set to 75% (not 20% because that seemed too low).

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #4 on: 28 Oct '20 - 13:50 »
sorry by the insistence but i like talk about this because is very cool. Why doesn't supported currently? is very hardest?

Ian @ un4seen

  • Administrator
  • Posts: 23311
Re: Midi Channel Command Depths Question
« Reply #5 on: 28 Oct '20 - 16:55 »
It isn't so much that it's hard to support them. It's more that each modulator source/destination pair that's supported requires some memory in the current implementation. It isn't a lot of memory for each one but it can add up when there are a lot of layers/zones, so don't want to add them needlessly.

Regarding CC modulators in particular, I'm also not sure they're a good thing. It seems to me like it should be up to the app/user (not soundfont creator) to decide if CC processing should be changed, eg. using BASS_MIDI_StreamSetFilter. Do you have an example where they're needed?

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #6 on: 29 Oct '20 - 13:37 »
The CC#7 to attenuation is because why ice-breaker.mid the sound of channel 4 is x2 of volume in original VSTI than my soundfont, i can fix. i added a 4 dB, OK. but when i play the destiny.mid the sound in the original VSTI is well but in my soundfont is very louderst. i think that is better that decide soundfont, if you say that consume all memory or etc.

I can add one per instrument with Polyphone (no is necesary to set various into instruments), and about memory, i'm playing with midiplayer of Falcosoft and only currently consumes 3.4 MB of ram.

I suppose that if depend that soundfont, the creator can measure performance of soundfont ┐True?.

Also bassmidi have the poly limit feature, i play 64 voices with below 20% Intel Celeron n2805 1400mhz in a single core test cpu usage and includes all lastest modulators that you are added. this is need also for s40 3rd edition, if beatnik is a race car bassmidi is a rocket

and cc91 cc93 and cc 10 is for limit reverb in the midis that have very high reverb in some instrument that affect the stereo.

I can't modify from software

1- Necause if the software if change the default cc#7 or any cc, will be changed in all soundfonts; If you apply this in wip of symbian 60 the sound not will be 100% OK. because have only DLS level 2 modulators.

2- If you change cc#7 in master will be changed in all instruments and i suppose that all instruments not is the same value (not was measured now, but will be measured later) because the soundfont is in version 1.1 (basic) and i making the version 2.0 finale. but i need only cc. after this i no need any others modulators. except the custom envelope shapes that not is supported by sf2 at least any revision update of soundfont in a further.

BTW!, the s30 work fine, thanks by the lindecvol flag.


and cc91 cc93 and cc 10 is for limit reverb in the midis that have very high reverb in some instrument that affect the stereo.

I can't modify from software

1- because if the software if change the default cc#7 or any cc will be changed in all soundfonts. if you apply this in wip of symbian 60 the sound not will be 100% OK. because have only dls 2 modulators.

2- if you change cc#7 in master will be changed in all instruments and i suppose that all instruments not is the same value (not is measured now but will be measured later)
« Last Edit: 29 Oct '20 - 20:56 by MIDAPMI »

Ian @ un4seen

  • Administrator
  • Posts: 23311
Re: Midi Channel Command Depths Question
« Reply #7 on: 30 Oct '20 - 13:53 »
The CC#7 to attenuation is because why ice-breaker.mid the sound of channel 4 is x2 of volume in original VSTI than my soundfont, i can fix. i added a 4 dB, OK. but when i play the destiny.mid the sound in the original VSTI is well but in my soundfont is very louderst. i think that is better that decide soundfont, if you say that consume all memory or etc.

Unless the soundfont is specifically for use with only one MIDI file, I don't think a soundfont creator should be too concerned with individual MIDI files because a tweak (especially changing standard CC processing) that makes one MIDI file sound better may make others sound worse. I think CC modification is better left to the app/user's choice.

Regarding the reverb level specifically, BASSMIDI also has a BASS_ATTRIB_MIDI_REVERB option to adjust that (no need for CC modification).

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #8 on: 31 Oct '20 - 05:32 »
The CC#7 to attenuation is because why ice-breaker.mid the sound of channel 4 is x2 of volume in original VSTI than my soundfont, i can fix. i added a 4 dB, OK. but when i play the destiny.mid the sound in the original VSTI is well but in my soundfont is very louderst. i think that is better that decide soundfont, if you say that consume all memory or etc.

Unless the soundfont is specifically for use with only one MIDI file, I don't think a soundfont creator should be too concerned with individual MIDI files because a tweak (especially changing standard CC processing) that makes one MIDI file sound better may make others sound worse. I think CC modification is better left to the app/user's choice.

Regarding the reverb level specifically, BASSMIDI also has a BASS_ATTRIB_MIDI_REVERB option to adjust that (no need for CC modification).

If the user don't like; can work the custom sounfont and remove modulators. is justly "Synthetizer Emulator". if you add the cc#7 CC10 cc91 cc93 this take effect only in futher soundfont that will be released also don't affect old because the sf2 enables this feature don't the program true?. If user don't like the settings can control manually.

That you say if you set this from program. because affect all soundfont, instruments.


MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #9 on: 3 Nov '20 - 05:51 »
You if add is great, the soundfont creator measure the soundfont perfomance and share the requeriments.

Like 3220 requires 0.4 GHz of cpu and 22,050 kHz sound at 4 bit. (original is alaw)

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #10 on: 5 Nov '20 - 07:50 »
I think that is better add it, perfomance is really affected? currently uses 42% with fluid r3 in atom 1.6

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #11 on: 25 Nov '20 - 14:26 »
The reverb that you says limit the general reverb (useful for adjust the reverb general) and the cc#7 is for limit the reverb of instrument. I think that is better get the all soundblaster controllers compatible for reach it need add cc# controller, the others has added previously. Look photos

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #12 on: 26 Nov '20 - 12:25 »

Regarding CC modulators in particular, I'm also not sure they're a good thing. It seems to me like it should be up to the app/user (not soundfont creator) to decide if CC processing should be changed, eg. using BASS_MIDI_StreamSetFilter. Do you "have an example where they're needed?"

Sorry i not readed the example that you request.

https://www.youtube.com/watch?v=2cHr3ztck3I&t=26

Here played in Synthfont (same soundfont but with cc#7 to attenuation ~ 72 concave

http://bramax-mu.ml/Demo/ice-breaker%20_synthfont.mp3

Here played in BASSMIDI (Sounds look better than SYNTHFONT anyform but above is more loud into channel 3 and 5 ).

I use midi with only cc#7 at maximum and for measure others need cc#7 to attenuation

http://bramax-mu.ml/Demo/ice-breaker-BASS.mp3

The problem is the next in the case

swimming.mid work all at 127 all instrument i measured it. Sound is 100% with a 300% more quality. but i if play the ice-breaker.mid the sound look very attenuated.

For dissmiss this i need the cc#7.

and the reverb controller and chorus i use the general reverb at 32 and i add reverb to some instruments only. This is not required currently, I had solved this.

I make ideas for improve bassmidi inside soundfont 2.4 specifications, i'm never disturb. Sorry my bad english.

My post of above have the photo of the modulator that i request


« Last Edit: 26 Nov '20 - 13:15 by MIDAPMI »

Ian @ un4seen

  • Administrator
  • Posts: 23311
Re: Midi Channel Command Depths Question
« Reply #13 on: 27 Nov '20 - 17:06 »
In that Ice-breaker.sf2 example file, I guess the modulator of interest is the "CC7 to initialAttenuation" on the "sawc4" instrument? If so, perhaps you could achieve the wanted effect by reducing the "Key Velocity to initialAttenuation" amount instead?

MIDAPMI

  • Posts: 95
Re: Midi Channel Command Depths Question
« Reply #14 on: 29 Nov '20 - 06:24 »
Thanks for you time to answer ian  ;).

If i set the key # to attenuation  cause difference on measured midis that uses the velocity to attenuation.

I'm creating a Tiny font from VSTI ~ 1 MB. I measure volumes in audacity until to match the most closer possible and very nice sound for very low hardware. like atom.

I first measure destiny because this uses all tracks at maximum cc#7 (127). This is perfect for measure key to velocity.

I maked instrument and sets the volume value. before it play on BASSMIDI.

During test this is result

Stock VSTI Sound
BASSMIDI Without key# to AttenuationBassmidi with key# to Attenuation
Channel 1. 0,0 dB.
Channel 2. -12,5 dB.
This uses Beatnik DLS Synth╣.
Channel 1. 0,0 dB
Channel 2. -15,8 dB
Modulator value : Default
Beatnik disabled.
Channel 1. 0,0
Channel 2. -12.31
Modulator value : 720cB
Beatnik╣ Mode Turn ON
Sounds looks well. 2nd channel causes good impression to channel 1.Look Better than VSTI, but channel 2 have small difference of volume in channel to 2.corrected setting 720cB and i get same value, and turned on beatnik (Noteoff delay) that is added 2 years ago. Sounds 1000% better than beatnik in resolution and perfomance.
demo http://bramax-mu.ml/Demo/Debug/0-kvfm-vsti.mp3demo http://bramax-mu.ml/Demo/Debug/1-ukv_bass.mp3demo http://bramax-mu.ml/Demo/Debug/2-measured_bass.mp3

╣ Beatnik uses by default 10ms noteoff event delay and the flags no ramping and linattmod.

Before this i goes to test ice-breaker this uses less cc#7 value, i use knob and piano keyboard.

Stock VSTIBASSMIDI*
CC#7 [127] 0,00 dB
CC#7 [64]  -5,3827 dB
CC#7 [127] 0,00 dB
CC#7 [64]  -11,70.


*Can be solved with cc#7 to attenuation modulator that is not supported actually.

« Last Edit: 30 Nov '20 - 13:53 by MIDAPMI »

Ian @ un4seen

  • Administrator
  • Posts: 23311
Re: Midi Channel Command Depths Question
« Reply #15 on: 4 Dec '20 - 17:03 »
Sorry, but there are currently no plans for MIDI CC modulator support. What is the "Beatnik Mode" that you mention? If it's a setting in some software, perhaps CC#7 value modification can be added to that (eg. using BASS_MIDI_StreamSetFilter or before calling BASS_MIDI_StreamEvent(s)), or use MIDI_EVENT_MIXLEVEL to apply a correction (instead of modifying CC#7).

MIDAPMI

  • Posts: 95
I think that you can test beatnik.

Beatnik Beatnik is same to Xpressmusic is this. https://musical-artifacts.com/artifacts/550/MSB-1.2-install.7z (Direct download)
Xpress Radio is this (only available on VSTI)  https://www.dropbox.com/s/afvv0b9c4jk1aqs/Nokia%20Audio%20Suite.zip?dl=1 (Direct download)

I think that you answer work with a general volumes. i think that not is well idea for touch the general cc#7 curve.

I can't measure 3220/6260/5070. Project will stuck into revision 1.9, the revision 2.0 will be final and will be released in a futher when bassmidi add the cc#7. i can continue work but never will be the original volumes due lack of cc#7 modulator.

The working status is from (0.x alpha to 2.0 Final) any other revision above this is requested bugs issues fixes

I excite, it's only for bassmidi improvements, remember that i interest that bassmidi win to all softsynth and more with the xpress music/radio/wap modulators requested by me.

Thanks and continue working for BASSMIDI, greetings for you good work and continue sharing with we. continue addings improvements for make a the softsynth of future. ;). I continue studing softsynths and find improvements for bass.

#Details of topic
Waiting modulators.

« Last Edit: 5 Dec '20 - 06:12 by MIDAPMI »