forum

Map Speed Changer - Release! (Now with source code!)

posted
Total Posts
50
Topic Starter
MillhioreF
Please use smoogipooo's program instead, this one is obsolete and outdated!

old
As a solution to the problem posed in this thread, I spent some time putting together a quick Java program to automatically adjust the speed of notes in .osu files. Of course, you'll need to edit the map's mp3 to bring it to the speed you want first, or else the map won't really make sense at all.

Click here to download! (current version: 1.32)
Source code on github

For instructions and details, READ THE README! That's what it's there for!
If the program says that java is an unrecognized command, download the JRE here: http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html

Known issues:
  1. If the output filename is the same as an existing filename, it'll overwrite. I'll fix this later.
  2. Stack leniency, difficulty settings, etc. aren't adjusted to fit the new speed. Low priority for the moment.
  3. .osu files with Unicode don't work. I've attempted to fix this but haven't succeeded yet, it's top priority though!
Planned features:
  1. Config file for toggling various settings. I've already put some framework in for this!
  2. Drag'n'drop support for .osu files. Not easy to do as far as I know, but I want it to happen.
  3. Maybe a GUI someday..?
[box=How to edit mp3 speed in Audacity]0. Open your mp3 in Audacity
1. Go to Effects -> Change Tempo
2. Put in the percent change you want, or the current BPM and desired BPM. BPM change doesn't take decimans for some reason, so just multiply the numbers you want by 100.

3. Export your mp3 and add it to the song folder. Enjoy!
Aqo
oh hey that's nice

<3

Does your program snap notes to timeline as well as timeline lines and re-calculate slider speeds with the timelines speed changes?
Yarissa
This isn't against the rules?
Aqo

Kaoru wrote:

This isn't against the rules?
why would it be

all it does is let you create maps faster that you can otherwise create manually

except I tried this now and it doesn't seem to work for me. Millhiore sup?
[CSGA]Ar3sgice
the quick brown fox - the big black (300% speed ver)

Topic Starter
MillhioreF

Kaoru wrote:

This isn't against the rules?
Nah, it makes separate unranked .osu files, it doesn't change the speed of existing ones.


Aqo wrote:

Does your program snap notes to timeline as well as timeline lines and re-calculate slider speeds with the timelines speed changes?
It doesn't forcibly snap to timeline, but it does recalculate timing sections to change slider speeds. Hopefully the program is accurate to within 1ms of timeline, too.


Aqo wrote:

except I tried this now and it doesn't seem to work for me. Millhiore sup?
What's not working? Does the program run successfully?
theowest
I haven't actually tried it yet, but boy am I excited to do so. Good job on this!
FlameseeK
This is such an awesome idea, I really appreciate it!

It didn't work for me either though, I keep getting the message - "'java' is not recognized as an internal or external command". I tried to fix this issue, but haven't managed to do yet. Any thoughts?
lolcubes
FlameseeK

lolcubes wrote:

Try http://www.java.com/en/download/index.jsp
I tried reinstalling Java, but I still got the same message. Not exactly sure what I need to do yet, but if this works properly for millionaire and other people then there must be something wrong that I gotta fix.
Topic Starter
MillhioreF
lolcubes's link is for in-browser Java - you probably need the JRE for this. http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html

I'll go ahead and add this to the OP just in case.
FlameseeK
Ok sir, I'll give it a try now and let you know how it works. Thanks for the help! 8-)
theowest
Can you possibly make an example map where you've used this program of yours? I don't really want to make one myself just to try it out.
Topic Starter
MillhioreF
Oh, sure. Here's one I have saved in my puush (will edit this post later to add more)
http://puu.sh/1PppR

Also see http://osu.ppy.sh/s/68740, which WASN'T made by my program but rather was made manually, and served as the inspiration.
theowest

MillhioreF wrote:

Oh, sure. Here's one I have saved in my puush (will edit this post later to add more)
http://puu.sh/1PppR

Also see http://osu.ppy.sh/s/68740, which WASN'T made by my program but rather was made manually, and served as the inspiration.
Thanks! You could maybe add it to the OP too if you want, just as an example.

here's another map: http://osu.ppy.sh/s/58452
Winshley
Would be more awesome if there's also MP3 converter as well. :P

I was thinking that the offset might differ to the converted MP3 because there's a chance that the converted one may give some milliseconds of silence at start, but that can still be done manually though.

Another issue is probably the OD, as slow notes are harder to time than fast ones under same OD.
Topic Starter
MillhioreF
I'd make it convert the MP3 too if I knew how... Audacity doesn't seem to have an API for using it remotely, so I don't think it's feasable. I might release an update to automatically adjust the difficulty stats at some point, too.
Aqo
So I've been trying to use this and it's reallly nice, GJ Millhiore.
One thing tho, can you add an option to edit speed by bpm and not be percent?
i.e. right now if I want to convert 200bpm to 300bpm I have to type "150" for 150% speed, I want an option to type "200" and "300" to get that.
This would be useful when trying to convert speeds like 163.85 into 180 which is really hard to do with % change. (needless to say, please add support for floats in this and not just integers)
Topic Starter
MillhioreF
Floats are supported already, of course. I should be able to add raw BPM support too, good idea - I'll look at doing that later today.

Update: Version 1.1 released! Adds the requested BPM specification as well as fixes a couple small issues. Download link is in the OP, or here for the lazy: Download
Aqo
Thanks a ton! <3
show more
Please sign in to reply.

New reply