forum

maimai DX in-game music collection

posted
Total Posts
2
Topic Starter
[ Stefan ]
Link: https://drive.google.com/drive/folders/1SEdimWk_4b2ho5itQVT3Gp-itJC4ejMd?usp=share_link

Complete with MP3 audio, some ID3 metadata like song art and BPM information available in maimai DX's chart format.

Took me one day to write the program to take the Unity textures, integrate CppSharp and learn how to use the LAME encoder...all in C#...

The music is inside maimai DX itself, so it is not some low-quality Youtube compressed audio format that you download through yt-dlp/youtube-dl (whatever), although the quality here isn't very good either due to CRIware also stole some techniques (cough cough psychoacoustics) from MP3 to compress their audio so the uncompressed audio source still sound crappy. I can confirm this because after decoding AWB into waveform then into MP3, their sizes are comparable.

This also means all the music is around...around 2 minutes to 2 minutes and a half, which is a perfect range to me. Being an arcade player for more than 6 years, I got used it after all.

Ripper source code: TBR. There are way too many shitty code I written and I'm very ashamed of myself if I open source it like that, so before I cleaned it up nice and clean, I'm not releasing it. (that's why I don't like Linux Kernel, the source code reads like shit)

The music collection is somewhat incomplete, most notably some music does not have a relevant chart at the time, and the ripper failed to recognize this edge case, will be fixed alongside the source code release and fill up the void. This however also means the metadata for those music without charts at the time won't be compiled in, and only its name will be included.

Also, some of the music is removed due to licensing agreement, for example, Daydream Cafe is removed in Universe according to here (which is the target for ripping atm, I do have Splash+ to rip some of them, however)

About BGA: I can extract that as well, but the CRIware USM format is proprietary and poorly encrypted (which is just a bunch of rolling XOR at this point, even worse than RC4...). I can rip that as well but it will take time for me to port the decrypt routine to C# and maybe vectorize them. At this point I think it is enough and focus on the music part first so it is less prioritized.
Ymir
This is genuinely impressive man, I'm surprised this thread went under peoples radar.


Great stuff :D
Please sign in to reply.

New reply