Author Topic: NRPN Support  (Read 2943 times)

klerg

  • Posts: 34
Re: NRPN Support
« Reply #25 on: 14 Sep '23 - 16:28 »
I was just wondering is any way to get BASSMIDI's NRPN up to 6.3 octaves and what will that do ? If an AWE32 NRPN cutoff is 500Hz can the soundfont's cutoff not be the same or will it be different, and if so, how ? Does an AWE32 NRPN cutoff of 100 to 400Hz going to be 500Hz when converted too ? Is BASSMIDI's NRPN cutoff not relative to the AWE32 NRPN cutoff as well ? And is the AWE32 NRPN cutoff the same thing as the soundfont's cutoff ?


Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #26 on: 14 Sep '23 - 18:02 »
I was just wondering is any way to get BASSMIDI's NRPN up to 6.3 octaves and what will that do ?

Not without affecting NRPN0120/CC74 events, unfortunately. Remember that the BASSMIDI update in this thread converts the AWE32 NRPN cutoff events to NRPN0120/CC74 events (which were already supported by BASSMIDI). That means it can't exceed the limits of that (eg. 4 octaves) and changing the limits would affect NRPN0120/CC74 events too.

If an AWE32 NRPN cutoff is 500Hz can the soundfont's cutoff not be the same or will it be different, and if so, how ? Does an AWE32 NRPN cutoff of 100 to 400Hz going to be 500Hz when converted too ? Is BASSMIDI's NRPN cutoff not relative to the AWE32 NRPN cutoff as well ? And is the AWE32 NRPN cutoff the same thing as the soundfont's cutoff ?

