Wednesday, August 22, 2012

Korg M1 Piano Sample Pack (in SFZ)

Hey, guess what? I actually defended my thesis! That means its 99% of the way done. Just a few small changes as per request of the professors and then any typos the grad school can catch.

I realized I'd been holding out on both you readers. Sorry. I had a great project I did probably a year ago and never shared. Why? It was so simple I didn't even think about it as a project.

I'd been on a kick collecting free samples and found the shootouts on the Bedroom Producers Blog (BPB). These had some nice comments on each sample, though they didn't really provide any definitive better or worse comparisons. One of the samples was from the Korg M1 piano. The BPB comment was that this synth piano sound was the de-facto standard for house music in the 90's. Intrigued and uncertain what house music really was I downloaded them. Unfortunately these samples weren't in a format I could use in LinuxSampler (LS). However there were wavs there. Isn't SFZ the magical format that can turn any sound files into a sample pack? Why yes it is.



SFZ is a very nice format for this sort of thing because it is non-monolithic, so the parts are all separate. The file that tells the sampler what sound to play is separate from the actual file of the sound. SFZ is especially nice in this case since I don't know if I have rights to provide the samples (and I don't have a file hosting service if I did) but I can easily (and legally) provide a link to where you can download them and a text file that "ties in" all the samples to one pack. The format is pretty powerful if you have all the right samples but for something like this with discrete notes and no expression its still pretty simple.

I had to do some research and looked at some examples from rytmenpinne (which are amazing piano and drum sample packs). The best resource was the cakewalk sfz specification (RTFM-read the friendly manual, right?). But it wasn't too long before I had the SFZ up in LS and was jamming out. I don't know if I'll use them a lot (though they are in one song currently in the to be mixed pile), but I've done the work now so hopefully someone else will use them a lot. Just copy and paste the following into a text file called KorgM1Piano.sfz (or whateveryouwant.sfz):

<group>
amp_veltrack=100
//ampeg_release=0.850

<region>
sample=M1piano\M1_Piano_C0.wav
lokey=0
hikey=5
lovel=1
hivel=127
pitch_keycenter=0

<region>
sample=M1piano\M1_Piano_F#0.wav
lokey=6
hikey=11
lovel=1
hivel=127
pitch_keycenter=6

<region>
sample=M1piano\M1_Piano_C1.wav
lokey=12
hikey=17
lovel=1
hivel=127
pitch_keycenter=12

<region>
sample=M1piano\M1_Piano_F#1.wav
lokey=18
hikey=23
lovel=1
hivel=127
pitch_keycenter=18

<region>
sample=M1piano\M1_Piano_C2.wav
lokey=24
hikey=29
lovel=1
hivel=127
pitch_keycenter=24

<region>
sample=M1piano\M1_Piano_F#2.wav
lokey=30
hikey=35
lovel=1
hivel=127
pitch_keycenter=30

<region>
sample=M1piano\M1_Piano_C3.wav
lokey=36
hikey=41
lovel=1
hivel=127
pitch_keycenter=36

<region>
sample=M1piano\M1_Piano_F#3.wav
lokey=42
hikey=47
lovel=1
hivel=127
pitch_keycenter=42

<region>
sample=M1piano\M1_Piano_C4.wav
lokey=48
hikey=53
lovel=1
hivel=127
pitch_keycenter=48

<region>
sample=M1piano\M1_Piano_F#4.wav
lokey=54
hikey=59
lovel=1
hivel=127
pitch_keycenter=54

<region>
sample=M1piano\M1_Piano_C5.wav
lokey=60
hikey=65
lovel=1
hivel=127
pitch_keycenter=60

<region>
sample=M1piano\M1_Piano_F#5.wav
lokey=66
hikey=71
lovel=1
hivel=127
pitch_keycenter=66

<region>
sample=M1piano\M1_Piano_C6.wav
lokey=72
hikey=77
lovel=1
hivel=127
pitch_keycenter=72

<region>
sample=M1piano\M1_Piano_F#6.wav
lokey=78
hikey=83
lovel=1
hivel=127
pitch_keycenter=78

<region>
sample=M1piano\M1_Piano_C7.wav
lokey=84
hikey=89
lovel=1
hivel=127
pitch_keycenter=84

<region>
sample=M1piano\M1_Piano_F#7.wav
lokey=90
hikey=127
lovel=1
hivel=127
pitch_keycenter=90


Save that and download the samples and extract all the wav files into a folder named M1piano next to the .sfz and you're done! Open up the sfz in LS or another SFZ player and start housing it up. It probably could use some tweaking for the velocity or something, but it works pretty well as is, I think. Besides, when I didn't do the sampling I'm stuck with whatever I found free. Enjoy.

No comments: