Saving KORG volca fm2 voices
The KORG volca fm2 can use voices intended for the original Yamaha DX7 in MIDI System Exclusive format. The user manual does not go into detail, but only states: "Sound files (SYS-EX/SYX) created on the Yamaha DX7 can be converted and loaded into the volca fm."
The term "sound files" is a little bit misleading here, as MIDI System Exclusive files do not contain sound, but manufacturer-specific information to the synthesizer. In this case they contain a full "cartridge", or 32 voices, for the Yamaha DX7, and the voices can be imported into the volca fm using the MIDI IN connector.
However, the process also works the other way, but with a twist. You can export voices out of the volca fm, but not through the MIDI OUT connector, as you would think. Instead, the voices can be exported as audio, so in this case they really are sound, until they are converted into System Exclusive files.
The voices you export from the volca fm can be loaded into the various DX7 clones listed in the DX7 All the Things! post, and maybe even to an original DX7 (will have to try this with my TX802 some day).
I wanted to save the 64 voices that the volca fm2 ships with, in case they are lost when I overwrite the banks with some other DX7 sounds. Getting them out of the volca turned out to be quite easy with the right tools.
The export is done through the volca SYNC OUT port, which is intended for communication with other volcas. As this communication is done using audio signals, it can be captured by recording the output of the SYNC OUT port.
The idea is to connect the SYNC OUT port into some input of an audio interface, and fire up an audio recording application or a DAW. Set the sample rate to 44.1 kHz, 16-bit, and use a mono track. Start recording, and then start the export by going into EDIT mode and pressing the SAVE/EXPORT button on the volca fm.
If you are monitoring the recording, you will hear a synchronization pulse, followed by a screeching noise. This noise is the data being sent out from the volca fm. The process uses Quadrature Amplitude Modulation or QAM, just like old school dial-up modems.
After the screeching has turned into sync pulses again, stop the recording and save it as a WAV file. I've found that you don't need to trim away the pulses, at least with the tool I used. Namely, to convert the audio file to MIDI System Exclusive format, you need volcafmpatchdecoder.
This is a 400-line C language program with binary releases for Windows and Linux (both x86 and ARM), but not for macOS. If you're on a Mac, you will need to prepare the executable program with clang (most likely if you have Xcode installed) or gcc. Take a look at the README file in the GitHub repository for some clues.
When you have downloaded a binary release, or successfully compiled the source code,
you should have an executable
named volcafm_to_sysex (with an .exe extension on Windows).
Run it with your audio recording as a
command-line parameter, and you get a listing of the voices, along with two
MIDI System Exclusive files:
% ./volcafm_to_sysex from-volcafm2.wav
FILE: from-volcafm2.wav, 1 channel(s), rate:44100, width:16, block:2
0:ARCTIC
1:WHIZZZ
2:VALVIL
3:BASSACE
4:QUSI
5:OR-GN
6:STRUMMER
7:PLNTSTR
8:FU-YU
9:GAMMA
10:NU LINE
11:GRYMEM
12:JULIENNE
13:BASSRAT
14:GAWGAW
15:PORT-0
16:2PCTRL
17:HAOROM
18:MOIDES
19:PICHLD
20:AOBIRD
21:EQUUS
22:VAIO-LA
23:KLINK
24:BNKN
25:WAAAH
26:PALPLUCK
27:WARMBAW
28:PUKPUK
29:ANLGWALL
30:E-A-P
31:CIRKLE
32:Volcanic
33:MorphBass
34:SmashHit
35:E.Piano
36:Distorted
37:ChewyBass
38:MusicBox
39:GlassPad
40:Organic
41:ShortCut
42:WarmBass
43:Syringe
44:Blowing
45:BrassEns
46:StringsEns
47:Xylophone
48:E.Bass
49:ClassicGt
50:TinLead
51:LilChorus
52:MouthLead
53:Marimba
54:GroanBass
55:PluckKey
56:Glocken
57:Whistle
58:HornSolo
59:Picking
60:ClavStab
61:ThroatKey
62:FlyKettle
63:DrumShot
The files are named after your recording file, so in this case they would be called
from-volcafm2.wav_cart.syx and from-volcafm2.wav_cart_2.syx.
You will probably want to rename them to something else.
If your audio recording is not 44.1 kHz 16-bit mono, the program will tell you and quit right away. Originally I had made a stereo file at 48 kHz, but I was able to quickly transform it using Sound Studio on the Mac, and the decoder accepted it fine. Even the clipping didn't seem to be a problem, but you might want to turn down the input gain if you don't get decodable recordings.
I've loaded these voices into Dexed, and they sound OK, but remember that the volca fm2 has chorus and reverb effects which are used on the voices, so the dry sounds, when loaded into Dexed or somesuch, are not identical to the ones you get from the volca fm.
I hope you get some use out of this. You could use some of your favorite volca fm voices in other DX7 compatible synths, or just figure out how they are put together. The DX7 legacy is alive and well also in the volca fm!
digitalsynth.net