1. osu! forums
  2. osu!
  3. Development
posted

Hi everyone,

today i want to share a little project of mine with you (For christmas? No, thats just since i have time now :D )

Im talking about the osuBeatmapGrabber.
Currently it is just a beta version, but it works for now ;)

What does it do?

  1. Scan your osu! songs library for all beatmaps
  2. filter out double songs
  3. export the mp3's in a seperate directory tagget by Interpret, Title, Album (osu!) and set the beatmap background as album sample image


Just run the executable, wait a bit and you have all your songs ready for your music player or phone (or tablet, or mp3 player... whatever).

Installation

  1. Download the ZIP-Archive from link above
  2. Extract where ever you want
  3. Run "Osu Beatmap Grabber.exe"
  4. The installer will download the newest version to your AppData directory with the updater itself. Also it will create a ShortCut on your Desktop (only if not runned from target directory - so you can delete the Shortcut)
  5. The installer starts the application automatically and close itself.
  6. You can delete the extracted files and the archive - All files are stored in your AppData directory!

Planned Local Features

  1. Analize users osu! directory for beatmaps
  2. Statistics for this beatmaps (local - how many songs, how many diffs, how many images, used disk space, how many maps without bg and and and...)
  3. DONE! Export: Grab all MP3's, pack into one directory and set tags - perfect for exporting your song collection to mobile devices (beta feature, see above)
  4. Sync Export: See Export, but here the main issue is to hold the export up to date with new songs
  5. Add own filters and rules (Some songs you dont want on your phone? Or an interpret is written two times different? You prefer TV Size to full size?

Planned Server Features

  1. All found beatmap IDs send to a global server
  2. The server will catch all available song informations (via osu API)
  3. Build your local beatmap info DB
  4. Comment Beatmaps and discuss about it (The beatmap threads mostly get forgotten sometime)
  5. Search Beatmaps
  6. Download Beatmaps (like osu!direct) with many filtering options
  7. Download beatmaps you dont have automatically (Not at once, this would produce too much server load :D ) - just wait and you get map for map...
  8. Sync your songs with own mobile devices (Own Server Required to install the API and store the files!)
  9. + 2016-01-15: User registration for limitted features (Marked colorized)
  10. + 2016-01-15: Sync your Collections between osu! instances
  11. + 2016-01-15: Store a list of your local beatmaps on server
  12. + 2016-01-15: Sync your beatmaps between osu! instances (Limitted to downloadable maps)
  13. + 2016-01-15: Priorize the download of beatmaps, e.g. Most played, Newest Added, all Maps from user x (If the user share his maps collection!)


I'm looking for translators in different languages and one or two guys who will help developing the whole system.
With four different Servers and two different clients we have a bunch of work - your invited to help us out!

Available Features

  1. (2015-12-24) V0.1: Export Maps (local)
  2. (2016-01-16) V0.2: Download and Update automatically
  3. (2016-05-14) V0.4: Avoid album titles if you dont want, select your own target directory.
  4. (2019-02-13) V0.5.1: Avoid songs from deleted beatmaps getting purged away.

Contribute or report Bugs and Feature Suggestions


You can help us to improve the whole Software now!
For this just access our Ticket-System - here you will se the tickets and what we're working on. Also you can see the upcoming updates and when they comes. With a free account you can add Issues or just Ideas for the future of the software.
Also you will be able to see the Guys working on this ;)

Explore The Sourcecode on GitHub


You can view the sourcecode here!

See all my projects on GitHub

App.exe Main Application
Newtonsoft.Json.dll Internally and for communication the JSON file format is used. Classlibrary for JSON parsing
osbg.ico The icon file for the shortcut
Osu Beatmap Grabber.exe The Auto-Updater and STUB application
taglib-sharp.dll Class-Library for media file tagging

View and add #tickets at https://tracker.kagu-chan.de/projects/osu-beatmap-grabber