The AWE32 NRPN cutoff normally overrides/replaces the soundfont's cutoff (ie. it's absolute), but not in BASSMIDI because it's converted to an NRPN0120/CC74 event, which is added to soundfont's cutoff (ie. it's relative). That conversion assumes the soundfont cutoff is 8000Hz/off (ie. the new event is relative to 8000), and if that assumption is correct then the conversion should be accurate down to 500Hz, but anything lower (eg. 100-400Hz) will also get converted to 500Hz.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #27 on: 15 Sep '23 - 15:53 »
Not without affecting NRPN0120/CC74 events, unfortunately. Remember that the BASSMIDI update in this thread converts the AWE32 NRPN cutoff events to NRPN0120/CC74 events (which were already supported by BASSMIDI). That means it can't exceed the limits of that (eg. 4 octaves) and changing the limits would affect NRPN0120/CC74 events too.


What's wrong if it affects the NRPN0120/CC74 events anyway? So the BASSMIDI update in this thread does not support AWE32 NRPN's it converts them to NRPN0120/CC74 events then. Yes, at this point it seems like a workaround that is not the same as AWE32 NRPN. Everything changes when the AWE32 NRPN's are converted to new or different events.

The AWE32 NRPN cutoff normally overrides/replaces the soundfont's cutoff (ie. it's absolute), but not in BASSMIDI because it's converted to an NRPN0120/CC74 event, which is added to soundfont's cutoff (ie. it's relative). That conversion assumes the soundfont cutoff is 8000Hz/off (ie. the new event is relative to 8000), and if that assumption is correct then the conversion should be accurate down to 500Hz, but anything lower (eg. 100-400Hz) will also get converted to 500Hz.


Yes, that is how the AWE32 NRPN cutoff and other NRPN's work for the most part it is absolute. I wish there was some way for BASSMIDI to not add the NRPN0120/CC74 event to the soundfont's cutoff as that ends up increasing the filter amount if it is less than 8000Hz, is that right ? I see the conversion is only accurate if the soundfont's cutoff is off or at 8000Hz, but many presets or patches are much lower than that. I think that Nervous Filter goes down to 100Hz and maybe less.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #28 on: 19 Sep '23 - 14:05 »
What's wrong if it affects the NRPN0120/CC74 events anyway? Is some way for BASSMIDI to not add the NRPN0120/CC74 event to the soundfont's cutoff as that ends up increasing the filter amount if it is less than 8000Hz, is that right ? How can BASSMIDI fully support AWE32 NRPN's and not just convert them to NRPN0120/CC74 or other GM2 common controller ?

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #29 on: 19 Sep '23 - 15:28 »
What's wrong if it affects the NRPN0120/CC74 events anyway?

Any changes to NRPN0120/CC74 processing would mean that MIDI files that use those events would sound different to now. Such a change isn't always a bad thing if it's an improvement, but I don't think a rare AWE32 NRPN would justify it, especially as it still wouldn't be a totally accurate conversion (due to the absolute/relative difference).

Is some way for BASSMIDI to not add the NRPN0120/CC74 event to the soundfont's cutoff as that ends up increasing the filter amount if it is less than 8000Hz, is that right ?

They can increase or decrease the cutoff. Values below 64 = decrease, values above 64 = increase. BASSMIDI never converts AWE32 NRPN to NRPN0120/CC74 values above 64 because the assumed default of 8000 Hz is the maximum.

How can BASSMIDI fully support AWE32 NRPN's and not just convert them to NRPN0120/CC74 or other GM2 common controller ?

It would need a new/separate event implemented in BASSMIDI for it. I'm just not sure the AWE32 NRPN is common enough to warrant that?

As I mentioned when posting the BASSMIDI update, the AWE32 NRPN are unlikely to sound exactly as intended, but better than nothing.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #30 on: 20 Sep '23 - 08:05 »

Any changes to NRPN0120/CC74 processing would mean that MIDI files that use those events would sound different to now. Such a change isn't always a bad thing if it's an improvement, but I don't think a rare AWE32 NRPN would justify it, especially as it still wouldn't be a totally accurate conversion (due to the absolute/relative difference).

Well it would be nice to hear how different the MIDI files that use NRPN0120/CC74 sound but I'd rather not mess with it. Yes it is hard to tell if it will be an improvement without hearing anything. Yes, same for me too, and even moreso when you factor in the whole absolute vs. relative situation. It is best to leave the NRPN0120/CC74 processing alone.

They can increase or decrease the cutoff. Values below 64 = decrease, values above 64 = increase. BASSMIDI never converts AWE32 NRPN to NRPN0120/CC74 values above 64 because the assumed default of 8000 Hz is the maximum.

It is good to know can decrease the cutoff too. Nice to find out that how the values work as well. Yes that makes sense if 64 is the maximum default of 8000 Hz then no need to convert anything and it will all stay the same.

It would need a new/separate event implemented in BASSMIDI for it. I'm just not sure the AWE32 NRPN is common enough to warrant that?

As I mentioned when posting the BASSMIDI update, the AWE32 NRPN are unlikely to sound exactly as intended, but better than nothing.

Yes and the new event will need to follow the spec sheets for AWE32 NRPN. Yes it is common enough do you need any help from me to do this ?

Sure, and as I mentioned when you posted the BASSMIDI, it sounds not bad and better than nothing. But I expected it to be closer to SB HW.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #31 on: 22 Sep '23 - 08:02 »
How hard is it to add a new event in BASSMIDI to fully support AWE32 NRPN's and is any way to help with that ?

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #32 on: 22 Sep '23 - 14:38 »
Yes and the new event will need to follow the spec sheets for AWE32 NRPN. Yes it is common enough...

But is it? I don't recall seeing any MIDI files use AWE32 NRPN, other than the "The Nervous Filter" file you provided in this thread. Even none of the example files on the AWE32 installation CD (or SBLive/Audigy/X-Fi CDs) use those NRPN. Have you seen other MIDI files use them, and if so, where?

klerg

  • Posts: 34
Re: NRPN Support
« Reply #33 on: 23 Sep '23 - 06:21 »
But is it? I don't recall seeing any MIDI files use AWE32 NRPN, other than the "The Nervous Filter" file you provided in this thread. Even none of the example files on the AWE32 installation CD (or SBLive/Audigy/X-Fi CDs) use those NRPN. Have you seen other MIDI files use them, and if so, where?

I’m not sure. But why does it matter how common the AWE32 NRPN are anyways ? The example MIDI files on SB Live/Audigy/X-Fi CD’s only covers pop music. If you want to make EDM and similar styles with soundfonts then AWE32 NRPN support is needed. If I find one more MIDI file, will that be enough ?
« Last Edit: 24 Sep '23 - 02:34 by klerg »

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #34 on: 25 Sep '23 - 18:09 »
That sounds like you want the AWE32 NRPN support for use in your own stuff rather than playing existing stuff? If so, wouldn't any filter control method work for you, ie. it doesn't specifically need to be AWE32 NRPN? Perhaps you could use the standard CC74/71 (for cutoff/resonance) instead?

klerg

  • Posts: 34
Re: NRPN Support
« Reply #35 on: 27 Sep '23 - 19:29 »
That sounds like you want the AWE32 NRPN support for use in your own stuff rather than playing existing stuff? If so, wouldn't any filter control method work for you, ie. it doesn't specifically need to be AWE32 NRPN? Perhaps you could use the standard CC74/71 (for cutoff/resonance) instead?

Yes I need AWE32 NRPN support for my own stuff, that is EDM, and playing existing stuff, it is both really. I do not think any filter control will work for me, it will be best if that is the AWE32 NRPN. No, as CC74/CC71 filter is 'off' and 'light' as heard with updated bassmidi.dll in the Nervous Filter MIDI.

How to add a new event in BASSMIDI to fully support AWE32 NRPN's ?

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #36 on: 28 Sep '23 - 16:02 »
I checked it with absolute filter cutoffs and the "The Nervous Filter" file still didn't sound the same as the recording that Falcosoft posted earlier (using the same soundfont), so it would need more changes/additions than just that. Note the file also uses AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time), which aren't supported by the BASSMIDI update, so that's probably at least part of the difference. But I also tried playing the file on an SB X-Fi Titanium card, and that didn't sound quite like Falcosoft's recording either, so I would need to dig out some even older SB hardware for reference. From previous experience, it could require a lot of time and effort to get right, for something that it seems hardly anyone would use, so I'm afraid there are no plans to add proper AWE32 NRPN emulation at this time.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #37 on: 30 Sep '23 - 15:11 »
How were you able to check with absolute filter cutoffs you had said BASSMIDI only supports relative ? But did it sound any better than the updated bassmidi.dll in this thread ? I hope it does not need too many changes/additions, but I have no clue. I see is any way to get AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) working in a newer bassmidi.dll ? Yes I think it will make a huge difference. Well the SB X-Fi Titanium uses EMU20K2 vs. EMU20K1 on the X-Fi XtremeMusic which is what I have and will try soon. Yes, the Audigy 2 ZS, which I also have may be the newest card that supports the AWE32 NRPN's. I see you have tried this before, as I mentioned it is too hard to fully match the AWE32 NRPN's, and I'm not the only person who uses it too. Anyone who is into EDM or electronica music needs this. Let's try better AWE32 NRPN emulation, tell me how I can help and will do my best to chip in.

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #38 on: 2 Oct '23 - 17:39 »
How were you able to check with absolute filter cutoffs you had said BASSMIDI only supports relative ? But did it sound any better than the updated bassmidi.dll in this thread ?

