pouët.net

OSX: Is there a tool for mass-grabbing samples from .mod / .xm / .s3m / .it modules?

category: music [glöplog]
 
Hi, is there an OSX tool for mass-grabbing samples from .mod/.s3m/.it/.xm inside a folder? I'm talkin about going through about 300 modules to grab all samples in .Wav format, without having to do it by hand.

any thoughts?
added on the 2014-07-12 12:10:43 by distance distance
WaveWorld had 1.3GB archive of samples ripped from MOD files. Get it here if it still works:

http://tracker.modarchive.org/

see also: kiarchive.zip and woolyss-chiptune-samples.zip

or take this player and change a few lines of code to do your sample ripping bidding:
http://xmp.sourceforge.net/

There is a common response for mod file sample rippers. It may be easier to generate your own from larger freely available instrument libraries. original samples are always better esp if used in competitions.
that last link, specifically the "show spoiler part" has what you are looking for. I like the reply from Mr. Breakfastsquid.
Uhm, waveworld is not a rip of module samples - it's a carefully (well, more or less) crafted collection of samples sampled from various synthesizers and other sources - which has of course been used extensively in a lot of modules.

I'm sure there is no such tool out there, but I'm sure that some mod player libraries out there can extract samples (no idea about xmp, but I planned to add this functionality to libopenmpt at some point in the future).

Also, linking to that chipmusic.org thread is pointless without even knowing the purpose - you may have noticed that distance/lackluster has been around here for a bit longer so certainly I doubt he's going to just "rip samples from modules because he badly needs fresh sounds" (lol). Maybe it's for a remix project or something?
Also, I think every tracker artist out there will have to admit that they ripped samples from other people in the past, whether it's ethically okay or not depends on a lot of things, e.g. whether it was a public domain sample to begin with (think ST-01), if credits were given or if the author explicitely allowed sample ripping.

In this context, a FAQ entry from Skaven's old website is much more interesting than this bland chipmusic thread.org:
Quote:
What kind of equipment do you use [to make your samples]? Can I use your samples in my songs?

For most of my older songs, I've been forced to rip all, or at least most of my samples, because I lacked the equipment. I've had the CZ-101 for a long time, but had nothing to sample from it with, unless a SB Pro or Gravis Ultrasound counted. The results I got with those were just far from satisfying.

In other words, feel free to use "my" samples. No-one has blamed me for ripping so far. However, I do try to hide my ripping by mixing, editing or otherwise mauling the samples quite a bit before using them, perhaps that's why.
hmm, seems the show spoiler part is purely for .mod.. not .it .s3m or .xm.
added on the 2014-07-12 17:40:55 by distance distance
hi saga musix.

yeah i'm referring to old packets of my own samples i have from the 90s and start of 00s. some of them are in ST3 format and i'm slowly loading and saving them to .it modules using schism tracker, but to then be able to extract them to actual samples (with loops). without having to save them one by one as wav, which is, well, going to take weeks to months.
added on the 2014-07-12 17:42:48 by distance distance
Oh, one thing you can try for now is OpenMPT's mass export (it will work well enough in Wine). Load a module, go to the sample editor and shift-click the save button there - it will then save all samples of the module at once in WAV or FLAC format.
@distance: try the following tool in dosbox. it has all the input formats you want and WAV output:

Sample Grabber Pro

It looks like a single file commandline tool. a *.bat file would need to be written to pipe your directory of files to the tool ala dir /s *.mod, *.it, *.wav, *.s3m /b > list.bat. then search and replace that file to have the tool exe in front of the files with any options on the end.
Seems like this will solve some issues :

Renoise Script to Export All Samples in module

Thanks everyone!
added on the 2014-07-12 19:06:08 by distance distance
Some months ago I coded a tool to exactly do that. It uses mikmod internally and extracts the sample bank so nearly all formats are supported too. I can provide the source soon. Also I had to make some changes to mikmod.
added on the 2014-07-13 08:17:46 by neoman neoman
neoman that's swell! is it windows only?
added on the 2014-07-14 10:27:57 by distance distance
haha i'm breakfastsquid
distance: Nope, it's platform independant. I put it on github. You can get it here:
https://github.com/andrewoesten/modex

Tell me if you were successful with installation and using it. It's not very pretty coded but it works quite well and supports all formats! =p

I also put the EXE here:
http://www.ancientspledge.com/modex.exe
added on the 2014-07-26 10:10:00 by neoman neoman
Quote:
distance: Nope, it's platform independant. I put it on github. You can get it here:
https://github.com/andrewoesten/modex

Tell me if you were successful with installation and using it. It's not very pretty coded but it works quite well and supports all formats! =p

I also put the EXE here:
http://www.ancientspledge.com/modex.exe


Thanks for the links! However, this is how well I got on:

brew install libsndfile-dev
Error: No available formula for libsndfile-dev
added on the 2015-03-27 06:56:22 by distance distance
Afaik you must call "brew install libsndfile" - this formula also includes both development and runtime files.
added on the 2015-03-27 08:16:01 by neoman neoman
Quote:
Afaik you must call "brew install libsndfile" - this formula also includes both development and runtime files.


