Doom Music Inverted

Melodic inversion is a compositional technique in which a musical phrase is flipped vertically - upward motion becomes downward motion and vice versa. This technique is used to generate new music from existing material and combines economy with structural unity. It is described here: http://en.wikipedia.org/wiki/Inversion_%28music%29#Melodies

I have long been interested in inverting the music from Doom to create something that was felt new but was nonetheless authentically Doom-ish. Unfortunately the MUS format does not store accurate tempo data, which necessitates manual manipulation of MIDI conversions before any editing can take place. 4mer the guy behind this site did this tedious work for eight tracks from Doom I and I have used Finale to invert them. The results vary in quality and generally sound like Doom through a funhouse mirror: minor keys turn major, chord and key changes become strange. I like E1M8 pretty well. Here they are:

E1M1
E1M2
E1M3
E1M8
E2M4
E3M2
E3M3
E3M8

Feel free to use these - no credit to me is necessary. If anyone has any interest in this at all I can invert other MIDI files with functional tempos, but I'm not willing to deal with correcting the output of MUS2MIDI files.

Share this post


Link to post

these are quite amusing. the overdriven guitar on e3m3 is particularly lolz-worthy

Share this post


Link to post

How about inverted and reversed? I'm going to try that when I get home.

Share this post


Link to post

Haha, this is actually pretty awesome! I like how happy everything sounds, especially the first half of E2M4. It sounds like some kind of waltz. E3M8 turned out nicely too, kind of rock n roll-ish.

Share this post


Link to post

Very very cool! Can you do D_RUNNIN? :p Also I think you messed up the tempo in e1m2.

Share this post


Link to post
jute said:

Unfortunately the MUS format does not store accurate tempo data, which necessitates manual manipulation of MIDI conversions before any editing can take place.


Can you take a look at these MIDIs and tell me if they would need such painstaking work or not?

I believe that they are fine, except for a slightly slower tempo, as they have a chance of having been created from Bobby Prince's original MIDIs instead of the MUS lumps. But maybe they have been MUS2MIDIed too?

Share this post


Link to post

I actually wrote my own vertical MIDI flipper in Java a while ago... D_VICTOR sounded pretty good, actually. Doesn't handle E1M1 well at all, though; I had added in functionality to analyze the highest and lowest notes of a track and shift it up and down several octaves accordingly after flipping, but it doesn't handle tracks which spend a lot of time in one octave and briefly play a few notes in a very different octave, which E1M1 is guilty of. The OP's version is much, much better-sounding than what I wound up with.

I'd share it, but the file-sharing service I use doesn't have a good phone interface (figures). Maybe tomorrow.

Share this post


Link to post

E1M3 turns really badass, I think. Quite eerie, and I've saved it somewhere with the intention of using it somewhere. Don't know where, though. Not sure on E1M8 at all.

Share this post


Link to post

I love the choir chords in E1M8, although I notice the pitch bends aren't also vertically flipped.

Share this post


Link to post

I said I'd share the tool I wrote, and so share I shall.

It's command-line based - generally it's "java -jar MIDIFlipper.jar <input> [<output>] [-preserveOctaves]". I've put in two .bat files that will run on any single file you drag into it, however, in the interest of speeding things up. (Sorry for the lack of GUI; maybe someday...)

"-preserveOctaves" does its best to reposition the center of each track as close as possible to the original track's center, so bass lines remain bass lines, instead of getting all squeaky. It's not perfect, though, particularly if a single track goes both very high and very low, so some manual adjustment would likely be recommended.

If you omit an output file, it'll put it in the same folder as the input, with "(flipped)" appended before the ".mid" (or "(flipped, octaves kept)" if relevant).

Also note that this doesn't work on MUS files, just MIDI ones. If you try to flip something that doesn't have a proper MIDI header, it'll abort.

Also, this program also flips pitch bends and RPN fine/coarse tuning, something I've noticed some MIDI flippers lack.

Oh, and here you go, Gez. Dunno if that'd actually work on the Xbox itself, but there you are, all the same.

EDIT: Updated link to point to Dropbox instead of Fileden. That last link for Gez is just gone, though.

Share this post


Link to post

this is fantastic!
thanks a lot for sharing the midiflipper I am running all my songs through it now to listen, really enjoying so far it is really great

Share this post


Link to post

This is one of the coolest things I've used in a while. There's nothing like "rediscovering" all the music I've written in a new way.

Share this post


Link to post