v0.5.1
------
+ [ADD] Add a beta release stream (available at http://sources.kagu-chan.de/?p=osbg_install_beta&current=1)
+ [ADD] Add the CHANGELOG and a FILELIST to the installation directory
+ [ADD] Add the tiny sweet application icon to the application
+ [ADD] Added option to keep songs from already deleted maps
+ [UPD] Rephrased texts
+ [FIX] The client itself if now stated as "Osu Beatmap Grabber" instead of "OsuSongGrabber" in process list
+ [UPD] [Updater] Make updater closable and minimizable
+ [UPD] [Updater] Lot of code clean up
+ [FIX] [Updater] The version number is now part of the assembly, not just a naming reference in threads
+ [FIX] [Updater] The updater itself if now stated as "kcUpdate" instead of "Osu Beatmap Grabber" in process list
+ [ADD] [Project] Resurrected the project - it's not forgotten and still alive
+ [ADD] [Project] Project moved to a private gitlab instance - a mirror to github will follow

v0.4
----
+ [FIX] #73: Fix AccessViolationException in appdata - now user can select target directory
+ [FIX] #74: Fix crash if osu! directory not found - user input if not found
+ [FIX] #77: Fix crash if osu! config not found - user input if not found
+ [UPD] #78: Run Update-Actions before any other action happens
+ [ADD] #88: Added ablility to disable Album
+ [UPD] #89: Set Album Interpret to make correct sort on smartphones possible
+ [UPD] #90: Title Info improved - now more details
+ [UPD] #92: Better filter for songs and TV sizes
+ [FIX] #93: Fix OutOfMemory Exception
+ [ADD] Display errors, but dont stop working
+ [ADD] Added message for UI release plans
+ [UPD] #84: [Updater] Get rid of kcUpdater.dll
+ [FIX] #85: [Updater] Fix thread lock bug

v0.3
----
+ [FIX] Prevent application crash due to long filenames
+ [FIX] Prevent application crash due to corrupt registry values - it will ask for your osu directory in case of error (workaround solution)
+ [UPD] Fix Sleep-Times (Small timeouts)
+ [ADD] Application rename updatable files - this is required to update the updater itself
+ [ADD] [UpdateServer] Serve files in subdirectories
+ [ADD] [Updater] Download directories if required
+ [UPD] [Updater] Change Working Directory (Some Apps dont start if you are not in starting directory)
+ [FIX] [Updater] Fixed default configuration
+ [UPD] [Updater] Changed release stream

v0.2
-----
+ [ADD] Added AutoUpdater executable
+ [ADD] Added SourceCode to GitHub
+ [ADD] Implemented the first version of the Update Server

Thanks for reading, using and have fun :)

posted
i love you.
posted
It sounds interesting, I'll try it right now
posted
Is that a feature to save a list of all your osu songs and download them later? It's been to many times I've started from scratch.
Also screenshots would be a nice touch.
posted
Currently it supports not more then save your songs (not the beatmaps) in a different directory and tag them for a export to (as example) your cellphone or mp3 player.
Later it will be possible to download beatmaps automatically.

The feature you want require a very big webspace - so this is no option. Maybe later ;)
posted
You're certainly one of the coolest person on earth
posted
works well. love how i got 1k songs from this and its at the point where going on my phones music app is slow lolol.
posted

Dionysaw wrote:

Is that a feature to save a list of all your osu songs and download them later? It's been to many times I've started from scratch.
Also screenshots would be a nice touch.
Hi, i thinked a bit about this topic and found out, that the basic idea of this software should exactly can support this point. With limitations - for sure.

But i will implement a function like "backup your osu collection" when the main online features will be released.
posted
i want to kiss you
posted

Kagu-chan wrote:

Dionysaw wrote:

Is that a feature to save a list of all your osu songs and download them later? It's been to many times I've started from scratch.
Also screenshots would be a nice touch.
...but i will implement a function like "backup your osu collection" when the main online features will be released.
:D your awesome
posted
I guess i will finnish the updater today to keep it updated - Also i will port the VB code to C# and add a first version of simple UI - this will be served via the new updater then ;)

