18 May '13 - 20:32 *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
 
   Home   Help Search Login Register  
Pages: 1 2 3 [4] 5 6 ... 34
  Reply  |  Print  
Author Topic: XMPlay MIDI plugin  (Read 222855 times)
Rich Nagel
Posts: 292


« Reply #60 on: 22 Mar '06 - 21:34 »
Reply with quoteQuote

Ok, I've added ROM detection, but I've not really tested it, so let me know if it's no good Smiley

Works perfectly! Many thanks! -:)


I guess you're comparing with SB hardware? The difference seems to be due to hardware limitations, as the Tremelo Strings should be modulating at 50hz (10x5), but it's only going at 12hz (on an Audigy2). The SF2 specs say the limit is 100hz.

Actually, I tried it on an SB16 as well as a mobo with a Crystal Media sound chip, same results.


I've now limited the LFO parameters to match the apparent SB hardware limits.

Again, works perfectly, and again, many thanks! -:) :thumbsup:


Can't say it enough times <G>, thanks again for all of your hard work on this plugin! -:) -:)
Logged
Maserati
Posts: 156


« Reply #61 on: 23 Mar '06 - 02:06 »
Reply with quoteQuote

midi's never sounded so real Smiley  Thanks!
Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #62 on: 23 Mar '06 - 13:28 »
Reply with quoteQuote

(snip cascade :p)
Oh right. That soundfont only contains extra effects banks/patches, ie. there's no bank 0. I guess it's meant to be stacked on top of a GM soundfont.

I'll accept that answer. I've settled on using the Chorium SF anyway. Wink

To help identify situations like this, I've now added missing patches to the Samples/Instruments info.
Logged
Rich Nagel
Posts: 292


« Reply #63 on: 23 Mar '06 - 16:25 »
Reply with quoteQuote

To help identify situations like this, I've now added missing patches to the Samples/Instruments info.

Excellent feature, Ian, that's really handy :thumbsup: -:)

