Previous Page

by TurbomanAlco at 4:37 PM EDT on September 25, 2012
I kinda of stopped working on this but I could upload what I have done so far into a .rar. I think Yuuto has come along allot further than I have though. I'll come around to it soon though. I have other projects I'm working on at the time.
by Yuuto at 10:10 AM EDT on October 2, 2012
Okay, since I saw the MIDI format doesn't support everything the BMS sequences need (especially the higher amount of instruments, the different dynamic parts and looping) I decided to write a player in C# instead of an converter.
I tested the playback with a dummy sound and it sounded okay so far. At the moment I'm implementing the playback of samples using the WSYS/IBNK files.
by peronmls at 6:03 PM EST on December 26, 2012
Has a soundfont been created yet?
by logan28469 at 2:11 AM EST on December 30, 2012
Yeah, a soundfont would be awesome!
by dj4uk6cjm at 4:37 PM EDT on May 25, 2013
Sorry for the bump but I am very interested in this too, any progress on the soundfont yet?
by Benjamin at 1:52 PM EDT on May 26, 2013
Wouldn't we have to know loop points and stuff? wsyster doesn't give out loop points for .aw files
by DrWindows96 at 2:32 PM EDT on June 23, 2013
So, have you already finished the Zelda TP soundfont or do you have a new part like the parts from the Faron Woods or the Death Mountain?
by dormouse at 6:26 AM EDT on July 17, 2013
Terribly silly, but I saw the name thing on the first page. I think either:

-It could just be RSF (Revolution). I would personally dislike this as it lacks the "original" factor, but eh.
-DSF could be renamed to KSF (Katana), and DSF would then be the name of a possible NGC/Wii format (Dolphin). Aside from the above, I also like this because it matches with the likes "USF", even in intention.

(I dislike "CSF", yet have no problem with "2SF". \O_o/)
by dj4uk6cjm at 2:43 PM EDT on July 17, 2013
I tried to rip the wav samples from tp but it didn't work, it doesn't use the szs file like super mario galaxy 2 does. It does however use the Z2Sound.baa file. Would renaming that to szs work? Because I really want a tp soundfont to see the light of day :) doubt I'll be working on it unless we get a whole team to collab.
Attention! guys I made a discovery!!! by dj4uk6cjm at 6:21 AM EDT on July 19, 2013
I finally did it! I was able to get a hold of the wav samples from the Z2Sound.baa using audiorippers code!!!!

The line of code is:

baad Z2Sound.baa
ren "Z2Sound.baa.0.wsys"
for %%1 in (*.wsys) do wsyster %%1
del Z2Sound.baa

----------------------------------

I repeat! The line of code is

<i>"baad Z2Sound.baa
ren "Z2Sound.baa.0.wsys"
for %%1 in (*.wsys) do wsyster %%1
del Z2Sound.baa"</i>

----------------------------------

I got thousands of wavs after running the batch (too many to count!) more like 16,000 if you want an estimate and don't thank me, thank audioripper as I edited his code from the super mario galaxy 2 sample rip.

I can't upload all the files right now as it's a little more than half a gigabyte but whats the point anyway without knowing the loop points? Merely for entertainment I guess until we find the loop points...enjoy.



edited 7:50 AM EDT July 19, 2013
by peronmls at 11:12 AM EDT on July 19, 2013
It's not really a discover. It's been done already and I just did it a couple days ago to identify some samples
by dj4uk6cjm at 3:19 PM EDT on July 19, 2013
Really? I couldn't find it anywhere in the search, well at least it's here for anyone who wants to rip all the samples from their own copy of the game.
by Yuuto at 5:07 AM EDT on July 23, 2013
I have done 146 instruments from the main sample bank so far. If you're interested I could merge them to one SF2 and upload it.
by peronmls at 11:22 AM EDT on July 23, 2013
@Yuuto
Go ahead! It will do for now. =]
by Yuuto at 2:48 PM EDT on July 23, 2013
TP Bank 11 (Incomplete)
Due to MIDI does only support 127 patches per bank the presets have to be selected manually.
by dj4uk6cjm at 3:40 PM EDT on July 23, 2013
Thank you so much for this Yuuto, downloading now. :)
by starerik at 9:36 PM EDT on July 27, 2013
Several programs (Kontakt 5 for example) claim the soundfont is invalid. :S

