proposition on iMUSE audio enhacement

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

Post Reply
Cirion81
Posts: 36
Joined: Mon Oct 31, 2005 5:02 pm
Location: Germany

proposition on iMUSE audio enhacement

Post by Cirion81 »

Hello all of you,

frankly, I am quite thrilled because of what is going on in the audio restauration project of BASS in the General Discussion forum. I have often read the request to do a MP3 conversion for iMUSE games (such as MI2 etc.) - always turned down because of the coplexity of the used iMUSE system. What always bugged me, is the fact that with for example CMI Lucas Arts did something similar, using prerecorded sound instead of live midi-hardware.

I have often pondered if a project similar to what they are planning with the music of BASS couldn't be feasible with iMUSE games. As far as I gathered form previous posts, the main problem with iMUSE games are:

1. instruments are turned on and off according to what is currently going on in the game

2. there are music transitions when entering a new room which are faded in and out

3. I believe to have read, that there are also scripts synchronized to certain music events (or the other way around).

I had a look at the music files from MI2 to look into the above matters:

1. for this I looked at the music at the Scabb Island swamp. As further one travels into the swamp, the more instruments turn on. I think this could be reproduced by recording the instrument tracks seperately, turning them on and of and mix them online. Modern soundcards can do this on the fly.

2. Now here comes the really ugly part. I looked into the music from Woodtick on Scabb Island. I gathered that there is a main music file played when walking between the ships. When entering a new room (e.g. the Laundromat), main music stops, a transition is played and then the new music starts. Same happens when leaving the place, although this time there exist several transitions, which one is played is chosen according to the current position of the music.
The fine thing though is, although main music and the transitions are all stored in the same file, that they are stored in different tracks.
So my proposition would be to record the tracks seperately, and do a mapping. For example when one leaves a place there has to be made the decision which of the possible transition-tracks in the iMUSE file has to be played. Instead of playing the iMUSE track the according prerecorded sound-sample has to be played (this for example could be done via a look up table). Of course this proposition can only be done if there is indeed made such a descision within ScummVM (I don't know that much of the interna)

3. Linking script events to a prerecorded soundfile should be possible.

I admit, this would be a lot of work to do, but then - what if it takes a year to complete?
But I still think it is feasibel to extract all the seperate tracks from the original iMUSE files, record them with pofessional hardware and then play them at the right time.

So, what do you think? Can this be done? And, are we allowed to do this (don't know what the laywers of Lucas Arts would say to such a project)?

-Christian
User avatar
eriktorbjorn
ScummVM Developer
Posts: 3525
Joined: Mon Oct 31, 2005 7:39 am

Re: proposition on iMUSE audio enhacement

Post by eriktorbjorn »

Cirion81 wrote:As far as I gathered form previous posts, the main problem with iMUSE games are:

1. instruments are turned on and off according to what is currently going on in the game

2. there are music transitions when entering a new room which are faded in and out

3. I believe to have read, that there are also scripts synchronized to certain music events (or the other way around).
I don't know everything iMUSE can do, but I'll add two more that can happen at any time during the music:
  • The music can be made to play out of tune.
  • The tempo of the music can change.
Both these effects are used early in the Day of the Tentacle intro.
Cirion81 wrote:So, what do you think? Can this be done? And, are we allowed to do this (don't know what the laywers of Lucas Arts would say to such a project)?
Personally I think it sounds like much more work than it's worth, but don't let that discourage you. Just let us know when you have a working prototype. :twisted:
User avatar
olki
ScummVM Developer
Posts: 36
Joined: Wed Sep 21, 2005 1:14 pm
Location: Cardiff, UK

Post by olki »

Of what use would it be to have Scumm games support MP3? As the music is copyrighted you are not allowed to distribute it anyway. So the only people who would benefit from MP3 support are a handful of musicians who have high-end midi equipment lying around.
I believe it's too much trouble for too little reward.
User avatar
LogicDeLuxe
Posts: 432
Joined: Thu Nov 10, 2005 9:54 pm

Post by LogicDeLuxe »

If you really want to record each tracks separately and let the engine mix them together, this should work with the exception of those dynamic speed and tune variations.
It will be in deed much more complex than CMI. Good example is the Barbery Coast, where you hear a main track and an alternate melody for each person you can talk to. However, unlike the midi approach, each of those version is a complete downmix, keeping the required space and CPU time to a minimum.
The MT-32 midi consist of up to 8 melodic and one percussion track which you'd have to mix in real time. And even no more than 8 melodic tracks will play simultaneously, there might be even more tracks than that.
Also, you need a way to sync your remix with the iMuse-SysEx in the midi.
Also a DVD probably would be too slow to seek all the tracks on the fly, so you'd have to keep all this on the harddisk.

For the dynamic speed and tune variation, you might implement a time strech effect, though that would sound nothing like live played instruments anymore. Besides the DOTT intro, the speed thing is used at the drinking contest in Monkey 2.

It would be real nice if the entire soundtrack would sound something like the Underground Tunnels Orchestral Remix here: http://highland.mixnmojo.com/mi2.shtml
If you prefer 192kbps instead of 128kpbs, take this version: http://highland.mixnmojo.com/mi2/undergt2.zip

Concerning the copyright, LA doesn't seem to have something agains remixers in general. They merely have asked webmasters to remove Indiana Jones and Star Wars scores, but allowed them to keep the Soundtracks of the other games, even ripped midi and wav tracks from the games. I think, such a feature should be okay if nobody makes profit with them.
User avatar
sev
ScummVM Lead
Posts: 2277
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Post by sev »

Remeber, that iMUSE is basically a programming language, albeit simple. There are hadful of opcodes, loops and also hooks which get called by SCUMM engine on certain event, so they change iMUSE program flow.

What COMI/FT/DIG have is called digital iMUSE, and is a much extended language. Rewriting iMUSE in diMUSE is not trivial task.

All of that means that there are not just fade-ins, blends and tempo changes. "There is more than meets the eye".

So what you can do here is to create special soundfont for each game. Or, say, write some virtual device in a manner of MT-32 which will interpret SysEx commands and do something saner with them.

Another such subsystem is AKOS, which is format for costumes in latter games. It went to insane extent in Humongous Entertainment games. I.e. SCUMM games actually aren't written just in SCUMM, there is a whole family of languages.


Eugene
Cirion81
Posts: 36
Joined: Mon Oct 31, 2005 5:02 pm
Location: Germany

Post by Cirion81 »

@eriktorbjorn:
ok, to work around these two problems is in fact tricky. As LogicDelux described this can be solved, but I agree with him that stretching the sound wouldn't sound that good (at least in comparison to the quality of the remaining music when recorded with pro hardware).

@olki:
I exactly thought of this the other way around - so that people with no professional midi-hw can experience the quality of the music which currently only few people with high-end midi hardware can.
And after all there are ways to control that the enhanced audio package can only be played with ScummVM and the corresponding original game-files.

@LogicDeLuxe
I see your point that there would endeed be a lot of mixing to do, but as I stated before modern soundcards are capable of that (at least with Windows and DirectX). As with the copyright issue I thought exactly of the same page as you have posted the link to. Also http://soundtracks.mixnmojo.com/ are allowed to publish music (without of course the mentionend Indiana Jones and Star Wars). At least form this site I know that Lucas Arts is aware of it and doesn't sue them. But then this might indeed be a gray-zone.
Personally I think it sounds like much more work than it's worth, but don't let that discourage you. Just let us know when you have a working prototype. Twisted Evil
Hey, I dind't say that I wouldn't be willing to contribute.
If nothing comes out of this proposal, there exists now a list of good causes why converting iMUSE music to MP3/OGG/whatever can't happen, so at least you guys might from now on be rid of the constant question "when it is going to happen? / how do I do it? / can't you do it?" :wink:
Post Reply