Also, I really need to try out that "Chromium" soundfont (I'm on a lowly dialup connection), as well as comparing it to (and maybe uploading) my own largish (excellent <IMHO> <G>) custom GM compatable soundfont -:)
Logged
Rich Nagel
Posts: 292


« Reply #64 on: 24 Mar '06 - 03:48 »
Reply with quoteQuote

Small feature request: (Actually, I think that this would probably be a request for XMPlay itself, dunno if it could be added to just the MIDI plugin)

Is there any way to add more reverb beyond the 100 percent that the slider witin the main XMPlay interface allows? Just an idea, possibly an "X" sort of checkbox, something like "Reverb Times (X) 2" (which would make the slider have twice the range: 0% - 200%).

For MIDIs, this would be similar to the *extremely* higher reverb effects that the AWE/EMU8000 hardware supports (compared to the standard reverb (#91) controller), when used with the NRPN and Data (MSB and LSB) MIDI controllers that EMU hardware supports.

As an example, adding the following sequence of MIDI controllers to a MIDI that is played back on AWE/EMU8000 hardware results in an insane amount of reverb <G> (*much* higher than the standard reverb MIDI controller #91):

99 NRPN MSB = 127
98 NRPN LSB = 26 (designates EMU8000 NRPN reverb - NRPN controller #26)
6 Data MSB = 127
38 Data LSB = 127

Anyhow, some sort of "times 2" checkbox for the reverb slider in XMPlay would simulate this higher reverb effect supported by the EMU hardware's NRPN 26 reverb controller.


Also, I was wondering how the stacked soundfont support was coming along? Note that I'm not trying to rush you Ian <G>, I'm simply extremely excited about this possible feature <BG> -:) Maybe a suggestion, a dialog box similar to how the AWE32 Control Panel looks (i.e. assigning and loading SF2s into various "user banks" - banks 1 through 255).


Lastly, I finally managed to download that Chorium soundfont on my lowly dialup connection <LOL>, and it's quite good -:) Although, after playing a few MIDIs, I must say that I *really* need to upload my custom General MIDI compatable soundfont when I get a chance <G>. A 35 meg or so ZIP file will be tedious on my dialup connection <LOL>, but I think that folks would like it -:)
« Last Edit: 24 Mar '06 - 03:53 by Rich Nagel » Logged
Rich Nagel
Posts: 292


« Reply #65 on: 24 Mar '06 - 11:21 »
Reply with quoteQuote

The difference seems to be due to hardware limitations, as the Tremelo Strings should be modulating at 50hz (10x5), but it's only going at 12hz (on an Audigy2).

BTW, just for clarification, (in the SF2 that I uploaded) shouldn't that be 10hz (varying the pitch by 2 cents and the volume by 5 dB, at a frequency of 10 hz)?
Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #66 on: 24 Mar '06 - 15:44 »
Reply with quoteQuote

Small feature request: (Actually, I think that this would probably be a request for XMPlay itself, dunno if it could be added to just the MIDI plugin)

Is there any way to add more reverb beyond the 100 percent that the slider witin the main XMPlay interface allows? Just an idea, possibly an "X" sort of checkbox, something like "Reverb Times (X) 2" (which would make the slider have twice the range: 0% - 200%).

Dunno, I'll have to think about it. Personally, I like the reverb level at a more subtle 40% Smiley

Also, I was wondering how the stacked soundfont support was coming along? Note that I'm not trying to rush you Ian <G>, I'm simply extremely excited about this possible feature <BG> -:) Maybe a suggestion, a dialog box similar to how the AWE32 Control Panel looks (i.e. assigning and loading SF2s into various "user banks" - banks 1 through 255).

I've not really started on it yet. The main use of stacking I had in mind was being able to use single patch soundfonts to replace patches that you don't like in the base soundfont. I was expecting/hoping that single patch soundfonts would be pre-assigned to the appropriate patch number, so that they'd be ready to go. But after downloading one, that's apparently not so - it's just assigned to patch 0. That complicates things somewhat. It means the config will have to allow the user to choose a patch number (not just bank) to assign a soundfont to.

The difference seems to be due to hardware limitations, as the Tremelo Strings should be modulating at 50hz (10x5), but it's only going at 12hz (on an Audigy2).

BTW, just for clarification, (in the SF2 that I uploaded) shouldn't that be 10hz (varying the pitch by 2 cents and the volume by 5 dB, at a frequency of 10 hz)?

Nope, the info you posted was from the "global zone", so that "10 X" means 10 times the instrument's frequency, which is 5hz... so 50hz it is Smiley
Logged
Rich Nagel
Posts: 292


« Reply #67 on: 25 Mar '06 - 01:01 »
Reply with quoteQuote

Dunno, I'll have to think about it. Personally, I like the reverb level at a more subtle 40% Smiley

Hehe, I always like to jack the reverb up extremely high, especially for classical/orchestral stuff <G> -:)


I've not really started on it yet. The main use of stacking I had in mind was being able to use single patch soundfonts to replace patches that you don't like in the base soundfont. I was expecting/hoping that single patch soundfonts would be pre-assigned to the appropriate patch number, so that they'd be ready to go. But after downloading one, that's apparently not so - it's just assigned to patch 0. That complicates things somewhat. It means the config will have to allow the user to choose a patch number (not just bank) to assign a soundfont to.

Yeah, many single patch SF2s aren't mapped with the correct preset/patch numbers. Some are, but some aren't... depends on who created them.

I was thinking more of where one could load in an SF2 in a specific user bank, and then if a given MIDI file had MIDI controller "bank select" events embeded in it (MIDI controller #0), it would use those specific banks for the specific tracks/channels within the MIDI.

If the stacking feature could allow one to assign the patch/preset number as well, that would be a cool feature in itself -:)


Nope, the info you posted was from the "global zone", so that "10 X" means 10 times the instrument's frequency, which is 5hz... so 50hz it is Smiley

Yes, you sir, are correct <G> -:) I had to dig up my old AWE composing notes to confirm... been a while since I created any custom soundfonts <G>.
« Last Edit: 25 Mar '06 - 01:04 by Rich Nagel » Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #68 on: 25 Mar '06 - 17:43 »
Reply with quoteQuote

An update with soundfont stacking is up now. It also now applies soundfont config changes mid-song (don't have to reload the file).

If there are no problems, I reckon the plugin is pretty much done now Smiley
Logged
Rich Nagel
Posts: 292


« Reply #69 on: 26 Mar '06 - 03:49 »
Reply with quoteQuote

An update with soundfont stacking is up now. It also now applies soundfont config changes mid-song (don't have to reload the file). If there are no problems, I reckon the plugin is pretty much done now Smiley

Had a look at the new features/options, it looks SUPER! So many new things to try, I'll experiment with it tonight and post a reply tommorow -:)

THANKS, IAN! :thumbsup: -:)
Logged
Rich Nagel
Posts: 292


« Reply #70 on: 26 Mar '06 - 09:06 »
Reply with quoteQuote

One word: AWESOME! -:) Everything works perfectly :thumbsup:, except for one little problem that I had. I uploaded power.zip to the FTP, it contains an example MIDI and the soundfont POWER.SF2.

The MIDI file is set up like this:

Channel 10 (GM percussion channel) - Bank 1 - Patch 16 (GM Power Drums patch)

and the SF2 has a few replacement samples to replace the kick, snare, and toms for patch #16 in the normally loaded base SF2 file. In other words, POWER.SF2 is not a complete set of drums, but rather only the kick, snare, and toms.

I couldn't seem to load in the POWER.SF2 file into user bank 1 (in order for it to be played by the example MIDI file). When I load it in the lower half of the config window (bank 128 in the upper half of the window, patch 16 in the lower half), you don't heard the rest of the kit when playing the MIDI file (you only hear the actual samples contained in the POWER.SF2 file).

I guess what I'm asking is, if a percussion SF2 is loaded that doesn't contain certain samples for that patch # (for the complete kit), can the rest of the kit be utilized from the matching patch/kit number in the base SF2?

Lastly, one last itty-bitty feature request <G>: A "Clear All" sort of button for the config window... would make things much easier when I was auditioning a bunch of MIDIs that used a bunch of different custom soundfonts, a different one for each MIDI channel, and each MIDI used totally different soundfonts <BG>. A "Clear All SoundFonts" button would be great -:)


