Mod Library

Started by Axxy, March 14, 2013, 17:09:59

Previous topic - Next topic

Axxy

Recently, I have been messing around with a program called Mod Library written by Saga-Musix (yes, he of ModArchive and OpenMPT).  It can be downloaded from here:

http://sagagames.de/?programm=modlib

Some features:


  • Small executable (about 300 KiB)
    Genuine MDB database with SQL-based search engine at cyberspeed!

    Supported module formats: IT, MO3, MOD, MTM, S3M, UMX, XM

    Directories and whole hard disks can be searched for modules. Furthermore, single files may be added to the archive.

    All module texts are fully searchable: File name, module title, sample and instrument texts, comments sections aswell as your own personal notes.  File sizes, file dates and track lengths are also searchable.

    Module infos are displayed like in WinAmp but with a non-proportional font which supports ASCII art

    Modules may be played within the program, but may also be opened with any other program (f.e. a tracker).

    The archive can be maintained with one single click: You can automatically remove files that do not exist anymore from the archive and update module information if a module was changed.

    Changed modules are recognized using a MD5 hash

    The database may be exported as a HTML report. M3U and PLS playlists are also supported.

    Multilingual

Took about 20 minutes to read all 76,000+ modules, obviously it dropped a few thousand because the format was not supported, but anyway. At least it got them all unlike DP or XMPlay that would just lockup trying to read that lot in. :)

From within the program you can playback any module in the database, although the player just plays the mod, there are no playback options. The playback is quite impressive, even some of those 100+ virtual channel IT mods sound pretty good.

The most interesting aspect of this program for me, is the database functionality.  I think that this must be the only program, that actually allows you to search for everything in the modules themselves, totally brilliant idea.

Pity, that it doesn't support a few more tracker formats..

I like the fact that you can play the mod, but it does suffer somewhat as you can't use a progress slider, backward or forward etc.

I found how having different windows open were annoying and had to be closed before doing something else, pity the windows didn't become undocked and were independent of the main window.

It's always nice to see something new developed that has potential to be developed further and the database functionality I really like, would save loads of work keeping all that in one package, even the replay of the modules as well.

I suppose it's a sign of the times, tracker music now being so niche, or retro so to speak.  I wonder in how many iterations of Windows will we be unable to even play tracker music?

Asle

I have been about a something related to that. Some kind of unique identifier for protrackers. Couldn't find the time to do it, however. This tool could be an alternative.
My goal was (and probably still is) to generate some kind of MD5/CRC on the core data:
- used patterns
- used samples

when protrackers are converted to a replay-friendly format, all these are trashed and the only way to find dupes in this case is to compare what's is really comparable (i.e. useful data).

Didn't find the time/motivation to do it, but using AMP database as support is definitely something that can be done.

Anyway, thanks for sharing :)
Sylvain

Saga

Hehe, funny to see this tool being digged up. I actually thought about rewriting ModLibrary in C++ with a bunch of extra features, and also base it on the soon-to-be-released libopenmpt, so that it can load a multitude of other formats, and also extract melody info (so that you can perform a search like "give me all songs that have a melody that goes like C E G E F D...").

Axxy

Quote from: Saga on June 01, 2013, 11:49:59
Hehe, funny to see this tool being digged up. I actually thought about rewriting ModLibrary in C++ with a bunch of extra features, and also base it on the soon-to-be-released libopenmpt, so that it can load a multitude of other formats, and also extract melody info (so that you can perform a search like "give me all songs that have a melody that goes like C E G E F D...").

Hehe...

Actually, the fundamentals of the program are very interesting, especially the database aspect of the program with the added bonus of being able to play everything from within one package...  8)

You ever get bored and feel like trying it out, i'll help test it for you!!!  ;)

I would just love to get away from keeping everything in order with textfiles, excel and access. One package with good db functions and/or playlist support and able to play the tunes from within, what more could one ask for?

deus-ex

Quote from: Saga on June 01, 2013, 11:49:59[...] and also extract melody info (so that you can perform a search like "give me all songs that have a melody that goes like C E G E F D...").
Wow! Great idea there, Saga.  :o (<- impressed, not shocked)

This could proof to be quite a powerful feature, e.g. when looking for a module you can't remember the name and/or artist but you now of a similar sounding module for reference. And last but not least this could ease to uncover copyright infringements like for example the infamous Timbaland case.
Best regards
deus-ex

Saga

QuoteYou ever get bored and feel like trying it out, i'll help test it for you!!!
That's probably the biggest problem, I currently lack time for such a project... For my own sanity's sake I really should finish it one day, though, hehe... (no more melodies playing in my head and I can't remember which module they are from!)

Also...
QuoteFrom within the program you can playback any module in the database, although the player just plays the mod, there are no playback options. The playback is quite impressive, even some of those 100+ virtual channel IT mods sound pretty good.
The program uses a fairly old version of BASS (hence the limited format support) and I even forgot to turn on volume ramping, so to me it sounds quite horrible. :)

Axxy

QuoteAlso...
Quote
From within the program you can playback any module in the database, although the player just plays the mod, there are no playback options. The playback is quite impressive, even some of those 100+ virtual channel IT mods sound pretty good.

The program uses a fairly old version of BASS (hence the limited format support) and I even forgot to turn on volume ramping, so to me it sounds quite horrible.

I was more impressed with how some of the .it modules with loads of channels played, compared to how I used to try and listen to them in previous software that did a terrible job of playing .it mods. Obviously, Sphenx's bubbles.it springs to mind and how most replayers really mangled those modules in the past and quite a few others.

Btw, does Bubbles.it hold the record for the most channels played in a mod?  219 channels is still the most I've seen played in a .it module...........


Unless you know different..........

Saga

Astral Chase will basically go as high as your tracker / player allows, mostly because of some stuck samples. ;) I got 240 channels in OpenMPT with that one, but if it didn't reserve the first x channels for non-virtual channels, it would surely reach 256 (max polyphony).

Axxy

Quote from: Saga on June 01, 2013, 16:49:29
Astral Chase will basically go as high as your tracker / player allows, mostly because of some stuck samples. ;) I got 240 channels in OpenMPT with that one, but if it didn't reserve the first x channels for non-virtual channels, it would surely reach 256 (max polyphony).

Thats a mad one. I too got 240 channels right at the end....  :o

deus-ex

Where can you find that info of used channels in OpenMPT? I went through every dialog a couple times without any luck. Please enlighten me.
Best regards
deus-ex

Saga

Look at the bottom-right corner while the tune is playing. ;)

deus-ex

Ah, that's actually quite hidden down there. I'd expect it somewhere in the top area, for example in the General info tab.

240 ch max for Astral_Chase_(Extended).it is confirmed, for Bubbles.it I got 231 ch max. Though I get slightly different results with Foo_DUMB. A couple years back I asked Kode54 (author of Foo_DUMB) to add a variable which stores the count of max simultaneous played Impulse Tracker channels, so one does not have to watch the Channel info all of the time during playback. In the screenshots below you can find that info in the status bar in the bottom left corner, note the value in brackets. According to Foo_DUMB Bubble.it uses more max channels than Astral_Chase_(Extended).it.
Best regards
deus-ex