Also, I have an idea for loop points. Reading through the Wii dev documents it seems the loop points are stored within the audio files themselves. However, Nintendo don't use the WAV format for their files, they use AIFF. If someone could try rewriting the software to dump the AW files to AIFF it would be awesome. I mean… the loop meta data COULD be lost in translation. It's worth a try.
by Yuuto at 5:23 AM EDT on July 28, 2013
I used Viena to create the SoundFont and tested it with SynthFont, worked fine.

Also, the loop points are set properly due to they have been read from the sample banks.
by dj4uk6cjm at 7:00 AM EDT on July 28, 2013
Starerik try opening the soundfont in your daw with sfz player (e.g. fl studio, sfz player) it worked for me :) and wow :O how did you find/read the loop points for the samples Yuuto? Can viena do it? I've been trying to find the loop points for the dumped sample wavs for a long time. I use Vsampler to loop some of the wavs to some success but not perfect.
by Yuuto at 7:37 AM EDT on July 28, 2013
I found out that the WSYS banks contain information about each sample and after I have understood the structure I have done the looping manually using a hex editor.
But now I've written a tool to show that information. It would also be a good idea to write a program that creates the SoundFont automatically but I don't know how envelope data is handled.
by dj4uk6cjm at 9:33 AM EDT on July 28, 2013
Cool, do you mind sharing the tool you made? :3
by starerik at 10:12 AM EDT on July 28, 2013
Yuuto: Did you also find the sample keymaps? Root key, lowest and highest key?

Edit: Oh, weird. Redownloaded the soundfont and now it works.

edited 10:18 AM EDT July 28, 2013
by Yuuto at 6:47 AM EDT on July 30, 2013
I'm going to upload it but I have to modify some components first.

@starerik
Yes I can also access the keymaps. Otherwise I couldn't have created the SoundFont ^^

edited 9:02 AM EDT July 30, 2013
by starerik at 1:16 PM EDT on July 30, 2013
Well, you could have guessed the keymaps. Heh. But that's awesome. Looking forward to the tool.
by muddyfish at 4:55 PM EDT on October 9, 2013
Does anyone have a complete soundfont yet?

Sorry about bumping this thread though...
Bump by MCMorrise at 4:15 PM EDT on October 13, 2014
Sorry to resurrect a way-dead thread, but has anything happened with this yet?
by Kein at 8:43 PM EST on January 24, 2015
@Yuuto

Sound font does not work properly with SynthFont2 or does not work properly at all. If I assign it to track from ZTP it just plays drums. May be I'm doing something wrong.
by dj4uk6cjm at 2:29 PM EDT on March 27, 2015
One thing that has been bugging me all this time is why we don't have a sample for wolf link howling, you know from the howl stone songs in TP? Is it just streamed or doesn't exist?
by kode54 at 7:47 PM EDT on March 31, 2015
Maybe it's procedurally generated?
by G-Boy at 1:12 PM EDT on May 4, 2017
I'm very sorry for resurrecting this old thread, but can anyone tell me how to rip soundfonts from Twilight Princess?
by bxaimc at 2:03 PM EDT on May 4, 2017
Google is your friend ;)
by TheUltimateKoopa at 3:41 PM EDT on May 4, 2017
Not necessarily, bxaimc.

I've often had that problem where Google actually does not help.

What I ask:
"How do you install [insert thing]?"

What I get:
"How to uninstall [insert thing]"
by G-Boy at 2:55 AM EDT on May 5, 2017
@bxaimc
The only relevant result I got when I used Google was this thread, but I didn't find an answer in it.