Anyhow, superb job, Ian. Everything else works perfectly, with the new stacked soundfont support this thing is basically a "Virtual AWE32/AWE64/SBLive!/EMU-8000" <G> -:)


P.S. About the MIDI: something that I dreamed up when I was a young kid, and then many years later sequenced on the PC. Always reminded me of something that Fat Albert and the Gang would sing/preform in the old TV cartoon <G>, hence the filename of the MIDI <LOL>!

"HEY HEY HEY!... WHAT'S HAPPENIN' TODAY?"

<LOL>!
Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #71 on: 26 Mar '06 - 19:26 »
Reply with quoteQuote

I couldn't seem to load in the POWER.SF2 file into user bank 1 (in order for it to be played by the example MIDI file).

Yep, bank changes weren't supported on drum channels (didn't know they were allowed Smiley). I've added support for that now.

When I load it in the lower half of the config window (bank 128 in the upper half of the window, patch 16 in the lower half), you don't heard the rest of the kit when playing the MIDI file (you only hear the actual samples contained in the POWER.SF2 file).

This is trickier to "fix", but note that SB hardware doesn't fall back to other banks for individual keys either Wink

Lastly, one last itty-bitty feature request <G>: A "Clear All" sort of button for the config window...

Done Smiley
Logged
heftig
Posts: 83


« Reply #72 on: 26 Mar '06 - 19:40 »
Reply with quoteQuote

The memory management is amazing. Cheesy When I play a song (using a 1.6GB soundfont) XMPlay only needs 65MB of RAM, while Timidity eats up 450MB.

Unlike Timidity however, I cannot use XMPlay as a MIDI device when playing games and such. Sad
Logged
Rich Nagel
Posts: 292


« Reply #73 on: 26 Mar '06 - 20:41 »
Reply with quoteQuote

Yep, bank changes weren't supported on drum channels (didn't know they were allowed Smiley). I've added support for that now.

Works perfectly, thanks! -:)


This is trickier to "fix", but note that SB hardware doesn't fall back to other banks for individual keys either Wink

Actually, on my AWE(s), it does. As an example, I can load in E-mu's 8MBGM.SF2 as the main SF2 on my AWE(s), and then load in the POWER.SF2 into user bank #1. When playing back MIDIs (that are mapped like the FALBERT2.MID example MIDI was: channel 10, patch #16, bank 1), I can hear the kick/snare/toms from the POWER.SF2, and the rest of the kit is retrieved/played from the 8MBGM.SF2 (contained in the "Power Drum" kit patch #16 in the 8MBGM.SF2).

Anyhow, if you can easily fix/add that feature it'd be great, but if not, I'm not complaining... this thing is great and AWEsome as it is -:)