That took longer than expected.
It seems MIDI composers aren't too worried about note duration - which makes a monumental task out of quantizing them just so, and sliding tracks so the downbeat lines up. E1M1 sounded like ass marinade. Here are the rest:

http://speedy.sh/v8buB/d-e1m2ir.MID
http://speedy.sh/NFRy3/d-e1m3ir.MID
http://speedy.sh/kpSBD/d-e1m8ir.MID
http://speedy.sh/P5Y3n/d-e2m4ir.MID
http://speedy.sh/fusnt/d-e3m2ir.MID
http://speedy.sh/7QJNP/d-e3m3ir.MID
http://speedy.sh/hy2k6/d-e3m8ir.MID

Share this post


Link to post

Quite an interesting thread. I'd wonder what would happen were one of the original developers decided to flip Bobby's compositions at the last moment before Doom was releasd? :D Gave it a shot flipping some tracks of my own. D_RUNNIN is now vaguely familiar of the Mission Impossible theme, and D_VICTOR is literally a parody of itself.

http://speedy.sh/xYVAF/d-victor.mid
http://speedy.sh/RwDDg/d-inter.mid
http://speedy.sh/B2Ugz/d-runnin.mid
http://speedy.sh/kpCYD/d-bunny.mid
http://speedy.sh/7Q28P/e1m7.mid
http://speedy.sh/dk5Q9/e1m9.mid
http://speedy.sh/kpCJD/dm2int.mid
http://speedy.sh/JE6WY/e2m9.mid

Share this post


Link to post

Change the inverted E1M7 a bit and it starts to sound like an anthem.

Share this post


Link to post

These are great. :)

D_E2M2 sounds very odd, both happy and still oppressive. D_READ_M is funny. D_EVIL becomes all garbled; but some songs are good enough to be used.

Share this post


Link to post

heh. these are pretty cool, actually! the majority of the songs in the OP sounds very happy-go esque and pretty weird, but E1M2 and E1M3 sounds pretty awesome. E1M8 sounds like the opposite of Sign of Evil. :p

Share this post


Link to post

Shadow Hog, thank you infinitely for that program!

I'm glad so many people like the sound of these inverted tracks. Now if only we could vertically flip Doom maps...

Share this post


Link to post

Well, it's certainly possible...
But no one will be able to post it here.

Share this post


Link to post

Yep you can post edited doom levels, they just aren't accepted into idgames because it could clog the archive with shovelware.

Share this post


Link to post

And I will dump the next wile of my time now into listening to all of these. I should check Wads & Mods more often.

Share this post


Link to post

something complex like havanna smooth would be interesting.

I never seem to 'get' music theory, but a "stay-in-scale flip" might be intersting, like if in c major, this sequence:
c,d,e,f,g
would become:
c,b,a,g,f
(with c as the pivot)
instead of a more chromatic flip, where all 12 notes are considered.

I remember doing similar for a melody I made long ago, except I played both the normal and inverted simultaneously.


edit: oh yeah, I think most have played it already, doom2 map1 upside down... d runnin inverted would be fitting. Gives a weird sense of vertigo:
http://filesmelt.com/dl/upsidedown222.wad
(oh yeah good point, needs complevel 9 because there's fake floors to simulate falling and stuff or something, I forget).

a simple program that inverts maps vertically would often make unplayable maps (because there's often ceiling height differences that are too big to walk over) and lifts and stuff break. but it would still be interesting and way easier than doing it by hand.

Share this post


Link to post

Funny how this wad looks so different with -complevel 2 and -complevel 9.

Share this post


Link to post
Gez said:

I believe that they are fine, except for a slightly slower tempo, as they have a chance of having been created from Bobby Prince's original MIDIs instead of the MUS lumps.

No fraggin' way. They might've not been converted with mus2midi, but they were converted with SOMETHING -- they're all type 0 one-track MIDI sequences with 1/89 timebases and approx. 86 BPM tempos.

As for MIDI sequences that DO come directly from the ones converted for the game -- try tracking down the "doom95.mid" files used in Doom 95 installers. I've found Doom's "Sinister" (D_E2M6) and "Victory" (D_VICTOR) and Doom II's "The Demon's Dead" (D_DEAD) in various versions.

Share this post


Link to post

I'm sorry to bump this old thread, but the link to Shadowhog's MIDIFlipper program is no longer active and he hasn't responded to my PMs. Does anyone have a copy of this program they could post?

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