If you have a problem or need to report a bug please email :

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

It may be possible to make ruby base64 a wav

For general discussion related FlowStone

It may be possible to make ruby base64 a wav

Postby » Mon Sep 21, 2020 4:20 pm

I was thinking about Ruby and patches for let's say a synth. It'd be great if all of the samples were in the dll somehow; but obviously that would require them being text. It may be possible to do such a thing with ruby, has anyone else had experiences with such a thing in ruby? And not so much in ruby on rails?

Or, like let's say a standalone .exe that would allow adding presets and samples. It might not work, but it may. It's too bad such an idea would not work with .exe's too.
My youtube channel: DSPplug
My Websites: KVRaudio flowstone products
User avatar
Posts: 912
Joined: Tue Apr 03, 2018 5:50 pm
Location: North Bay, Ontario, Canada

Re: It may be possible to make ruby base64 a wav

Postby trogluddite » Mon Sep 21, 2020 5:47 pm

There seem to be two related questions that need answering here...

- Can sample data be stored in String format?

Yes, but there's no sensible reason for doing so. "WaveArray" and "WaveFile" primitives store all of their sample data in schematics and exports anyway, so permanent sample storage is already possible. Storing the data as text and decoding it on-demand would simply make switching presets incredibly slow (Ruby is not quick at working with large data sets and there would actually be a chain of conversions: String -> Ruby Array -> Green Array -> Mem). Base64 would only make that problem worse - it increases file size and makes decoding more complex. I would be absolutely stunned if this were anywhere near as fast as loading samples from disk - and slow preset changes are NOT a customer-friendly feature!!

NB: Base64 is usually only necessary for internet resources. For purely internal data, Ruby allows "binary" Strings which can contain web-unsafe characters (including "null"). You have to be a bit more careful with "green" Strings, though, as they are strictly ASCII and are null-terminated.

- Can preset data inside a DLL or EXE be changed during runtime?

No, never. You would have to be able to re-compile the entire schematic, but without having the FS workspace present. It's very unlikely that you could update the file in any case - exe's and dll's are usually locked for writing whenever they are loaded for execution (and trying to do it could well get flagged as a sign of malware).
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
User avatar
Posts: 1706
Joined: Fri Oct 22, 2010 12:46 am
Location: Yorkshire, UK

Re: It may be possible to make ruby base64 a wav

Postby kortezzzz » Tue Sep 22, 2020 10:18 am

Depending my experience, unfortunately Ruby is not the right platform for playing with translations from one format to another. Back then I tried to use ruby as a "pipe" to manipulate streamed wave array data. The schematic went into endless loading process until I've decided to give up and reset my computer. Never tried again...

By the way, Trog, please check up your PM.
User avatar
Posts: 717
Joined: Tue Mar 19, 2013 4:21 pm

Return to General

Who is online

Users browsing this forum: No registered users and 18 guests