(re: "Clear All" button)
Done Smiley

Superb! Thanks, Ian! :thumbsup: -:)
« Last Edit: 26 Mar '06 - 20:47 by Rich Nagel » Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #74 on: 27 Mar '06 - 16:00 »
Reply with quoteQuote

When I play a song (using a 1.6GB soundfont)...

 Shocked

Actually, on my AWE(s), it does. As an example, I can load in E-mu's 8MBGM.SF2 as the main SF2 on my AWE(s), and then load in the POWER.SF2 into user bank #1. When playing back MIDIs (that are mapped like the FALBERT2.MID example MIDI was: channel 10, patch #16, bank 1), I can hear the kick/snare/toms from the POWER.SF2, and the rest of the kit is retrieved/played from the 8MBGM.SF2 (contained in the "Power Drum" kit patch #16 in the 8MBGM.SF2).

That's strange. It doesn't do that here (on an Audigy2). Is there some special way of loading the soundfont to make that happen? I used the Soundfont Bank Manager v1.00.21.
Logged
Rich Nagel
Posts: 292


« Reply #75 on: 28 Mar '06 - 00:14 »
Reply with quoteQuote

That's strange. It doesn't do that here (on an Audigy2). Is there some special way of loading the soundfont to make that happen? I used the Soundfont Bank Manager v1.00.21.

