Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Hisymak

[Update] Hisymak's GENMIDI: An enhanced GENMIDI lump for OPL Synth

Recommended Posts

Are you a fan of the FM/OPL synthesis and do you like the oldschool sound of the Adlib and Sound Blaster sound cards? Do you use OPL Synth emulation in ZDoom-based Doom ports?
If yes, then I have something of your interest: A highly enhanced GENMIDI lump to improve the sounding of many instruments and to take the best of the FM/OPL synthesis! With this GENMIDI lump you can listen to MIDI music tracks with better quality than the original Doom's GENMIDI lump can offer.

 

If you're wondering, yes, I'm aware about similar project created by Csonicgo: DMXOPL. This guy is doing really good work, but I started my own GENMIDI project independently as I was not aware about its existence. As a result, I created a completely different, alternative and unique GENMIDI lump which can give you yet another OPL experience. You can give feedback about which one you like better, either as a whole or individual instruments. I'll mention the main differences from DMXOPL later.

 

Update from 2017-11-29:

After some time, an update is finally here! I edited several more instruments, and most importantly, the drums are finally much better!

I could not resist and took some of the percussion instruments from Csonicgo's DMXOPL project. Percussion is my weak point when it comes to OPL Synth, and even the other sources which I took instrument patches from were not ideal. Csonicgo did really hard work with them, so all thanks go to him!

I also created my own account on SoundCloud in order to post some demonstration tracks, where I'm going to showcase some of the best instruments featured in my GENMIDI. There are seven new demonstration tracks embedded in this post!

 

After all, here is the list of instruments which were changed since the last release:

 

Major changes:

- Clavinet

- Reed Organ

- Trumpet

- Baritone Sax (Blind - I had no midi using this instrument to test)

- Guitar Harmonics (Taken from DMXOPL - I really love it!)

- Bowed Glass (Taken from DMXOPL)

- Acoustic and Electric Snare, Open High Hat, most of the Cymbals, Vibraslap (Taken from DMXOPL)

 

Minor changes:

- Acoustic Grand Piano (release rate adjust)

- Timpani (volume increase)

- Alto Sax (volume increase)

- Piccolo (volume increase)

- Lead 7 (5th sawtooth) (key scale level swap)

 

Since this version, Hisymak's GENMIDI requires OPL3, because it utilizes the new waveforms - basically the same applies to DMXOPL3. Guitar Harmonics is the only melodic instrument which utilizes a square wave (and generally any OPL3 waveform) and the drums, of course.

 

Feature list:
- Used Doom2 GENMIDI lump as a base
- More than half of the instruments are modified, either completely or a very minor tweak was made
- The instruments which sounded bad and crappy were totally relplaced to sound better
- Many instruments were highlighted and made louder (if they were too quiet for example)
- Extensive utilization of double-voice feature of GENMIDI (I can afford it as ZDoom supprts emulation of up to 8 OPL chips). Due to this you need to configure emulation of more OPL chips, otherwise many note cutoffs will happen.
- Many instrument patches were taken from different games and patch files (mostly "The Fat Man" patches, Duke Nukem 3D, ROTT, Blood). I tried to take the best of them and combine them together in various ways.

- Some instruments, mostly the drums, were taken from DMXOPL project. Credits go to Csonicgo and everybody who participated the project.
- I also made my own unique and interesting modifications and creations

- Requires OPL3 due to usage of the new OPL3 waveforms

 

Download:

hisymak_genmidi_2017-11-29.zip

 

This time I am also including a file with statistics which instruments were edited and which not, with detailed description of the change I made.

 

Demonstration tracks:

 

1. Memento Mori 2 MAP03

This track demonstrates the entire philosophy and purpose of my GENMIDI project: Improve instruments which need improvement, and leave unchanged the instruments which are iconic to DMX and Doom MIDIs overally, and sound great on their own. This should retain the original feeling of Doom music.

This track was previously recorded and uploaded on Youtube with the original unchanged GENMIDI, that's why I chose this song for demonstration - you can directly compare with mine and the original version!

