IPB

Welcome Guest ( Log In | Register )

foo_midi, decoder for General MIDI files
deus-ex
post Jan 18 2013, 01:03
Post #1





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



Additional FM patches and a few example modules.
Attached File(s)
Attached File  additional_fm_patches_deus_ex.7z ( 22.1K ) Number of downloads: 185
 


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
2 Pages V   1 2 >  
Start new topic
Replies (1 - 24)
kode54
post Jan 18 2013, 01:58
Post #2





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



Do you have many more HMP files?

Also, do those HMI games include different drum bank files, or do they use an existing drum bank?
Go to the top of the page
+Quote Post
deus-ex
post Jan 18 2013, 02:39
Post #3





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



QUOTE (kode54 @ Jan 18 2013, 01:58) *
Do you have many more HMP files?

Also, do those HMI games include different drum bank files, or do they use an existing drum bank?

Here you are the different HMI2 drum banks and my complete collection of HMI2, HMP and HMP2 modules. I used to keep only those modules which I like to listen to.
Back in the old days I wrote my own quite advanced replay interfaces using 4DOS batch routines which allowed independant selection of instrument and drum patches. For playback I used players from Miles and utilized the sound-setup binaries from Human Machine Interfaces. wink.gif

Let me know if you are looking for anything special.
Attached File(s)
Attached File  hmi2_hmp_hmp2_deus_ex.7z ( 511.97K ) Number of downloads: 154
 


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
kode54
post Jan 18 2013, 20:57
Post #4





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



I found the Shattered Steel melodic set. Now I just need the drum set from Normality.

Also, what is default.op2 from? It doesn't seem to be from Doom 2.
Go to the top of the page
+Quote Post
deus-ex
post Jan 18 2013, 23:16
Post #5





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



QUOTE (kode54 @ Jan 18 2013, 20:57) *
I found the Shattered Steel melodic set. Now I just need the drum set from Normality.

Shattered Steel is quite an interesting case. The demo release included both the original MIDI files and the HMI2 variants, HMI2 was used in the demo. It also included (probably by mistake) a couple HMI2 modules from Descent2 (I placed those in a subfolder) and some FM patches from another game (METALH = Metalhead?). The full version of Shattered Steel had all the MIDI music removed except for the sound-setup test tune. The game used CD Audio versions of the MIDI tunes instead.

Find also attached all tunes and FM patches from the game Normality.

QUOTE (kode54 @ Jan 18 2013, 20:57) *
Also, what is default.op2 from? It doesn't seem to be from Doom 2.

This came with the distribution of MUS Play. This is a very nice DOS based player for .mus files which recreates the original sound of the music in DOOM, Heretic and Hexen quite nicely, I never found anything sounding closer to the games than this. MUS Play runs fine under DOSBox, try command-line musplay.exe <file.mus> /d4 to get the best experience. The current implementation of adlmidi doesn't come close to this. For proof please check attached example I just recorded from the file MUS_E1M1.MUS (Heretic - Episode 1 Level 1) using MUS Play. (Don't forget to replace included GENMIDI.OP2 with the one of DOOM, Heretic or Hexen for best results).

This post has been edited by deus-ex: Jan 18 2013, 23:19
Attached File(s)
Attached File  Shattered_Steel.7z ( 288.18K ) Number of downloads: 154
Attached File  Normality.7z ( 81.08K ) Number of downloads: 109
Attached File  MUS_Play_v1.75.7z ( 69.86K ) Number of downloads: 89
Attached File  Heretic_MUS_E1M1_excerpt__played_with_MUS_Play_.flac ( 2.2MB ) Number of downloads: 101
 


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
kode54
post Jan 19 2013, 03:43
Post #6





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



QUOTE (deus-ex @ Jan 18 2013, 14:16) *
musplay.exe <file.mus> /d4

Driver 4 is MPU-401, which is just a pass-through to your system's MIDI synthesizer.
Go to the top of the page
+Quote Post
deus-ex
post Jan 19 2013, 11:31
Post #7





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



QUOTE (kode54 @ Jan 19 2013, 03:43) *
Driver 4 is MPU-401, which is just a pass-through to your system's MIDI synthesizer.

Right. Could this pass-through be achieved with foo_midi somehow?


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
kode54
post Jan 19 2013, 19:46
Post #8





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



Not really. Foobar2000 components must generate their own audio. If you want foo_midi to sound as bad as the Microsoft GS synthesizer, there's a number of copies of that bank converted to SF2 format, which will work with BASSMIDI.

Or you can dig up the VSTi version of Roland Virtual Sound Canvas, and although it doesn't support system exclusive messages, and must be configured to GS mode manually, it does support some of the GS sound set, and will probably sound like what Doom was composed with as well.
Go to the top of the page
+Quote Post
deus-ex
post Jan 19 2013, 20:13
Post #9





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



QUOTE (kode54 @ Jan 19 2013, 19:46) *
If you want foo_midi to sound as bad as the Microsoft GS synthesizer [...]