I added some absoluate filter cutoff value support for AWE32 NRPN 21 just to see how it sounded, and the result is actually further from Falcosoft's recording than the update posted in this thread when playing the "The Nervous Filter" file. Note the preset used by that file has a default cutoff of around 600 Hz in Falcosoft's soundfont, not the 8000 Hz assumed by the update. So the update would actually be applying a much lower cutoff than specified by the AWE32 NRPN, ie. down to 37.5 Hz (4 octaves below 600) rather than 500 Hz. The preset also has an envelope that raises the cutoff by around 4000 Hz. The AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) would be changing that amount.

Anyone who is into EDM or electronica music needs this. Let's try better AWE32 NRPN emulation, tell me how I can help and will do my best to chip in.

I really don't think many people are going to be using AWE32 NRPN these days. Is AWE32 NRPN supported by anything other than old SB soundcards?

klerg

  • Posts: 34
Re: NRPN Support
« Reply #39 on: 4 Oct '23 - 15:07 »
I added some absoluate filter cutoff value support for AWE32 NRPN 21 just to see how it sounded, and the result is actually further from Falcosoft's recording than the update posted in this thread when playing the "The Nervous Filter" file. Note the preset used by that file has a default cutoff of around 600 Hz in Falcosoft's soundfont, not the 8000 Hz assumed by the update. So the update would actually be applying a much lower cutoff than specified by the AWE32 NRPN, ie. down to 37.5 Hz (4 octaves below 600) rather than 500 Hz. The preset also has an envelope that raises the cutoff by around 4000 Hz. The AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) would be changing that amount.