From the very beginning you can hear the improved Clavinet. Then after a little while you will hear the Muted Guitar and Distortion guitar at higher pitches. Percussion is significantly improved too. On the other hand, the Overdriven guitar, and Slap Bass 1 and Ride Bell in later parts remained unchanged, as this is the typical Doom sound we all are familiar with.

 

Here is the original version of the same song (recorded with unchanged GENMIDI):

 

2. James Paddock: Fallen Sun

Another great song I really like. This song was previously recorded with the original GENMIDI as well, so you can hear direct comparison here too!

Main instrument changes:

- Cello (at 0:09)

- Reverse Cymbal (at 0:17)

- Nylon Guitar (at 0:36 and 1:21)

- Xylophon (at 0:54)

- Bright Acoustic Piano (at 1:40)

- String Ensemble 1 (through entire song)

 

Here is the original version of the same song (recorded with unchanged GENMIDI) but got some post-processing (bass frequencies, reverbs etc.), that's why it might sound better in some cases:

 

3. James Paddock: Ripsaw

One of the recent and awesome songs by Jimmy. Here you can hear for example Rain FX (from beginning) and Bass lead (lead 8).

 

4. Electric Guitar (clean) demo:

The Clean guitar is one of my most favourite instruments I created. This is one of the most significant examples of an instrument, which does not sound like how it's supposed to, but is made to sound originally and nicely. I would call it something like "Sweet Guitar" fot its lovely sound. It can give a completely new feeling to the songs where it is used, like this example:

 

5. Pizzicato Strings demo

Pizzicato Strings is quite hard to replicate in OPL, but I think I managed it very well with the help of Duke Nukem 3D patch. Here you can hear an example:

 

6. Waltz of Flowers

This is an example of a classic song. Here you can hear for example French Horn (0:50), Clarinet (0:58), Flute (2:02), Oboe (3:10) etc.

 

7. Shadow Warrior: Everybody Off!

An example of a song from Shadow Warrior. Here you can hear Koto (beginning), Ocarina (0:23) etc.

 

Older songs:
 

Spoiler

 

- I recorded complete Plutonia 2 soundtrack with my GENMIDI lump. The latest GENMIDI version has even more changes, so this is not exactly what you get.
Youtube video here:

 

- I made an experiment and recorded a fairy-tale-styled song of a Czech singer Iveta Bartošová, using OPL synth.
Original song (just for comparison): https://www.youtube.com/watch?v=xNBGd1fk2Iw
OPL Synth version:

 

 

- I recorded the Plutonia MIDI pack with an early version of the modified GENMIDI lump.
Youtube video here:

 

 

 

 

Main differences from DMXOPL project:

- My GENMIDI lump is rather very conservative. I'm leaving many original DMX (Paul Radek's) instruments untouched, in case they sound really great on their own and do not need any replacement or significant change or improvement. So you will still hear many original instruments you're familiar with, for example Sawtooth, Synth Strings, Steel guitar, Overdriven guitar, Electric piano, many bass instruments etc. For many instruments I did a minor change, mostly just to adjust the volume.

- My GENMIDI lump is not trying to mimic some real high-quality soundfont (like the Roland SC-55 or similar), but I generally make the instruments sound how I personally like them. So be aware that some instruments may sound far away from how they are supposed to. Some instruments are really interesting and unique creation, for example Clean guitar, Soundtrack FX, Ocarina, Percussive organ, Hammond organ, Koto etc. and I'm proud of those.

- My GENMIDI lump does not (for majority of cases) consist of my own original creations from scratch, but I'm generally combining existing patches from other games. Some instruments (from The Fat Man for example) may sound really very familiar to you. If I do not like any of the original Doom2/DMX instruments, I try to listen to that instrument with a patch from all the other games, and then I pick the best one, or combine two of them together.