Ha ha. smile.gif Actually I would only want this for recreation of the DOOM, Heretic and Hexen music the way I used to experience it back then. No problem though, I can render these musics with MUS Play and save the output to a streaming format of my choice.


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
kode54
post Jan 19 2013, 21:53
Post #10





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



You can use VSC. It sounds similar. Let me verify that right now. Hmm, yes, does sound like that, only slightly better.
Go to the top of the page
+Quote Post
kode54
post Jan 30 2013, 19:34
Post #11





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



Are those the only Descent 2 banks? Or did it recycle others from the original Descent?
Go to the top of the page
+Quote Post
deus-ex
post Jan 30 2013, 23:01
Post #12





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



QUOTE (kode54 @ Jan 30 2013, 19:34) *
Are those the only Descent 2 banks? Or did it recycle others from the original Descent?

Here, I extracted all MIDI related files both from Descent and Descent 2 for you. Note the details found in file descent.sng of each game.
Attached File(s)
Attached File  Descent1_2_MIDI.7z ( 447.73K ) Number of downloads: 131
 


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
deus-ex
post Feb 10 2013, 20:40
Post #13





Group: Members
Posts: 284
Joined: 9-September 04
From: Earth
Member No.: 16882



I browsed through a couple of MIDI archives (a few thousand files) which I downloaded recently. I found a lot of MIDI files revealing issues with foo_midi. I sorted them into four categories:
  • wrong time = wrong calculation of the total duration of a MIDI file
  • no content = foo_midi does not detect any notes to play
  • load fail = files being rejected to load "unsupported format or corrupted file"
  • crash = one MIDI file which manages to crash foo_midi and foobar2000 altogether

XMPlay using the XMP-MIDI plugin is able to load and play all these files, and it does not report wrong durations. Hopefully this collection helps you to further optimize foo_midi's file loader and playtime calculation.

This post has been edited by deus-ex: Feb 10 2013, 20:41
Attached File(s)
Attached File  Foo_MIDI_problem_files_deus_ex.7z ( 436.7K ) Number of downloads: 139
 


