View previous topic :: View next topic |
Author |
Message |
KarlOKeeffe Basic Member
Joined: 31 Oct 2003
|
0. Posted: Sat Nov 01, 2003 4:29 pm Post subject: Dancing Monkeys: Automatically Generate step files for DDR |
|
|
I thought some of you might be interested in my University project for automatically generating step files for StepMania and DWI, called Dancing Monkeys.
Given an arbitrary piece of music, Dancing Monkeys will analyse that music to extract the BPM and gap value. It will also extract the structure of the music in terms of repeating sections, find pauses and find suitable locations for freeze arrows.
Using this information it will generate a single step chart for that music at any given difficulty level. It will do all this without requiring any input from the user.
It generates both StepMania and DWI step files.
More information is available at:
http://www.monket.net/dancingmonkeys/
including the project report, and source code.
Let me know what you think. The current implementation is very slow, but with some work could be made many orders of magnitude faster. But before I put in that work I'd like to know if anyone is interested.
Karl |
|
Back to top |
|
|
k//eternal Trick Member
Joined: 10 Jun 2003
|
1. Posted: Sat Nov 01, 2003 8:44 pm Post subject: |
|
|
That sounds really, really cool o_o;
Is that even possible?
(By the way, the current version isn't working for me, it just says "ERROR: Sorry. No help in figuring out the problem...") _________________
do the right thing... trust yourself, and you'll know the way |
|
Back to top |
|
|
FirebirdGM Trick Member
Joined: 24 Mar 2002 Location: Calgary, Canada |
|
Back to top |
|
|
Ebisumaru Trick Member
Joined: 06 Jul 2003
|
3. Posted: Sun Nov 02, 2003 7:05 am Post subject: |
|
|
Wow I used this last night. Amazing. It used a lot of lefts, but who cares. It's still amazing. Takes a while for a song, but it's worth it. |
|
Back to top |
|
|
KarlOKeeffe Basic Member
Joined: 31 Oct 2003
|
4. Posted: Sun Nov 02, 2003 7:09 am Post subject: |
|
|
OK, I'm going to need some help figuring out the source of this error. If you get the error can you let me know which OS you are using, and copy all the output that Dancing Monkeys gives you. And any other relevant information.
Thanks.
Ebisumaru: Glad you liked it
Karl |
|
Back to top |
|
|
[S4U] Evo Trick Member
Joined: 21 Oct 2002 Location: El Paso, Tx |
5. Posted: Sun Nov 02, 2003 8:37 am Post subject: |
|
|
i keep trying and i know i am doing it right but it keeps giving me the same error
Quote: | ERROR: Unable to find LAME mp3 decoder. |
help? _________________
|
|
Back to top |
|
|
KarlOKeeffe Basic Member
Joined: 31 Oct 2003
|
6. Posted: Sun Nov 02, 2003 8:49 am Post subject: |
|
|
Evofusion: Can you copy and paste all of the text in the command line window when you try and run it. This will make it much easier to figure out whats wrong.
Make sure that you are in the Code: | Dancing Monkeys\bin\win32\ | directory, rather than just
I apologise for all of the errors people are finding, it was a University project, so I didn't have much time to focus on ease of use or bug hunting.
Karl |
|
Back to top |
|
|
[S4U] Evo Trick Member
Joined: 21 Oct 2002 Location: El Paso, Tx |
7. Posted: Sun Nov 02, 2003 9:15 am Post subject: |
|
|
Quote: | C:\>"C:\Documents and Settings\Administrator\Cookies\Desktop\Dancing Monkeys\bin
\win32\DancingMonkeys.exe" "C:\Program Files\StepMania CVS\Songs\new\sleepwalk\C
lub - DJ Venom - Insomnia.mp3" 4 8 10 "C:\Program Files\StepMania CVS\Songs\new\"
ERROR: Unable to find LAME mp3 decoder.
EXITING |
there
im pretty sure im doing everything right (?) _________________
|
|
Back to top |
|
|
KarlOKeeffe Basic Member
Joined: 31 Oct 2003
|
8. Posted: Sun Nov 02, 2003 9:27 am Post subject: |
|
|
Ahah!
I've spotted the problem. You have run DancingMonkeys.exe directly from the C:\ drive. This is a very subtle difference from changing to the "C:\Documents and Settings\Administrator\Cookies\Desktop\Dancing Monkeys\bin\win32\" directory and running the exe there.
Try:
Code: | cd "C:\Documents and Settings\Administrator\Cookies\Desktop\Dancing Monkeys\bin\win32\"
DancingMonkeys.exe "C:\Program Files\StepMania CVS\Songs\new\sleepwalk\Club - DJ Venom - Insomnia.mp3" 4 8 10 "C:\Program Files\StepMania CVS\Songs\new\" |
By changing to the directory containing the DancingMonkeys.exe first, it is then able to correctly find the LAME mp3 decoder.
That should work for you.
Let me know if you have any other problems.
Karl |
|
Back to top |
|
|
TOTALdude Trick Member
Joined: 28 Jun 2003 Location: East Yorkshire |
9. Posted: Sun Nov 02, 2003 10:08 am Post subject: |
|
|
I can't figure this out at all >_<
I just click on the program, then the window pops up for 0.001 seconds and then exits.
I dun understand what to do x_x _________________
DDR + PPP player |
|
Back to top |
|
|
k//eternal Trick Member
Joined: 10 Jun 2003
|
10. Posted: Sun Nov 02, 2003 11:02 am Post subject: |
|
|
KarlOKeeffe wrote: | Try:
Code: | cd "C:\Documents and Settings\Administrator\Cookies\Desktop\Dancing Monkeys\bin\win32\"
DancingMonkeys.exe "C:\Program Files\StepMania CVS\Songs\new\sleepwalk\Club - DJ Venom - Insomnia.mp3" 4 8 10 "C:\Program Files\StepMania CVS\Songs\new\" |
By changing to the directory containing the DancingMonkeys.exe first, it is then able to correctly find the LAME mp3 decoder. |
Unfortunately that's what I'm doing...
Quote: |
C:\Dancing Monkeys\bin\win32>DancingMonkeys.exe "C:\Dancing Monkeys\tengoku.mp3" 2 7 9 "C:\Dancing Monkeys\output\tengoku\"
Initialised.
input: C:\Dancing Monkeys\tengoku.mp3
(44.1 kHz, 2 channels, MPEG-1 Layer III)
output: ..\..\Temp Music\Temp Song.wav (16 bit, Microsoft WAVE)
skipping initial 1105 samples (encoder+decoder delay)
Frame# 4095/4099 160 kbps MS
Decoded Mp3 / Copied Wav
Loaded song.
Normalised song.
ERROR: Sorry. No help in figuring out the problem . . .
EXITING
C:\Dancing Monkeys\bin\win32> |
_________________
do the right thing... trust yourself, and you'll know the way |
|
Back to top |
|
|
Cyan Garamonde (Nosaj) Trick Member
Joined: 08 Apr 2002 Location: Crouching before a river of poison, staring at the blood on my hands, vowing to have revenge... |
11. Posted: Sun Nov 02, 2003 7:46 pm Post subject: |
|
|
Interesting. This is what people have been asking for for some time now. I'm going to run the executable on my laptop tonight, and I'll try out the MatLab version tomorrow when I have access to a school computer.
Edit: damn. Same results:
Code: | C:\Temp\Dancing Monkeys\bin\win32>DancingMonkeys.exe "C:\Temp\IIDX 9th Style\Abyss -The Heaven's Mix-.mp3" 3 5 8 "C:\Temp\Temp2"
Initialised.
input: C:\Temp\IIDX 9th Style\Abyss -The Heaven's Mix-.mp3
(44.1 kHz, 2 channels, MPEG-1 Layer III)
output: ..\..\Temp Music\Temp Song.wav (16 bit, Microsoft WAVE)
skipping initial 1105 samples (encoder+decoder delay)
Frame# 4496/4500 160 kbps MS
Decoded Mp3 / Copied Wav
Loaded song.
Normalised song.
ERROR: Sorry. No help in figuring out the problem . . .
EXITING
C:\Temp\Dancing Monkeys\bin\win32> |
Maybe I'll have better luck with the MatLab version _________________
|
|
Back to top |
|
|
PlatinumHawke Trick Member
Joined: 18 Mar 2002
|
12. Posted: Sun Nov 02, 2003 9:19 pm Post subject: |
|
|
Interesting program and all, but it leads to my one, big complaint. Can't people actually MAKE their own steps? I do all my encoding by hand, and I somewhat tolerate people that use the record feature in SM/Xstep, but completely letting a program do all the work? I have to frown at that. I can really see this being used in some future TournaMix. And we all know that paint-by-numbers anything isn't good. |
|
Back to top |
|
|
Phrekwenci Administrator
Joined: 27 Feb 2002 Location: New York, NY |
13. Posted: Sun Nov 02, 2003 10:38 pm Post subject: |
|
|
I want to see setting for difficulty by DWI artist. Like:
Vivaldi Amuro (some what easy but fun)
MJE & Udderdude (a bit more difficult)
BemaniRuler (I can't pass that on my feet) _________________
|
|
Back to top |
|
|
KarlOKeeffe Basic Member
Joined: 31 Oct 2003
|
14. Posted: Mon Nov 03, 2003 4:25 am Post subject: |
|
|
I have uploaded a new version of the program (http://www.monket.net/files/dancingmonkeys/Dancing%20Monkeys%201.01.zip) which *should* fix the crashing after normalisation bug, although I can't be sure as I haven't managed to recreate this bug on my own system.
Those of you who know what you are doing can download the changed exe (http://www.monket.net/files/dancingmonkeys/DancingMonkeys101.exe), and save yourself bandwidth.
Otherwise just download the whole caboodle from: (http://www.monket.net/files/dancingmonkeys/Dancing%20Monkeys%201.01.zip)
'Dude with the Japanese Name': In response to your complaint, no I don't think people can actually just make their own steps. There are a lot of people in the world with varying talents, and very few of those people will have the talent (or the time to spare) to make their own DDR steps.
My project gives them the power to create steps automatically, to whatever music they want, without needing a talented fellow to make the steps for them.
But you did hit the nail on the head, the computer generated step files my project produces are good, but they will never have the quality and flair of hand generated step tracks. They will never be a challenge in a TournaMix.
Phrekwenci: I'm not sure I understand what you're after, you can already specify the difficulty level in feet (1-9), but are you requesting some sort of system whereby it generates steps in the style of an existing step track? |
|
Back to top |
|
|
Phrekwenci Administrator
Joined: 27 Feb 2002 Location: New York, NY |
15. Posted: Mon Nov 03, 2003 4:33 am Post subject: |
|
|
KarlOKeeffe wrote: | Phrekwenci: I'm not sure I understand what you're after, you can already specify the difficulty level in feet (1-9), but are you requesting some sort of system whereby it generates steps in the style of an existing step track? |
It was more geared as a joke really. People who make DWIs (DWI Artists) have certain general styles to their DWIs, as everyone does.
So if the program imitated the style of DWI authors, it would be interesting to see what the program would come up with. _________________
|
|
Back to top |
|
|
PlatinumHawke Trick Member
Joined: 18 Mar 2002
|
16. Posted: Mon Nov 03, 2003 10:43 am Post subject: |
|
|
KarlOKeeffe wrote: | But you did hit the nail on the head, the computer generated step files my project produces are good, but they will never have the quality and flair of hand generated step tracks. They will never be a challenge in a TournaMix. |
Despite that, people probably will enter a file made in this. People have stolen files (Shopping A to Z), so I wouldn't put it past people to try something with this. And rightfully, I can tell the difference between Notepadded files and SM/Xstep made files, but this might be different. I'll have to download this and see what the format is like, to see if I can tell the differences in hardcode (unless someone wants to post up what the DWI code looks like straight from the generator).
I think you should have placed a limit on this, like in a demo for a program, so that it would only generate steps for 60 seconds of music. That would total prevent it from being used for TM usage.
The names PH, btw. |
|
Back to top |
|
|
Cyan Garamonde (Nosaj) Trick Member
Joined: 08 Apr 2002 Location: Crouching before a river of poison, staring at the blood on my hands, vowing to have revenge... |
17. Posted: Mon Nov 03, 2003 12:22 pm Post subject: |
|
|
タカの[プロジェクトH] wrote: | And rightfully, I can tell the difference between Notepadded files and SM/Xstep made files, but this might be different. I'll have to download this and see what the format is like, to see if I can tell the differences in hardcode (unless someone wants to post up what the DWI code looks like straight from the generator). |
Not necessarily. Anyone can rearrange the code in a dwi file to look a certain way. Looking at the code in no way guarantees you know how it was created.
タカの[プロジェクトH] wrote: | I think you should have placed a limit on this, like in a demo for a program, so that it would only generate steps for 60 seconds of music. That would total prevent it from being used for TM usage. |
He already admitted, though, that this program would never generate steps with the same flair as hand-written steps; a computer has no 'instinct' for what would be good, so to speak. This would invariably show through in a dwi file entered in TournaMix.
I think this is more about offering people a chance to make a dwi for a song they really like but don't have the time to spend on finding the BPM, gap, and making up steps. If nothing else, this program is worth having for it's bpm- and gap-finding capability (if it does indeed accurately find them).
That brings up another issue: tempo changes. I would imagine, given how new this program is, that it currently cannot handle tempo changes; I don't mean cosmetic changes, like the Maxes, but rather something like Insertion. I don't know, maybe it can; I haven't gotten the program to work yet. But I would stake money on it that the program would never come up with something unique and fun such as QQQ, or other songs that put tempo changes to interesting uses. _________________
|
|
Back to top |
|
|
Oobrakadoobra Trick Member
Joined: 03 Apr 2003
|
18. Posted: Mon Nov 03, 2003 1:33 pm Post subject: It dosen't work for some songs |
|
|
For some reason when i try it on songs it says this
_______________________________________________________
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\Owner>"C:\Dancing Monkeys\bin\win32\DancingMonkeys.exe
"
Dancing Monkeys by Karl O'Keeffe - 28/06/03
Arguments are:
* Filename of music to create step file for.
e.g. C:\Music\Prodigy\Firestarter.mp3
* Easy difficulty rating (in feet)
* Medium difficulty rating (in feet)
* Hard difficulty rating (in feet)
* Directory to output results e.g.
e.g. C:\StepMania\Songs\Dancing Monkeys Group\
C:\Documents and Settings\Owner>Cd..
C:\Documents and Settings>Cd..
C:\>"C:\Dancing Monkeys\bin\win32\DancingMonkeys.exe" "C:\Dancing Monkeys\bin\wi
n32\balzac - sad nos. 99.mp3" 4 6 9 "C:\Program Files\StepMania\Songs\Dancing Mo
nkeys Group\"
ERROR: Unable to find LAME mp3 decoder.
EXITING
C:\>cd "C:\Dancing Monkeys\bin\win32"
C:\Dancing Monkeys\bin\win32> DancingMonkeys.exe "C:\Dancing Monkeys\bin\win32\b
alzac - sad nos. 99.mp3" 4 6 9 "C:\Program Files\StepMania CVS\Songs\new\"
Microsoft Windows XP [Version 5.1.2600]
Initialised.
input: C:\Dancing Monkeys\bin\win32\balzac - sad nos. 99.mp3
(44.1 kHz, 2 channels, MPEG-1 Layer III)
output: ..\..\Temp Music\Temp Song.wav (16 bit, Microsoft WAVE)
skipping initial 1105 samples (encoder+decoder delay)
Frame# 2595/2599 128 kbps MS
Decoded Mp3 / Copied Wav
Loaded song.
Normalised song.
WARNING: Unable to Output truncated version of song. Please copy original to out
put directory.
Outputted truncated normalised song.
Monoed song.
Smoothed song.
Normalised mono and smoothed data.
Thresholded data
Found peaks and troughs.
Found beat positions.
Calculated peak to beat offset.
Brute forced the interval tests.
Calcualted Gap and BPM.
ERROR: Unable to confidently find BPM.
EXITING
C:\Dancing Monkeys\bin\win32>
C:\Dancing Monkeys\bin\win32>
C:\Dancing Monkeys\bin\win32>
______________________________________________________
It is unable to confidently find the BPM, what gives? _________________
What can i say about NEPA??? Nothing much but that is sucks......alot......yea......alot |
|
Back to top |
|
|
spoonsman Trick Member
Joined: 01 Dec 2002
|
19. Posted: Mon Nov 03, 2003 1:42 pm Post subject: |
|
|
I just scanned through the project report and it says that it currently doesn't take tempo changes into account.
With that out of the way, The program got pretty far until it crashed for me. I don't know how to copy and paste code from a command line so I just took a screenshot. |
|
Back to top |
|
|
|