- My weakest point are the percussion instruments. I'm not very familiar with them and they are much harder to create than melodic ones. I modified only very few of the percussion: All Toms and Accoustic Snare (all taken from ROTT). So expect that percussion will sound the same as original Doom for the most part. DMXOPL wins here, maybe I'll ask Csonicgo to offer some of the percussion to my project. (Edit: Already did that.)

 

Enjoy!

Edited by Hisymak

Share this post


Link to post
On 10. 11. 2017 at 3:28 AM, datajake said:

Can you please post the program you use to edit the genmidi file?

Thanks.

Of course. Here you go.

GenmidiEditor.zip

 

But be aware that this program is really not user friendly, so you will most likely have no idea how to use it, since I made it very quickly for my personal use. And it is also kinda unfinished.

Tip: use keys (1,2,3,Q,W,E,R...) to change the values, hold shift for second voice etc.

Have fun.

Share this post


Link to post

Could you list the instruments that have the most changes, I did hear some changes going through some of the Doom tracks.

Share this post


Link to post
On 13. 11. 2017 at 11:04 PM, Glaice said:

Could you list the instruments that have the most changes, I did hear some changes going through some of the Doom tracks.

Yes, I will try. I will not list the instruments with some minor change (like volume, key scale, attack rate adjustment etc).

Doom soundtrack utilizes only a subset of all General MIDI instruments, and many changes were made in instruments nod used in original Doom(2) soundtrack. I started doing this primarily for custom soundtracks and MIDIs (like Plutonia, Plutonia 2, Revolution!, Reverie, Memento Mori etc), so you can try with those.

 

So here you go:

0 - Acoustic Grand Piano

1 - Bright Acoustic Piano

7 - Clavinet (Upcoming, not released yet)

 

8 - Celesta

9 - Glockenspiel

10 - Music Box

13 - Xylophone

14 - Tubular Bells

 

16 - Hammond Organ

17 - Percussive Organ

18 - Rock Organ

22 - Harmonica

 

24 - Acoustic Guitar (nylon)

26 - Electric Guitar (jazz)

27 - Electric Guitar (clean)

28 - Electric Guitar (muted)

30 - Distortion Guitar

 

35 - Fretless Bass

37 - Slap Bass 2

38 - Synth Bass 1

 

41 - Viola

42 - Cello

44 - Tremolo Strings

45 - Pizzicato Strings

 

48 - String Ensemble 1

52 - Choir Aahs

53 - Voice Oohs

54 - Synth Voice

55 - Orchestra Hit

 

57 - Trombone

59 - Muted Trumpet

60 - French Horn

63 - Synth Brass 2

 

64 - Soprano Sax
65 - Alto Sax
66 - Tenor Sax

68 - Oboe

69 - English Horn

71 - Clarinet

 

73 - Flute
74 - Recorder

75 - Pan Flute

77 - Shakuhachi

78 - Whistle
79 - Ocarina

 

82 - Lead 3 (calliope)

84 - Lead 5 (charang)

87 - Lead 8 (bass & lead)

 

88 - Pad 1 (new age)

91 - Pad 4 (choir)

92 - Pad 5 (bowed glass) (Upcoming, not released yet)

 

96 - FX 1 (rain)
97 - FX 2 (soundtrack)
98 - FX 3 (crystal)

101 - FX 6 (goblin)

102 - FX 7 (echo drops)

103 - FX 8 (star-theme)

 

105 - Banjo

107 - Koto

108 - Kalimba

 

114 - Steel Drums

116 - Taiko Drum
117 - Melodic Tom

119 - Reverse Cymbal

 

126 - Applause

 

130 - Slide Stick

131 - Acoustic Snare

134 - Low Floor Tom
136 - High Floor Tom
138 - Low Tom
140 - Low-Mid Tom
141 - High-Mid Tom
143 - High Tom

Share this post


Link to post

Thanks for the response. I do look forward to the bowed glass change as that makes or breaks D_E1M3's main melody instrument. If there's one port that gets it correct, it's SNES Doom's. The same goes for D_E2M2 for SNES Doom with its ocarina at the beginning.

 

 

 

Share this post


Link to post
On 15. 11. 2017 at 8:36 PM, Glaice said:

I do look forward to the bowed glass change

Well, Bowed glass is so far the only melodic instrument which I am going to take from DMXOPL project, along with some of the percussion instruments. I have asked Csonicgo for this.

So you can expect a new release, with mostly percussion improvements, which I was waiting for long time.

I've not really done many further changes (just Clavinet) since my last release (hisymak_genmidi_2017-08-06). I'm done and happy with most part of the melodic instruments.

There are still some instruments left, which I haven't encountered in any MIDI so far, so did not have opportunity to hear them if any change/improvement is needed (for example Guitar Harmonics, Contrabass, Bottle Blow, Chiffer, Bagpipe, Shanai). There are also a few instruments which I could not improve (all my attempts failed), so I decided to leave them unchanged as I was quite okay with the originals (for example Harpsichord, Marimba, Timpani, Trumpet, Piccolo etc), and Bowed Glass being taken from DMXOPL.

So stay tuned and let me know if you have any thoughts about specific instruments.

 

And regarding SNES soundtrack, I can say I think SNES has one of the most superior sound system among gaming systems from early 90s. Never owned any Nintendo console or heard Doom soundtrack on it, but it sounds pretty reasonably.

Share this post


Link to post

Hey! An update is finally here!

I edited the first post. Go look what is new!

I also created my own account on SoundCloud in order to post some demonstration tracks, where I'm going to showcase some of the best instruments featured in my GENMIDI. There are seven new demonstration tracks embedded!

Share this post


Link to post

Hi there!

 

I am new registered and found interesting stuff here @Hisymak

 

in terms of genmidi editor there is an alternative to edit *.op2 Files -> the imfcreator, maybe this is still unknown to you http://www.shikadi.net/keenwiki/IMF_Creator

 

or even more extensive -> the OPL 3 Bank Editor which allow import und export many 2-operator, pseudo-4-operator, and 4-operator instruments and banks

http://www.shikadi.net/moddingwiki/OPL3_Bank_Editor

 

 

 

Edited by Doomfanatik

Share this post


Link to post
On 5/8/2018 at 10:09 PM, Doomfanatik said:

Hi there!

 

I am new registered and found interesting stuff here @Hisymak

 

in terms of genmidi editor there is an alternative to edit *.op2 Files -> the imfcreator, maybe this is still unknown to you http://www.shikadi.net/keenwiki/IMF_Creator

 

or even more extensive -> the OPL 3 Bank Editor which allow import und export many 2-operator, pseudo-4-operator, and 4-operator instruments and banks

http://www.shikadi.net/moddingwiki/OPL3_Bank_Editor

 

 

 

Thanks for the tips!

I was already aware of the second program (OPL 3 Bank Editor). It's actually cool toy and I can immediately test the instruments, but it was lacking several very important features for me.

- Direct load/save from/to a WAD file. I want to save my changes in GENMIDI lump and then test them directly in Doom, but with OPL 3 Bank Editor I need to first extract from WAD and then import back, which is quite annoying.

- Copy/Paste functionality. When I'm creating my GENMIDI, I combine instruments from many different games like Duke3D, ROTT etc. and in many cases I add it as a second voice on top of the original single-voice instrument or replace one of two voices. In my program I added "Paste Voice 2" button which does exactly that.

- Compact overview of all instrument values in a table, and very quick editing of instrument values by pressing different keys on keyboard.

So that's it, I hope you found my GenmidiEditor interesting.

 

By the way. Since GZDoom version 3.0 the OPL Synth became broken. But I finally fixed that. See more in this thread: https://forum.zdoom.org/viewtopic.php?f=7&t=56682&start=30

So in the next release, or with recent Dev build, you can enjoy OPL Synth again with Best quality.

 

Share this post


Link to post
4 hours ago, dial-up said:

Are you able to post this library as a soundfont rather than a wad?

Nope, I don't think this is even applicable. This is a collection of chip register values used by a FM synthesizer, which works in fundamentally different way than sample-based soundfonts.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×