Fathom Synth Development Thread
-
- KVRAF
- Topic Starter
- 1584 posts since 25 Mar, 2017
Oh goodness!, Yes that's important. Thanks. I'll update the manual.
Everyone, if you are on Windows 10 download the 2017 Visual Studio C++ Redistributable.
https://support.microsoft.com/en-gb/hel ... -downloads
Everyone, if you are on Windows 10 download the 2017 Visual Studio C++ Redistributable.
https://support.microsoft.com/en-gb/hel ... -downloads
- KVRist
- 335 posts since 12 Aug, 2016
Very good to hear.FathomSynth wrote:
Frostline, I found the cause of the skipping notes bug. That will be fixed in 2.8 (possible Monday release).
Now, today I downloaded the Fathom OSC edition.
I also went to the link drBob provided and downloaded and installed that redistributable.
These are the ones I have installed.

After removing all previous Fathoms from my VST folder I tried to use the x64 dlls in the Fathom OSC release.
The one in the root folder, Reaper scanned for a long time, but it did not appear in instruments.
Same for the one in the Windows 10 folder.
The dll in the MT folder works. Scan was very short and it was listed in the "NEW" section of the FX browser as well as under VSTi.
So what redistributable am I missing that gets the Windows 10 version or the MD version to validate in Reaper?
Also are the distortion and grain controls in the noise section supposed to effect the sound of the oscillators when the noise algorithm dial is set to off?
Win10 x64, Reaper 6.XX x64, i5-3330, 8gb ram, GTX-970, UC-33, Panorama P4, Wharfedale Diamond 8.2 and JVC HA-RX700
-
- KVRAF
- Topic Starter
- 1584 posts since 25 Mar, 2017
Your system is a mystery.
You have the 2017 redist installed.
And the Windows 10 build was actually built in Windows 10.
So the Windows 10 build should have worked on your system.
If you're really curious you could try uninstalling the 2017 redist, and installing the 2015 redist.
I don't know.
The MT build has all the necessary library files statically linked into the plugin so that is probably why it works for you.
But unfortunately I can not make it the primary build because due to DLL incompatibilities it breaks on more systems that it fixes.
Keep in mind there is no functional or speed difference between the MT and main MD builds,
so if one works use it, that is why they are there.
Yes the distortion dial is independent from enabling the Noise and the grain dial controls the number of samples between each change in direction of the distortion frequency variation.
You have the 2017 redist installed.
And the Windows 10 build was actually built in Windows 10.
So the Windows 10 build should have worked on your system.
If you're really curious you could try uninstalling the 2017 redist, and installing the 2015 redist.
I don't know.
The MT build has all the necessary library files statically linked into the plugin so that is probably why it works for you.
But unfortunately I can not make it the primary build because due to DLL incompatibilities it breaks on more systems that it fixes.
Keep in mind there is no functional or speed difference between the MT and main MD builds,
so if one works use it, that is why they are there.
Yes the distortion dial is independent from enabling the Noise and the grain dial controls the number of samples between each change in direction of the distortion frequency variation.
- KVRist
- 335 posts since 12 Aug, 2016
Yes my system seems to have some quirks.FathomSynth wrote:Your system is a mystery. ...
....If you're really curious you could try uninstalling the 2017 redist, and installing the 2015 redist.....
....But unfortunately I can not make it the primary build because due to DLL incompatibilities it breaks on more systems that it fixes.....
Uninstalled the 2017 for the 2015...didn't help with the MD or W10 builds.
Reinstalled the 2017...didn't help
Uninstalled the 2017 so I could install the x86 of 2015....didn't help
Reinstalled the x64 and x86 of 2017....didn't help
But....