Nice that you were able to add absolute filter cutoff value support for AWE32 NRPN 21, but why did the end result sound worse than the updated bassmidi.dll posted in this thread ? Does that mean absolute vs. relative is not really a big deal ? Well I thought the updated bassmidi.dll only works if the cutoff is off or at 8000 Hz. I see so why can the filter barely be heard if the cutoff is at 37.5 Hz ? I may be lost on this, but hope you can clear things up for me here. Yes this seems to be the piece of the puzzle that is missing if you somehow put AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) it will sound much closer to the SB hardware. I'm not sure if the soundfont makes a huge difference. To me, the soundfont does not negate the overall effect of the AWE32 NRPNs, can AWE32 NRPN 7 (Envelope 1 decay time) be added too ?

I really don't think many people are going to be using AWE32 NRPN these days. Is AWE32 NRPN supported by anything other than old SB soundcards?

As you know I'm not the only person in the world that uses the AWE32 NRPN. Well I think the X-Fi XtremeMusic works with it will know soon hopefully.

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #40 on: 6 Oct '23 - 12:37 »
...but why did the end result sound worse than the updated bassmidi.dll posted in this thread ?

I haven't checked to confirm it, but it's likely due to the AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) that are unsupported. If you would like to confirm what effect those NRPN are having, you could try removing them from the file and then playing it on your SB soundcard.

Anyway, BASSMIDI has been around since 2006, and the only other AWE32 NRPN request I can find in that time is one from 2011, funnily enough referring to the same "The Nervous Filter" file:

   www.un4seen.com/forum/?topic=12563

So AWE32 NRPN really doesn't seem to be much in demand, and not worth spending a lot of time on. Sorry. Perhaps you could just play/record your stuff on your SB soundcard? You can capture the sound from the soundcard's "What U Hear" device.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #41 on: 7 Oct '23 - 06:45 »
I haven't checked to confirm it, but it's likely due to the AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) that are unsupported. If you would like to confirm what effect those NRPN are having, you could try removing them from the file and then playing it on your SB soundcard.

Anyway, BASSMIDI has been around since 2006, and the only other AWE32 NRPN request I can find in that time is one from 2011, funnily enough referring to the same "The Nervous Filter" file:

   www.un4seen.com/forum/?topic=12563

So AWE32 NRPN really doesn't seem to be much in demand, and not worth spending a lot of time on. Sorry. Perhaps you could just play/record your stuff on your SB soundcard? You can capture the sound from the soundcard's "What U Hear" device.

But I thought the updated bassmidi.dll in this thread also is unable to support AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) is that right ? Yes, if I find a way to delete only select NRPN, and not all of them, will try that for sure and it will be interesting to hear how it is going to sound.

Also, why can the filter barely be heard if the cutoff is at 37.5 Hz ? And can AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) be added to bassmidi.dll ?

That is quite a long time and is almost twenty years now. I also came across this thread and was on my way to post here, but you beat me to it looks like. Too bad it used the same "The Nervous Filter" MIDI

Yes, that does not mean AWE32 NRPN is no good but it is hard to use, yes I doubt it will take a very long time. Sure. The point is to not need any SB soundcard but just software. That is true but it not going to help get AWE32 NRPN working.

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #42 on: 9 Oct '23 - 12:24 »
Also, why can the filter barely be heard if the cutoff is at 37.5 Hz ?

If you're using Falcosoft's soundfont then the preset also has an envelope that raises the cutoff by up to 4000 Hz, meaning the final cutoff may be 4037.5 Hz. If you would like to see what exactly a soundfont is doing (and perhaps change it), you can do so by loading it into a soundfont editor, eg. Vienna Soundfont Studio or Polyphone.