edited 3:01 AM EDT May 5, 2017
by Kagemori at 3:42 AM EDT on May 5, 2017
"The only way to do it through actualy ripping (and not recording the music directly through the game) is to get a midi file from the bms files and use the music banks from the aw files and put them together."

Hey wait a minute, is it possible to join a midi file with its .aw? It's what I need for Pokemon Box!!

edited 3:43 AM EDT May 5, 2017
by G-Boy at 3:51 AM EDT on May 5, 2017
@Kagemori
That's exactly what I want to do (convert the BMS files to MIDI files and convert the AW files to SF2 files and put them together).
by bxaimc at 8:07 AM EDT on May 5, 2017
*googles Nintendo aw extractor*

wwdumpsnd04.zip

Contained within the first link (the stream ripping tools page for this forum) that google spits out.

Just modify the source code and recompile to make it dump raw instead of converting to wav. As far as turning it into a soundfont is beyond my capabilities.

edited 8:10 AM EDT May 5, 2017
by Kagemori at 8:50 AM EDT on May 5, 2017
Oh nevermind, the format I meant was .wt not .aw, oops.
by Jasper at 11:36 PM EDT on May 5, 2017
my vgmtrans fork should get you what you need

https://ci.appveyor.com/project/magcius/vgmtrans/build/artifacts
https://github.com/magcius/vgmtrans
by G-Boy at 4:44 AM EDT on May 6, 2017
@Jasper I tried to open the ISO file of TP, but the program stopped responding. What did I do wrong?

edited 4:44 AM EDT May 6, 2017
by Nisto at 4:56 AM EDT on May 6, 2017
You can't pass the entire disk image to the program. You need something to extract the relevant files first. IsoBuster can extract from GameCube images.
by G-Boy at 7:20 AM EDT on May 6, 2017
@Nisto Is there a free program that can extract the files?
by Nisto at 8:18 AM EDT on May 6, 2017
Yeah, sorry, you can also use VGMToolbox. I'm just used to using IsoBuster.. handles most of my needs.

