Closed jpcima closed 6 years ago
I think, I must to drop an error on attempt to access out of range (That because of empty array of instruments), or initialize dummy GM-set on loading to prevent possible crashes in future. I'll need to apply same to ADLMIDI as you will take same crash when you will build ADLMIDI with disabled embedded banks macro and when you will not give a custom bank to it.
I agree.
Can OPNMIDI also have its embedded bank? forgot to ask
I think, a good idea to provide at least one embedded bank just for a convenience, even I'll include super-basic GM bank (for now, I working on XG bank which is incomplete yet)
Trivia: as YM2612 was never used for MIDI playing, therefore was no any GM banks created, and I made it by myself from scratch.
I think, a good idea to provide at least one embedded bank just for a convenience, even I'll include super-basic GM bank (for now, I working on XG bank which is incomplete yet)
sorry for self-promotion, but I also made a GM bank for OPN2 (with partial, incomplete GS support). If you would be interested, you can use it - YM2612.zip
I tried to make it sound as realistic as it's possible, so if you plan to have embedded banks in OPNMIDI you can give it a shot ;)
sorry for self-promotion, but I also made a GM bank for OPN2 (with partial, incomplete GS support). If you would be interested, you can use it - YM2612.zip
Nice bank! I have checked it out and seems some instruments are needing to be polished as there are sounding a bit incorrectly, for example, ride bell must have a longer release. Keep it up! :fox_face: :+1:
Initially I made OPNMIDI to use custom-only banks, and for now I'll put the bank into bank samples folder to allow everyone use it. I think, the embedding of banks must be optional and go while build process. Anyway, as it's not an ADLMIDI with tonn of very old banks are requiring to calculate sound delays, WOPN (and WOPL on ADLMIDI) now have those values already pre-calculated, so, is much faster to generate a database of embedded banks. And yeah, about of TR-808, I have made some experiment in my xg.wopn, take my latest version for a review :wink:
Just now I have made a fix which makes smarter management of instruments storage: it always keeps them 256 entries (full GM set), but don't clears it completely when it has less than 1024 entries. And instead to clear entire array, fills instruments with blank entries marked by "NoSound" flag.
So, when you will initialize instance and will send RT events without of bank loading, you will no more crash :wink:
No more crash confirmed. And as expected no sound either. That's fine enough for now.
Yeah, as no banks loaded, no sound is a correct behavior.
I closing this, as the trouble has been fixed and you have confirmed that it works :fox_face:
When I added OPNMIDI support in the realtime player, it would crash without warning unless a bank was loaded in its memory, which isn't very nice.
The command was
adlrt -p OPNMIDI
And the crash context