And can AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) be added to bassmidi.dll ?

Not at this time, sorry. If they're added, next you may ask for some other AWE32 NRPN to be added, so I'd rather just not step any further onto that slippery slope. Perhaps that'll change in future if AWE32 NRPN suddenly becomes popular to make supporting it more worthwhile.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #43 on: 11 Oct '23 - 16:01 »
If you're using Falcosoft's soundfont then the preset also has an envelope that raises the cutoff by up to 4000 Hz, meaning the final cutoff may be 4037.5 Hz. If you would like to see what exactly a soundfont is doing (and perhaps change it), you can do so by loading it into a soundfont editor, eg. Vienna Soundfont Studio or Polyphone.

Yes, for that preset the Falcosoft soundfont is using the same one from the Creative Labs 4 MB GM soundfont. If the final cutoff is at 4037.5 Hz then does the SB hardware keep it at 37.5 Hz so that the filter can be heard ? Sure, I have Polyphone, Viena SoundFont Editor, and Vienna Soundfont Studio, but that can only be used with an SB soundcard.

Not at this time, sorry. If they're added, next you may ask for some other AWE32 NRPN to be added, so I'd rather just not step any further onto that slippery slope. Perhaps that'll change in future if AWE32 NRPN suddenly becomes popular to make supporting it more worthwhile.


I see that is too bad. No, as I mentioned from the outset, if full AWE32 NRPN support is not possible then if it sounds very close that will be fine so no slippery slope from me. Well AWE32 NRPN may never get popular but what is your benchmark to know that it is in high demand ?

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #44 on: 12 Oct '23 - 13:15 »
If the final cutoff is at 4037.5 Hz then does the SB hardware keep it at 37.5 Hz so that the filter can be heard ?

Note that 4037.5 Hz cutoff example only applies to BASSMIDI (due to its absolute/relative conversion of AWE32 NRPN 21), and it would actually be even higher on SB hardware according to the spec. But the AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) are modifying the envelope, so that it doesn't necessarily raise the cutoff by 4000 Hz and/or it falls back down at a different rate.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #45 on: 14 Oct '23 - 16:07 »
Note that 4037.5 Hz cutoff example only applies to BASSMIDI (due to its absolute/relative conversion of AWE32 NRPN 21), and it would actually be even higher on SB hardware according to the spec. But the AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) are modifying the envelope, so that it doesn't necessarily raise the cutoff by 4000 Hz and/or it falls back down at a different rate.

Yes it makes sense that the absolute to relative conversion of BASSMIDI puts the cutoff at 4037.5 Hz. I take that it goes up to 4579 Hz on the SB hardware given the settings of the preset in the soundfont. So, now we know AWE32 NRPN 21 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) is what keeps the filter at 37.5 Hz or how to find out what the different rate is going to be anyway and in what way can you tell AWE32 NRPN is 'popular' ?

klerg

  • Posts: 34
Re: NRPN Support
« Reply #46 on: 17 Oct '23 - 18:37 »
How to know or find out at what rate AWE32 NRPN 24 (Envelope 1 to Filter Cutoff) and AWE32 NRPN 7 (Envelope 1 decay time) alters the cutoff ?

Ian @ un4seen

  • Administrator
  • Posts: 25735
Re: NRPN Support
« Reply #47 on: 18 Oct '23 - 12:13 »
The PDF that you linked earlier describes the effect of those NRPN. If you want to know about the "The Nervous Filter" file specifically, then you will need to check the NRPN values used in it (note they are used many times with varying values) and translate them using the info from the PDF.

klerg

  • Posts: 34
Re: NRPN Support
« Reply #48 on: 19 Oct '23 - 07:59 »
Sure but that link you sent before the PDF explains it a bit better. Yes, I'm still stuck on "The Nervous Filter" MIDI for now, and just started to look at the NRPN values inside this (true and that is why it takes some time to see it all) So far, I'm not able to tell anything of note, what am I missing ?

klerg

  • Posts: 34
Re: NRPN Support
« Reply #49 on: 24 Oct '23 - 08:13 »
How to know that AWE32 NRPN is in high demand so BASSMIDI can get full support ?