With the updater i will share the first part of source code on github - the C# rewrite will also be shared (So i do not push the old, nearly obsolete code to git then)
posted
Glad to hear that
posted
(My cellphone is a bit baka...)

Currently i have some trouble with some header data from my update server - after that i will implement the progressBar to show the Update progress and then i can hopefully release it...
posted
I just uploaded the newest version!

Changes:
+ Added AutoUpdater executable
+ Added SourceCode to GitHub
+ Implemented the first version of the Update Server
posted
I just uploaded the newest version!

Changes:
+ Prevent application crash due to long filenames
+ Prevent application crash due to corrupt registry values - it will ask for your osu directory in case of error (workaround solution)
+ Fix Sleep-Times (Small timeouts)
+ Application rename updatable files - this is required to update the updater itself
+ [UpdateServer] Serve files in subdirectories
+ [Updater] Download directories if required
+ [Updater] Change Working Directory (Some Apps dont start if you are not in starting directory)
+ [Updater] Fixed default configuration
+ [Updater] Changed release stream
Update from v0.2 to higher versions
Since i have made a configuration mistake the update would delete your exports. To avoid this i have changed the release stream.

Please do the update the following:
  1. Redownload the Installer
  2. Delete the file "%appdata%/OsuBeatmapGrabber/_kcUpdate.json"
  3. Start the newly downloaded Installer


This will create the fixed configuration and keep your user files as they are. Also it allows to update the updater in future.
posted
I've just unlocked the Tracker for everywhere!

Contribute or report Bugs and Feature Suggestions


You can help us to improve the whole Software now!
For this just access our Ticket-System - here you will se the tickets and what we're working on. Also you can see the upcoming updates and when they comes. With a free account you can add Issues or just Ideas for the future of the software.
Also you will be able to see the Guys working on this ;)

I'm looking for translators in different languages and one or two guys who will help developing the whole system.
With four different Servers and two different clients we have a bunch of work - your invited to help us out!
posted
*w*
posted

Version 0.4 out now



After a long time i released a new version of the tool - with some importing fixes!

Installer


The installer runned into a thread lock on computers which are computing too fast (sounds weired, but yep, threading is complicated...) - I think i have fixed this issue.
If your installer does not update, just redownload and run it. You have nothing else to do!
If your installer runs smoothly, the update will grab the new installer anywhere...

Bugfixes and improovements


As suggested from Blankz_ i added the option to disable the albums. Albums can cause a display issue on smartphones only showing the first found thumbnail found in any song.
Also i added the album info (if not disabled) to album artists - This fix the issue that smartphones (and iPad) does not sort the songs correctly.
You can now select where your songs get saved.
A better filtering for alredy added songs is added now. Not perfect, but better then before. Also it founds TV sizes better.

More infos in changelog.

I really recommend to update, since the previus version contained an memory allocation bug which lets the software uses up to 1.5~~ GB of RAM - this is just too much and not good for your computer... (And caused to dont tag songs)
View and add #tickets at http://tracker.kagu-chan.de/projects/osu-beatmap-grabber

+ #73: Fix AccessViolationException in appdata - now user can select target directory
+ #74: Fix crash if osu! directory not found - user input if not found
+ #77: Fix crash if osu! config not found - user input if not found
+ #78: Run Update-Actions before any other action happens
+ #88: Added ablility to disable Album
+ #89: Set Album Interpret to make correct sort on smartphones possible
+ #90: Title Info improved - now more details
+ #92: Better filter for songs and TV sizes
+ #93: Fix OutOfMemory Exception
+ Display errors, but dont stop working
+ Added message for UI release plans
+ #84: [Updater] Get rid of kcUpdater.dll
+ #85: [Updater] Fix thread lock bug
posted
it now works. i can see all the thumbnails on my phone instead of the same background for all. thank you so much <3.
i love the project.
posted
Good job so far!
Keep it up
show more
Please sign in to reply.