Ouch. Now I got this:
brew install libsndfile
Error: You must `brew link libogg' before libsndfile can be installed
brew link libogg
Linking /usr/local/Cellar/libogg/1.3.2...
Error: Could not symlink include/ogg/config_types.h
/usr/local/include/ogg is not writable.
brew install libogg
Warning: libogg-1.3.2 already installed, it's just not linked

I guess I'm just not clever enough for this biz.
added on the 2015-03-27 08:23:40 by distance distance
Someone wrote a bug report here with a similar problem: https://github.com/bbcrd/audiowaveform/issues/19

"Deleting /usr/local/inclue/ogg, then brew install libsndfile finally got that part working."
added on the 2015-03-27 08:52:35 by neoman neoman
Quote:
Someone wrote a bug report here with a similar problem: https://github.com/bbcrd/audiowaveform/issues/19

"Deleting /usr/local/include/ogg, then brew install libsndfile finally got that part working."


Thanks! I used this and removed 6 other files, then got libsndfile installed, then tried to get libmikmod, which was installed to /local/usr/Cellar/libmikmod/3.3.7 but then I ran into issues while trying to do the patching, I was unable to find which file I was supposed to patch, and where. (I also re-downloaded libmikmod, not with brew install but with wget, and tried to put the same files into the same place. unfortunately i'm not sure where to push virtch.patch to.

modex-master/libmikmod/3.3.7]$ patch -p0 < ../../virtch.patch
can't find file to patch at input line 3

what should I do now?
added on the 2015-03-27 18:23:21 by distance distance
You have to download mikmod manually, unpack the source and apply the patch. I believe what's installed with brew are just runtime and development libraries and headers.

If you can't get it working I will create a brew recipe or some configure script =p
added on the 2015-03-27 18:47:30 by neoman neoman
Quote:
You have to download mikmod manually, unpack the source and apply the patch. I believe what's installed with brew are just runtime and development libraries and headers.

If you can't get it working I will create a brew recipe or some configure script =p


I think it'll probably save everyone time to be honest, the way things are going with me. I will try to download a mikmod when I get back tonight.
added on the 2015-03-28 09:05:35 by distance distance
Quote:
You have to download mikmod manually, unpack the source and apply the patch. I believe what's installed with brew are just runtime and development libraries and headers.

If you can't get it working I will create a brew recipe or some configure script =p


hey, neat, brew install mikmod did something!
added on the 2015-03-29 23:19:18 by distance distance
Quote:
You have to download mikmod manually, unpack the source and apply the patch. I believe what's installed with brew are just runtime and development libraries and headers.

If you can't get it working I will create a brew recipe or some configure script =p


Not sure I can carry on after doing brew install mikmod. I don't really understand that world.
added on the 2015-04-18 16:55:30 by distance distance
I made a version for you: www.localmindprovider.de/modex.osx

Install libsndfile before:
Code:brew install libsndfile
added on the 2015-04-18 22:33:58 by neoman neoman
Example usage on some random MOD:

Code:./modex dynamik_-_title.mod Filename: dynamik_-_title.mod Songname: title No. of channels: 4 No. of insts: 31 No. of samps: 31 SampleExIOP: VC1 (Default) Saving Samples ... 000: ST-56:h.scratch3 (004468 nsmps [* = 0x7fcc61816a00]) | 16 | M | LE | NoLoop 001: ST-56:snap.squeek (003036 nsmps [* = 0x7fcc61818e00]) | 16 | M | LE | NoLoop 002: ST-56:techno-cyms (017840 nsmps [* = 0x7fcc6181a600]) | 16 | M | LE | NoLoop 003: ST-56:techno-get3 (009534 nsmps [* = 0x7fcc61823200]) | 16 | M | LE | NoLoop 004: ST-56:techno-get1 (006088 nsmps [* = 0x7fcc61827e00]) | 16 | M | LE | NoLoop 005: ST-56:h.scratch4 (001992 nsmps [* = 0x7fcc6182ae00]) | 16 | M | LE | NoLoop 006: ST-57:pe.bass (008960 nsmps [* = 0x7fcc6182be00]) | 16 | M | LE | NoLoop 007: ST-57:pe.snare (004376 nsmps [* = 0x7fcc61830600]) | 16 | M | LE | NoLoop


He will create the files 00.wav - 07.wav.
added on the 2015-04-18 22:37:22 by neoman neoman
Quote:
Example usage on some random MOD


All I got was
Code: dyld: Library not loaded: /usr/local/lib/libFLAC.8.dylib Referenced from: /usr/local/lib/libsndfile.1.dylib Reason: no suitable image found. Did find: /usr/local/lib/libFLAC.8.dylib: no matching architecture in universal wrapper /usr/local/lib/libFLAC.8.dylib: no matching architecture in universal wrapper Trace/BPT trap: 5


:)

P.s. thanks for continuing this thread anyway.. we're pretty close, right? i tried brew install flac and libflac and libflacfile..
added on the 2015-04-30 09:54:03 by distance distance

login