edited 8:19 AM EDT May 6, 2017
by dj4uk6cjm at 4:44 PM EDT on May 6, 2017
An even easier and less time consuming program to use would be the Dolphin Emulator, just browse (not open) for the ISO in question in the emulator and then right click it and go to properties and filesystem and from there you can look for the desired sound/bgm/data folder you want, right click again and hit extract.
by AnonRunzes at 4:52 PM EDT on May 6, 2017
@dj4uk6cjm - Dolphin though requires a 64-bit system as of this writing, in this case Windows 7 and beyond.
by dj4uk6cjm at 5:03 PM EDT on May 6, 2017
@AnonRunzes the older ones like 3.0 I believe which are still on Dolphins website have 32-bit versions for Windows 7 and work for said extracting.
by AnonRunzes at 8:43 PM EDT on May 6, 2017
@dj4uk6cjm - Well I just stick with vgmtoolbox anyway since I don`t have the tendecy to sometimes lose out many updates for an older build. It supports Windows XP even on its latest version, too.
by G-Boy at 4:40 AM EDT on May 7, 2017
@Nisto
I digged into the ISO with VGMToolbox, and I only found AST files in the AudioRes folder. Are these the same as AW files? I can't open them with VGMTrans, anyway.

EDIT: I found AW files too, but I can't open them with the VGMTrans fork either.

edited 4:47 AM EDT May 7, 2017
by rebooter23 at 10:22 AM EDT on May 7, 2017
Do we even have a way to play the tracks?
by Tkibbs at 9:19 AM EDT on May 22, 2017
Hey @Yuuto
I congratulate you on the significant progress on the soundfont!
By chance, are you about finished with the soundfont?
No pressure haha
Take your time.
Or maybe I haven't downloaded the most recent one?
The reason I was curious was because this soundfont is literally my most favorite of all time.
I'm obsessed with the Twilight Realm atmospheric sounds for some reason lol
Anyways, I'm thoroughly enjoying the current soundfont!
I'm just curious if there are more instruments you're working on..
If you can't do any of the above, it's perfectly fine.
We are all human, and we are all consumed by time and life.


edited 9:21 AM EDT May 22, 2017

edited 3:13 PM EDT May 22, 2017

edited 3:15 PM EDT May 22, 2017
by kode54 at 5:57 AM EDT on August 29, 2018
Is there a tool for extracting the BMS sequences from the sequence.arc file? Searching this bloody forum is a nightmare. I already have VGMTrans built with the Qt UI.
by datschge at 12:07 PM EDT on August 29, 2018
http://www.letmegooglethat.com/?q=extracting+BMS+arc+site%3Ahcs64.com
scnr

edited 12:07 PM EDT August 29, 2018
by kode54 at 5:07 PM EDT on September 1, 2018
It wasn't that obvious when I tried, but thanks. It was like the second result, I think.
by datschge at 6:08 PM EDT on September 1, 2018
Glad it helped. ^^;
by Xerxes at 9:33 AM EDT on April 9, 2019
bump
Since no form of BMSDEC or anything like that I could find was capable of converting the final boss music I just used the TP soundfont to do this https://www.dropbox.com/s/3a1y3cb1gawh759/tpganonnovolslide.ogg?dl=0

edited 9:34 AM EDT April 9, 2019
by Nonchalantree at 10:42 PM EDT on September 9, 2020
Time for another resurrection! I'm going to complete the TP SoundFont once and for all. But I had trouble understanding Yuuto on how to get the AW file number, (likely because of those missing characters that appear like this "�").

So for example, I have instrument #3's (hex is 026B). But I can't figure out where to find the corresponding AW file.

Anyone here who does understand how to do this?

EDIT: Nevermind, I found a VGMTrans fork to do the dirty work for me.

edited 11:41 PM EDT September 9, 2020
by Nonchalantree at 1:17 AM EDT on September 13, 2020
actually I take back that nevermind. Magicus's VGMTrans fork has trouble with getting some of the instruments.
by Blockteen at 4:54 PM EST on November 28, 2020
As with everyone here, I too am interested in TP SoundFont creation that's why I created a forum account to share my findings... and also to bump the topic ¯\_(ツ)_/¯.

Using the wsyster method is great if you want all the wave files, but I want the complete collection... root keys and loop points. Sure I could figure that out using Yuuto's guide, but I don't dabble in hex.

As Nonchalantree pointed out, Magicus' fork of VGMTrans has been able to spit out sf2 banks. But upon further inspection, his code only scans the first aw file. I know this because when you open the .baa file alone the log reads it can't locate BgmWave.0.aw. Also renaming a different file to be 0 results in a crash. If you open that bank_11 converted by VGMTrans in a soundfont editor you'll get 240 instruments of repeated BgmWave.0.aw sounds.

I'm not a coder, but if someone else can pick up where Magicus left off you might be able to write code to search for the rest of the .aw files in the wsys collection.
by BenOn90 at 8:00 PM EDT on August 22, 2021
Anyone having trouble with the Staff Roll’s bms files from Twilight Princess ? I tried to convert them into midi files but all I got is a 41o unreadable file.
Generated TP SoundFonts by Yuuto2 at 4:18 PM EST on February 12, 2023
In case anyone is still interested: WIP TP Soundfonts
The folder contains an SF2 for each instrument bank found in the game (5x SE, 3x BGM).

The SoundFonts were generated automatically from the BAA audio archive. However, this is still an work in progress version.

Things that do work:
- sample looping
- key zones
- sample panning for percussion instruments
- volume multipliers for each instrument and key zone
- pitch multipliers (tuning) for each instrument and key zone
- release envelope (kind of)

Things that don't work yet:
- most of the envelope stuff

Mapping the game's envelope data to the ADSR model used in SoundFonts is kind of difficult, since the game has much more possibilities and freedom in designing the envelopes. Not only are there potentially more phases then the typical attack, hold, sustain and release, but the system also offers 4 different curves for envelopes. That is why the release phases of most samples seem to be a bit short.

The whole tool is work in progress and needs some serious refactoring, but I will release the source code eventually when I'm happy with the results.
General Updates by hat at 1:41 PM EDT on July 9, 2023
Managed to stumble upon this forum after being invested enough in finding useable sound-fonts / midi's for the game. Read through the whole thing and man it's like finding a hidden gem on the web.

Anyways read Yuuto's message above as they've been much more dedicated to this. Honestly probably the only usable version relies on them, without us having the source-code or other discoveries to follow the stepping stones.

We've got at least a semi-tangible sound-font to work with, but the midi's still remain + some effects and other things. Will definitely be waiting out even for another 5 more years for more progress, considering how close the finish line is.

Looking forward to it!

edited 10:12 AM EDT July 10, 2023
by orangeisbetter at 11:52 PM EDT on September 17, 2023
I'm just popping in on this subject, as I've been really into this whole music thing for a little while now. I tried using the php code to convert .bms to .midi, but it doesn't seem to work. Has anyone else run into this problem? It could be my php configuration, but I don't know
BMS Converter by hat at 12:03 PM EDT on October 7, 2023
I managed to whip this together in a week a few months ago. You can use Yuuto's mostly working soundfont, but this can convert the BMS's with reasonable accuracy.

Github Link

There is some clunkyness with pitch's in some songs, but it's a big improvement from the old converters. In truth though, the MIDI format itself is so limiting; would be much more useful if someone had a sequencer / live-player instead that supports all of J2A's systems for 1:1 pure audio.

Zant's theme is a great example as it uses PPQN changes which MIDI doesn't support. It still works don't get me wrong, but it isn't a 1:1 conversion for a couple of the songs and I doubt it'll ever be due to MIDI limitations.

Some people have used it for other similar games that use the J2 audio system (Super Mario Galaxy) and it seems to work fine.

This version should correct the broken pitch bends that the old VGM-Trans fork used. Either way it was about time that we moved away from the old php converter. So hopefully this helps!
Live BMS player in the making by Yuuto2 at 12:01 PM EDT on October 8, 2023
You are correct @hat, a live player would be really helpful. As you already pointed out, MIDI and also SF2 are quite limiting and thus not really suitable for ripping music and sound effects in this case.

That is why I have been working on a live player/renderer for quite some time now. It aims to mimic the JAudio system (currently only exactly the version Twilight Princess uses) as closely as possible. For the unknown stuff I am reverse-engineering the game's code in a disassembler/decompiler, which is a very tedious task and consumes a lot of time.

I also used this live-playing approach to render BMS to MIDI earlier this year and it could already handle most of the dynamic commands, see here. That thing was just a proof of concept that converted BMS to MIDI live and passed the MIDI events and the pre-generated soundfont to a MIDI renderer to play it back (with all limitations, that is).

I'm really sorry it takes so long, but this is my all-time favorite long-term project and I have high standards regarding my work on that. Also, I switched from C++ to Rust mid-progress because I wanted to learn that language anyway.

TL;DR: BMS live player/renderer (TP version) in progress, there is steady but slow progress, time is scarce and I cannot make a guarantee for a finishing date.
by Yuuto2 at 12:10 PM EDT on October 8, 2023
If you really want to see the state of the "old" C++ POC I abandoned, I perhaps can find some time to make the project a bit more portable and usable and eventually upload that code.
Twilight Princess BMS player preview by Yuuto2 at 4:30 PM EST on February 20, 2024
I spend a lot of time on trying to implement a live BMS player recently and got quite some work done. I am now able to playback TP's music sequences in realtime with an output already close to the original.

See for yourself with this little command line tool I've hacked together. In order to be able to use it, you need to extract the "Audiores" folder (which includes the Wave folder) and .bms files from the game ROM. Then run the following in a command prompt:

bmsplay.exe --path <path to Audiores folder> --bms <path to sequence> play

So for me it could be: bmsplay.exe --path "C:\Users\yuuto\TP\Audiores" --bms "C:\Users\yuuto\TP\Audiores\Seqs\seqs\deathmountain01.bms" play

When playing back an interactive sequence that contains segment jumps (like most of the boss themes do), you can enter the segment number you wish to jump to in the console. E. g. when playing e_fireman and entering 1, the "vulnerable" part is played. When entering 2, you jump back to the main track. Feel free to experiment.

Bonus: Instead of "play" you can pass "render" together with an output filename to render 2 minutes of a sequence into a wave file.

Example:
"C:\Users\yuuto\TP\Audiores" --bms "C:\Users\yuuto\TP\Audiores\Seqs\seqs\deathmountain01.bms" render --out "C:\Users\yuuto\Desktop\deathmountain01.wav"

Please keep in mind that at the moment this tool is just for testing purposes. Thus it's not very convenient to use, largely untested on other systems except for my very own and may break any time. The executable is Windows-x64-only but the project itself is cross-platform. It is still under heavy development and it may take a while to produce stable results.

That being said, here's a short summary of what works what doesn't:
- Envelopes are fully supported.
- Support for surround sound is built-in, but the tool uses a stereo mixer in the last step. But there will be 5.1 mixing in the future.
- Most features are implemented in a way that mimic the original very closely.
- Reverb however is emulated very roughly.
- On segment jumps, all releasing notes are cut off.
- Tremolo & vibrato work. See e_goma02 and e_zant (segment 8/9).
- Support for some BMS commands and more advanced sound registers is still missing, but most of these are only used by the SFX sequences.
- There are still some sound artifacts like crackling or sudden volume changes.

There is still a lot to and a lot of details left to implement, but I think this is a solid foundation and implementing this has definitely been a lot of fun.

edited 4:32 PM EST February 20, 2024
by Mouser X at 11:29 PM EST on February 21, 2024
This is awesome! I really hope to see the work on this continue! I'd love to have the ability to listen to native Gamecube sequences on the PC, rather than recordings! I really hope this leads to other, previously unripped games, becoming available (Skies of Arcadia: Legends, for example, or Four swords on the Gamecube, or maybe Final Fantasy: Crystal Chronicles...). Though, unfortunately, it *does* require that the game in question is using the Nintendo dev kit for its audio, so obviously, this still leaves a lot of games as unavailable.
by hat at 11:28 PM EST on February 25, 2024
Super awesome @Yuuto2! I think we've definitely come to the consensus that live players are definitely the way to go, must've opened up a lot of freedom not being constricted to MIDI and soundfonts.

Love how e_zant actually now works with PPQN changes, and the howling tracks function. Theres a few expected audio artifacts (snowboard has some crackles).
Hopefully it'll get some more features like individually exporting the sub-tracks and changing their volumes (like in holy_forest where everything is combined but changed in-game through triggers). Either way, some massive progress!
by Yuuto2 at 7:43 PM EST on February 26, 2024
You're totally right, the MIDI+SF2 method has been way too limiting. On the other hand, this freedom requires a complex implementation, but in my opinion this is totally worth it.

None of the tracks have a PPQN change, as far as I can tell. Ticks per beat is set to const. 120 at the beginning of the root track for each music sequence. Maybe you mean tempo changes? e_zant has some of them.

One of the next things I will implement is volume ramping which should eliminate most audio artifacts.
Next step is to add support for playing back sound effects. After that, enabling/disabling and volume control of single tracks will be next. I think creating a convenient tool that actually offers some useful settings for playing/rendering would also be a great idea. Oh and getting all this stuff on GitHub.

Previous Page
Go to Page 0 1

Search this thread

Show all threads

Reply to this thread:

User Name Tags:

bold: [b]bold[/b]
italics: [i]italics[/i]
emphasis: [em]emphasis[/em]
underline: [u]underline[/u]
small: [small]small[/small]
Link: [url=http://www.google.com]Link[/url]

[img=https://www.hcs64.com/images/mm1.png]
Password
Subject
Message

HCS Forum Index
Halley's Comet Software
forum source