--------------------
Best regards
deus-ex (MODLAND admin: ftp://modland.ziphoid.com)
Go to the top of the page
+Quote Post
Arthur
post Apr 11 2013, 07:23
Post #14





Group: Members
Posts: 9
Joined: 17-April 06
Member No.: 29668



Hey there. Loving foo_midi, but I'd love to see an update to the munt engine, now that development really seems to have picked up. munt is now at v1.2.0. Any chance you could update things?

arfy
Go to the top of the page
+Quote Post
kode54
post Apr 28 2013, 07:18
Post #15





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



Done. Updated and rebased against 1.2.0. Note that the sample rate is now hard coded to 32KHz for MUNT.

Also note the new SysEx dump support. To apply SysEx .SYX or .DMP files to the start of any type 0 or 1 MIDI file, add them to a playlist, select all of the MIDI files you wish to apply dumps to at the same time as selecting all of the dump files you wish to apply to each of them, then right click and select "Assign SysEx dumps" under "Utilities". Similarly, select a series of MIDI files and no dump files, and you may select "Clear SysEx dumps" from the same menu.
Go to the top of the page
+Quote Post
Arthur
post Apr 28 2013, 08:15
Post #16





Group: Members
Posts: 9
Joined: 17-April 06
Member No.: 29668



Excellent! smile.gif it's working. I thought at first the old reverb algorithms were still in place, but seems everything's fine. Also, love the apply sysex dumps to any file. helps when playing sierra soundtracks with external patch banks. Also hearing emulated gm on an mt-32 is pretty cool! is the patch set based off the official one that Roland put out to allow mt-32's to play back gm?
Go to the top of the page
+Quote Post
kode54
post May 1 2013, 00:07
Post #17





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



It is Roland's MT-32 GM patch set. If you know a better generic patch set, I'll gladly bundle it, and provide an option to select the patch set.
Go to the top of the page
+Quote Post
F4T4LV0iD
post May 14 2013, 01:27
Post #18





Group: Members
Posts: 2
Joined: 14-May 13
Member No.: 108111



I updated the foo_midi dll to 1.209 and now I get this message when Foobar2000 loads up...

Failed to load DLL: foo_midi.dll
Reason: The specified procedure could not be found.

it updated through the components updater screen, and then removed it and tried manually updating it with no success. and when I try to actually play a .midi file it says it's an unsupported file type.

in the components menu, it lists the component as (component not loaded) and (unknown) version for foo_midi module.

anything I can do on my end to remedy this issue?
Go to the top of the page
+Quote Post
F4T4LV0iD
post May 14 2013, 05:22
Post #19





Group: Members
Posts: 2
Joined: 14-May 13
Member No.: 108111



nevermind, it was a fault of my own idiocy. lol. I had lingering .dll files from the foo_midi in my /foobar2000/ folder that seemed to be conflicting with the installer, after I deleted those now it works like a charm.
Go to the top of the page
+Quote Post
Nahkranoth
post Jun 16 2013, 18:07
Post #20





Group: Members
Posts: 66
Joined: 12-March 08
Member No.: 51973



Hi kode54!

Just tried this SysEx thing with some mt-32 midis from Betrayal at Krondor. After assigning SysEx to a midi file I've got a message:

CODE
Unable to open item for playback (Error processing dump BAK.SYX: Object not found):

"D:\tmp\music\midi\bak_1\BAK_1.MID"


Obviously BAK.SYX is a SysEx dump that has to be assigned to BAK_1.MID file. They're put in the same folder, so there shouldn't be a problem.

What could be wrong here?

Thanks!




Go to the top of the page
+Quote Post
Wormbo
post Mar 28 2014, 20:28
Post #21





Group: Members
Posts: 8
Joined: 20-March 14
Member No.: 115086



These two MIDI songs from Operation Inner Space seem to contain a non-standard-ish second drum channel. XMPlay is able to detect that (if you activate the "auto-detect channel 16 drums" xmp_midi option), but all other players just play "random" piano keys instead. Would be nice if foo_midi supported that as well, though I have to admit I don't know any other files with that configuration.
Attached File(s)
Attached File  InnerSpace_MIDI_Second_DrumsChannel.zip ( 37.44K ) Number of downloads: 19
 
Go to the top of the page
+Quote Post
ArtistofMind
post Jul 31 2014, 23:28
Post #22





Group: Members
Posts: 19
Joined: 2-January 14
From: Newbury Park, CA
Member No.: 113705



QUOTE (kode54 @ Apr 27 2013, 22:18) *
Note that the sample rate is now hard coded to 32KHz for MUNT.

Iím curious: what is the rationale behind this choice? Was 32 kHz chosen because it rhymes with MT-32? wink.gif I typically listen to MIDI at 48 kHz, so I was a bit disappointed to find my output switching to 32 whenever an MT-based file (such as those released by Quest Studios for old Sierra titles) comes up in the playlist. (I otherwise have no complaints, of course; the plugin works beautifully!) And, I mean, if authenticity is the goal, ideally it should be 49716 Hz, right? Of course, few modern soundcards support such an odd number, and anything over 44.1 is honestly beyond the range of even the keenest human hearing, and thus pointless, but I digress. I just want to know why we settled inflexibly on 32, of all possible rates?

In any event, thank you to everyone involved in making this great plugin.
Go to the top of the page
+Quote Post
algernon64
post Aug 25 2014, 14:22
Post #23





Group: Members
Posts: 4
Joined: 25-August 14
Member No.: 117085



Thanks kode54 for this plugin! I'm really liking it so far.

I have a question because I'm having trouble playing some midi files through munt. Files which contain mt32 sysex messages play perfectly fine, but I also have a bunch of mt32 midi files which don't seem to contain mt32 sysex messages and therefore don't play through munt. Is there some way to force playback through munt? I also tried the method explained above to "attach" a sysex to normal midi files but it's not working for me. I get the exact same error that Nahkranoth mentioned.

Thanks!

Go to the top of the page
+Quote Post
kode54
post Aug 28 2014, 12:24
Post #24





Group: Admin
Posts: 4633
Joined: 15-December 02
Member No.: 4082



Yes. You may add a MT-32 reset SysEx dump to each file.

  1. Add the MIDI files to a playlist
  2. Add a .dmp file containing only an MT-32 reset message to the same playlist
  3. Select all tracks, including the dump, which will have no length
  4. There should be some SysEx management options in the Utility submenu of the context menu, such as adding or removing


Sorry for not noticing this sooner, I was not subscribed to this topic, and the foobar2000 subforum (28) portal does not track the fb2k uploads forum.
Go to the top of the page
+Quote Post
algernon64
post Aug 28 2014, 14:25
Post #25





Group: Members
Posts: 4
Joined: 25-August 14
Member No.: 117085



QUOTE (kode54 @ Aug 28 2014, 05:24) *
Yes. You may add a MT-32 reset SysEx dump to each file.

  1. Add the MIDI files to a playlist
  2. Add a .dmp file containing only an MT-32 reset message to the same playlist
  3. Select all tracks, including the dump, which will have no length
  4. There should be some SysEx management options in the Utility submenu of the context menu, such as adding or removing


Sorry for not noticing this sooner, I was not subscribed to this topic, and the foobar2000 subforum (28) portal does not track the fb2k uploads forum.


Thanks for the reply.

I don't know how to make a .dmp file containing just a MT32 reset message. How would I do that?

What I've tried is using external .syx files package with some midi collections. For example, some midi songs in Quest Studios offer the midi tracks and a separate sysex file to load before the song (like this one http://www.queststudios.com/mt32midi/cqc_1.zip). With the previous file as an example, if I add the midi file and .syx to the playlist, select both, choose Utilities->Assign Sysex dumps and then play the file, I get a window with the message:

Unable to open item for playback (Error processing dump CAMELOT.SYX: Object not found):
"I:\midi\CQC_1.MID"

Both files are in the same folder, so, it seems like there is some kind of bug that prevents the decoder from loading the .syx file?
Go to the top of the page
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 31st October 2014 - 22:38