Adding the 2012 version x64 and now both the MD and W10 builds are picked up in Reaper.
No idea why that worked.
Wasn't concerned with making the MT version the primary build, just more figured you would someday like to only have to just make one version and MD seems the way of the future. So I'm glad my computer is still able to keep up with the times.
Win10 x64, Reaper 6.XX x64, i5-3330, 8gb ram, GTX-970, UC-33, Panorama P4, Wharfedale Diamond 8.2 and JVC HA-RX700
-
- KVRAF
- Topic Starter
- 1584 posts since 25 Mar, 2017
Ah ha!
I just went back and read your old redist list.
You were missing the 2012 redist.
Probably some secret section of code in there which is needed,
and is not overwritten by 2015 or 2017.
You know I think Windows users really need both the 2012 and 2017 redist.
I just went back and read your old redist list.
You were missing the 2012 redist.
Probably some secret section of code in there which is needed,
and is not overwritten by 2015 or 2017.
You know I think Windows users really need both the 2012 and 2017 redist.
-
- KVRian
- 801 posts since 1 Dec, 2016
I stumbled on this synth from the OSC. When I found the unison detune section, my 15 bucks flew out of my wallet like an F-16. Sounds absolutely glorious! It is a a bit of a cpu hog, and initially buggy, but it sounds absolutely fantastic and I look forward to it's development.
First "uh oh" impressions from the version I downloaded is that the portamento is sporadic. Weird scoops and note drops at times. No, I have not scrolled through a billion posts for the answer....but the number of posts shows Fathom's potentials!
Reaper 5.76, Windows 7, modern PC specs.
I'm no beta tester, so step by steps are most likely not going to happen
First "uh oh" impressions from the version I downloaded is that the portamento is sporadic. Weird scoops and note drops at times. No, I have not scrolled through a billion posts for the answer....but the number of posts shows Fathom's potentials!
Reaper 5.76, Windows 7, modern PC specs.
I'm no beta tester, so step by steps are most likely not going to happen
Last edited by TheNeverScene on Tue Mar 06, 2018 12:53 am, edited 1 time in total.
Just a touch of EQ and a tickle of compression
-
- KVRAF
- Topic Starter
- 1584 posts since 25 Mar, 2017
TheNeverScene, Thanks!
Let me know what note combinations are causing trouble with the portamento/glide
and I'll try and fix it for the next release 2.8.0.
Let me know what note combinations are causing trouble with the portamento/glide
and I'll try and fix it for the next release 2.8.0.
-
- KVRAF
- 2393 posts since 7 Mar, 2014
I have 2008 redist installed, but not 12! So maybe it's something way back which hasn't been carried forward somewhere along the line? The mysteries of MS! Have haunted us for years and years. Used to teach OpenGL programming on SGI Unix (dead easy and fab), and also on PC for those without SGI's (a pain at the time).
dB
PS On early SGI boxes you could get at the hardware 4x4 matrix ops, and use them for math, not just for graphics related math! Also, on the DecSystem10 (going back in my career a bit!), it had hardware polynomial instructions - sad thing, they were slower than doing it in software (at the assembler level of course). Always loved the PDP-11 systems - such a joy to use and program. Did graphics on the GT40, but also did some audio stuff as I had AD/DA units on it! Only for fun though. My friends loved transputers and used Occam a lot (smart guys!).
dB
PS On early SGI boxes you could get at the hardware 4x4 matrix ops, and use them for math, not just for graphics related math! Also, on the DecSystem10 (going back in my career a bit!), it had hardware polynomial instructions - sad thing, they were slower than doing it in software (at the assembler level of course). Always loved the PDP-11 systems - such a joy to use and program. Did graphics on the GT40, but also did some audio stuff as I had AD/DA units on it! Only for fun though. My friends loved transputers and used Occam a lot (smart guys!).
- KVRist
- 416 posts since 28 Nov, 2013 from Germany
I have converted the Adventure Kid Waveforms (AKWF) to the Fathom wavetable format. More information can be found in this topic:
viewtopic.php?f=1&t=500964
viewtopic.php?f=1&t=500964
Passed 303 posts. Next stop: 808.
-
- KVRAF
- Topic Starter
- 1584 posts since 25 Mar, 2017
BlitBit, Brilliant Idea. I will link to it from the web site.
One problem however, which you might want to correct.
All the AKWF appear to be single cycle waveforms.
You have them formatted as Fathom Wave Tables not as Fathom Waves.
The ones you created are all in the Wave Table format with 1 of 16 table waves defined.
I tried loading them with the debugger running and Fathom is not tough enough to handle it,
and it is causing asserts, which could cause crashes in the release builds.
Fathom Waves are single cycle just like the AKWF originals, with the floating point sample values included in a simple XML format.
Judging from the number of waves it looks to me like you developed some sort of ingenious automated process, so you might want to simply re-run it using the attached file as the target template.
Also, the advantage of using the single cycle format is that Fathom can visually and audibly preview each AKWF waveform in Fathom wave format as the user steps through them in the wave browser, and very quickly, which everyone will love.
So use the attached file as a template.
Edit: I took a close look at the original AKWF files. They are in WAV format which Fathom can already read. If you download the original AKWF folders and point to them from inside the Fathom wave browser it is able to preview them and load them fine.
So perhaps there is no need to translate them into the Fathom wave.xml format.
Also the AKWF waves inside each folder do not seem to be necessarily related as different stages of one virtual morphing waveform, so I'm not sure how useful it would be to translate the waves in each folder into a Fathom wave table.
The most useful thing seems to be to take any two of them, and load one into a wave table oscillator position 1 and the other into position 16 and hit the Fill button. Then the results are good.
But the bottom line is that the AKWF waves certainly add a lot to Fathom, and they sound really good being loaded directly into either the Wave Draw or Wave Table oscillators.
I especially like the Guitar and Saw folders.
One problem however, which you might want to correct.
All the AKWF appear to be single cycle waveforms.
You have them formatted as Fathom Wave Tables not as Fathom Waves.
The ones you created are all in the Wave Table format with 1 of 16 table waves defined.
I tried loading them with the debugger running and Fathom is not tough enough to handle it,
and it is causing asserts, which could cause crashes in the release builds.
Fathom Waves are single cycle just like the AKWF originals, with the floating point sample values included in a simple XML format.
Judging from the number of waves it looks to me like you developed some sort of ingenious automated process, so you might want to simply re-run it using the attached file as the target template.
Also, the advantage of using the single cycle format is that Fathom can visually and audibly preview each AKWF waveform in Fathom wave format as the user steps through them in the wave browser, and very quickly, which everyone will love.
So use the attached file as a template.
Edit: I took a close look at the original AKWF files. They are in WAV format which Fathom can already read. If you download the original AKWF folders and point to them from inside the Fathom wave browser it is able to preview them and load them fine.
So perhaps there is no need to translate them into the Fathom wave.xml format.
Also the AKWF waves inside each folder do not seem to be necessarily related as different stages of one virtual morphing waveform, so I'm not sure how useful it would be to translate the waves in each folder into a Fathom wave table.
The most useful thing seems to be to take any two of them, and load one into a wave table oscillator position 1 and the other into position 16 and hit the Fill button. Then the results are good.
But the bottom line is that the AKWF waves certainly add a lot to Fathom, and they sound really good being loaded directly into either the Wave Draw or Wave Table oscillators.
I especially like the Guitar and Saw folders.
You do not have the required permissions to view the files attached to this post.
Last edited by FathomSynth on Sat Mar 03, 2018 7:25 pm, edited 1 time in total.
- KVRist
- 335 posts since 12 Aug, 2016
Possible bug,
Using the wavetable indexes and manual input for position, it does not match what I type.
If I type in 8 and hit enter, it will go to position 9. Type 2 it goes to 3 etc.
A related issue, on the large dials it is easy to manually input a value when you click on the current value, but if you click on the dial name it puts a number in the center of the dial and highlights a box around the dial and name.
But on the small dials there are not separate name/value areas and clicking where the value was just produces the behavior of clicking the name of the large dials with a number in the dial and no way to enter a value manually.
It is fine if manual value entry is not supported for the small dials since clicking outside the dial allow single value increments, but clicking on the value area and getting the highlight changes makes it seem like one should be able to somehow enter a specific value.
Using the wavetable indexes and manual input for position, it does not match what I type.
If I type in 8 and hit enter, it will go to position 9. Type 2 it goes to 3 etc.
A related issue, on the large dials it is easy to manually input a value when you click on the current value, but if you click on the dial name it puts a number in the center of the dial and highlights a box around the dial and name.
But on the small dials there are not separate name/value areas and clicking where the value was just produces the behavior of clicking the name of the large dials with a number in the dial and no way to enter a value manually.
It is fine if manual value entry is not supported for the small dials since clicking outside the dial allow single value increments, but clicking on the value area and getting the highlight changes makes it seem like one should be able to somehow enter a specific value.
Win10 x64, Reaper 6.XX x64, i5-3330, 8gb ram, GTX-970, UC-33, Panorama P4, Wharfedale Diamond 8.2 and JVC HA-RX700
-
- KVRian
- 801 posts since 1 Dec, 2016
Now that you mention that, it WAS certain note combinations. I'll dig in and let you know. Funny thing is that it made for some interesting moments, but a fix is definitely in order. Maybe a "portamento glitch" option at some point? that would be a firstFathomSynth wrote:TheNeverScene, Thanks!
Let me know what note combinations are causing trouble with the portamento/glide
and I'll try and fix it for the next release 2.8.0.
Just a touch of EQ and a tickle of compression
- KVRist
- 416 posts since 28 Nov, 2013 from Germany
Hi FathomSynth,
I read your edit a bit too late and have now converted all waves to Fathom's waves format and adjusted my description in the thread.
I went with the "Wave Table" format because when I checked the content of the "Wave" format files they all had some envelopes stored as well while the "Wave Table" format had none of that and therefore looked simpler. Thanks for the attached template which showed that "Wave" files can also be simpler.
The Python script that I have used for the conversion can also produce wavetables with several waves and I was also thinking about creating wave table files with 16 waves by just using the AKWF files as input. But as you have also written the waves are rather unrelated so that the results of such a process would be rather random.
Perhaps I will just release the script on github so that people can build their own Fathom wavetables from some of the files that are floating around on the internet. Because I did not want to introduce dependencies to other Python libraries the script currently has the restriction that it needs 16 or 32 bit linear PCM mono wav files as input. So some of the files might have to be converted before being sent through the script, e.g. files with IEEE float data.
I read your edit a bit too late and have now converted all waves to Fathom's waves format and adjusted my description in the thread.
I went with the "Wave Table" format because when I checked the content of the "Wave" format files they all had some envelopes stored as well while the "Wave Table" format had none of that and therefore looked simpler. Thanks for the attached template which showed that "Wave" files can also be simpler.
The Python script that I have used for the conversion can also produce wavetables with several waves and I was also thinking about creating wave table files with 16 waves by just using the AKWF files as input. But as you have also written the waves are rather unrelated so that the results of such a process would be rather random.
Perhaps I will just release the script on github so that people can build their own Fathom wavetables from some of the files that are floating around on the internet. Because I did not want to introduce dependencies to other Python libraries the script currently has the restriction that it needs 16 or 32 bit linear PCM mono wav files as input. So some of the files might have to be converted before being sent through the script, e.g. files with IEEE float data.
Passed 303 posts. Next stop: 808.
-
- KVRAF
- Topic Starter
- 1584 posts since 25 Mar, 2017
Frostline, Yes, the one off manual entry for the wave table index can be fixed for 2.8.
Good observation but the big and small dials work a little differently.
For the big dials clicking on the value opens it for manual entry.
Clicking on the name of the dial selects it for host automation.
This graphically highlights the dial bar holding the name and value so you know its automated.
It also puts the host parameter index on the face of the dial.
The manual deals with this in more detail under host automation.
The small dials can also be host automated.
The graphics for the highlighting is a little different but it's the same idea.
However, the small dials are too small to also provide manual number entry, sorry.
BlitBit, Thanks. Yes the Fathom wave.xml is flexible in the sense that it only saves the envelope data if the user edited the wave using bezier curves. If there is no envelope then the xml file only contains the sample data.
Your tool for translating a folder of single cycles into Fathom wave table format would be very useful. So many people have asked me to be able to do that. Eventually I will build it into the Fathom wave browser so it can do it automatically by pointing to a folder, but not yet, so many people would probably love that.
If you have a page and release the tool, post it here, and I will put a link to it on the web site.
I also put a link to the Galbanum waveform library on the osc page. This library has 25,000 single cycle waveforms in WAV format which can be loaded by Fathom. Very useful for the contest.
http://www.galbanum.com/products/archit ... eforms2010
Good observation but the big and small dials work a little differently.
For the big dials clicking on the value opens it for manual entry.
Clicking on the name of the dial selects it for host automation.
This graphically highlights the dial bar holding the name and value so you know its automated.
It also puts the host parameter index on the face of the dial.
The manual deals with this in more detail under host automation.
The small dials can also be host automated.
The graphics for the highlighting is a little different but it's the same idea.
However, the small dials are too small to also provide manual number entry, sorry.
BlitBit, Thanks. Yes the Fathom wave.xml is flexible in the sense that it only saves the envelope data if the user edited the wave using bezier curves. If there is no envelope then the xml file only contains the sample data.
Your tool for translating a folder of single cycles into Fathom wave table format would be very useful. So many people have asked me to be able to do that. Eventually I will build it into the Fathom wave browser so it can do it automatically by pointing to a folder, but not yet, so many people would probably love that.
If you have a page and release the tool, post it here, and I will put a link to it on the web site.
I also put a link to the Galbanum waveform library on the osc page. This library has 25,000 single cycle waveforms in WAV format which can be loaded by Fathom. Very useful for the contest.
http://www.galbanum.com/products/archit ... eforms2010
-
Scrubbing Monkeys Scrubbing Monkeys https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=397259
- KVRAF
- 1837 posts since 21 Apr, 2017 from Bahia, Brazil
As far as the AK waves. All I ever tried loaded fine. There are some folders of specific types but for the most part are random.
Which quicly led me to this thought.......I learned to program sounds in synths because I didnt have the patience to preview 500 presets. I found myself in the same jungle with these single cycle waves. Fathom has wave draw. So now I am learning what waves sound like what, because I dont have the patience to preview 25000 waves.
Which quicly led me to this thought.......I learned to program sounds in synths because I didnt have the patience to preview 500 presets. I found myself in the same jungle with these single cycle waves. Fathom has wave draw. So now I am learning what waves sound like what, because I dont have the patience to preview 25000 waves.
We jumped the fence because it was a fence not be cause the grass was greener.
https://scrubbingmonkeys.bandcamp.com/
https://sites.google.com/view/scrubbing-monkeys
https://scrubbingmonkeys.bandcamp.com/
https://sites.google.com/view/scrubbing-monkeys