I'm not sure about the Audigy (or SB Live!) line of cards. On my AWE32s I use the AWE32 Control Panel (the AWE64 uses the same control panel). Maybe it's how the EMU8000 handles the soundfonts. I'm not sure of what the specific chip is used in the Audigy or Sb Live cards, (I think it's an EMU800(#), a newer version of the EMU8000, maybe something like EMU8004?).


I uploaded an example pic to the FTP (awe32_control_panel.gif / awe32_control_panel.txt). This is the standard AWE32/AWE64 Control Panel applet that ships with all of the AWE cards. In addition to using it to load in SBKs and SF2s, it also allows you to select/control which AWE device device to use (in the case of multiple AWE cards in a single PC), as well as displaying the amount of total and free onboard RAM on the card (in the case of these pics, 8MB/8192KB(*) of total onboard RAM).

Pic 1 of the collage: Where you load in the main base soundfont (which is always bank #0).

Pic 2 of the collage: Where you load in soundfonts to the various user banks (in this case, bank #1).

Anyhow, when loading in the base 8MBGM.SF2 soundont (in bank #0 - it's always bank #0 - located on the "Synth" tab) and the POWER.SF2 in user bank #1 (located on the "User" tab), the toms/snare/kick drums come from the POWER.SF2, while the rest of the GM Power kit (patch #16, MIDI channel 10) come from the base 8MBGM.SF2 soundfont.


The following is just an FYI: On the 'WaveFx" tab is a pretty cool feature of the AWE Control Panel which has the ability to load in any single patch number from a soundfont (as well as any standard WAV file - see below(**)), and then assign it to any specific instrument/patch number.

Pic 3 of the collage: Selected instrument/patch number 0, and opened the soundfont file 1MGM.SF2.

Pic 4 of the collage: After clicking the "Apply" button, this window pops up. You then select which of the instruments/patches that you wish to use.

Pic 5 of the collage: After clicking on "000 006 Harpsichord" in pic 4, the AWE Control Panel loads this instrument/patch (originally patch #6 in the 1MBGM.SF2 soundfont file) into instrument/patch slot number 0 (that I had selected in pic 3).

The result is that the harpsichord (previously loaded from the 1MGM.SF2 soundfont) will now be used/played when any MIDI file plays GM patch #0 (Piano 1) -:)


(**) Hehe the usage of regular WAV files with this feature can be pretty fun as you can load in any WAV file "on the fly" for any GM instrument/patch number, and use it for MIDI playback... lot's of fun with burps or other such obsure rude noises <LOL>!


(*) P.S. (To anyone asking/saying "What a minute! I thought you previously said that you had a bunch of AWEs with 32MB RAM?! LIAR!" <LOL>) That AWE32 isn't in my "main" MIDI machine, hence only the 8MB of onboard RAM <G>. If I wasn't so lazy, I'd have fired up my MIDI machine and took pics of the installed AWE CPs in it... six AWE32 cards each with 32MB onboard RAM, running installed in a 486-DX100 under Windows 3.11 WFWG <LOL>!
Logged
Nichel
Posts: 3


« Reply #76 on: 29 Mar '06 - 13:41 »
Reply with quoteQuote

The latest changes don't seems to be working right on my side.I'm trying to substitute preset n°41(Viola) on my personal soundfont with the one included in Chorium but instead it gets substituted with preset n°61 (Brass). What I do it's loading my personal sf first then I double click on viola and  I choose  Chorium on the open file dialog window. If I do the opposite(loading Chorium first then substituting Viola with my private one) I get preset 46 (Harp) in place of the Viola.Using beta 12.
« Last Edit: 29 Mar '06 - 13:47 by Nichel » Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #77 on: 29 Mar '06 - 19:55 »
Reply with quoteQuote

The following is just an FYI: On the 'WaveFx" tab is a pretty cool feature of the AWE Control Panel which has the ability to load in any single patch number from a soundfont (as well as any standard WAV file - see below(**)), and then assign it to any specific instrument/patch number.

Pic 3 of the collage: Selected instrument/patch number 0, and opened the soundfont file 1MGM.SF2.

Pic 4 of the collage: After clicking the "Apply" button, this window pops up. You then select which of the instruments/patches that you wish to use.

Pic 5 of the collage: After clicking on "000 006 Harpsichord" in pic 4, the AWE Control Panel loads this instrument/patch (originally patch #6 in the 1MBGM.SF2 soundfont file) into instrument/patch slot number 0 (that I had selected in pic 3).

The result is that the harpsichord (previously loaded from the 1MGM.SF2 soundfont) will now be used/played when any MIDI file plays GM patch #0 (Piano 1) -:)

That's another thing the "Soundfont Bank Manager v1.00.21" doesn't seem to do Smiley ... When loading a soundfont into a patch/preset, it just uses an arbitrary one from the soundfont, eg. it's always "5th Saw Wave" from the Chorium soundfont.

I don't know if these are just driver/software differences, or whether it's the hardware. Looking back at the "Tremelo Strings" thing, do you notice the same frequency limit that I did on the Audigy2?

The latest changes don't seems to be working right on my side.I'm trying to substitute preset n°41(Viola) on my personal soundfont with the one included in Chorium but instead it gets substituted with preset n°61 (Brass). What I do it's loading my personal sf first then I double click on viola and  I choose  Chorium on the open file dialog window. If I do the opposite(loading Chorium first then substituting Viola with my private one) I get preset 46 (Harp) in place of the Viola.Using beta 12.

The plugin will currently use the first preset in the soundfont (I had single-preset soundfonts in mind). I guess it would be a good idea to use the same chosen preset number, if it's present in the soundfont. I'll look into it.
Logged
Rich Nagel
Posts: 292


« Reply #78 on: 29 Mar '06 - 20:15 »
Reply with quoteQuote

I don't know if these are just driver/software differences, or whether it's the hardware.

I have a hunch that it may be hardware (maybe the updated EMU chip, that is if your card has one). Like I replied previously, the POWER.SF2 instance isn't all that important (as it's really an obscure sort of instance, of a custom non-standard SF2). If it's easy to add what I was describing that would be great, if not, no problemo :thumbsup: -:)


Looking back at the "Tremelo Strings" thing, do you notice the same frequency limit that I did on the Audigy2?

Yes, the limit appears to be the same on the AWE cards.


The plugin will currently use the first preset in the soundfont (I had single-preset soundfonts in mind). I guess it would be a good idea to use the same chosen preset number, if it's present in the soundfont. I'll look into it.

That would be similar to what I was describing in my previous post about the "WaveFX" tab (using SF2s) of the AWE Control panel -:)
« Last Edit: 29 Mar '06 - 20:17 by Rich Nagel » Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #79 on: 30 Mar '06 - 17:25 »
Reply with quoteQuote

The "use the chosen preset if present in the soundfont" thing is in there now. Support for the custom loop-point thing is in now too, but requires an EXE update...

   www.un4seen.com/stuff/xmplay.exe

Note the "MOD only" looping option includes MIDI files now, as they have proper loop detection (the loopstart marker), rather than the generic "if there's sound at the end, let's loop" Smiley
Logged
Pages: 1 2 3 [4] 5 6 ... 34
  Reply  |  Print  
 
Jump to:  

Powered by SMF 1.1.18 | SMF © 2013, Simple Machines