Hi everyone, I felt like it was interesting to post about it as other people could be interested by the idea.
For those owning a cryptonloid, when installing piapro studio you probably noticed that it discretly installed a software called VOCALOID4 API (or VOCALOID3 API for old versions).
this "software" is something interesting because it contains the core synthesis engine of VOCALOID, probably because Yamaha only wanted to give prebuilt binaries to crypton future media and not the whole source.
the result though is that piapro uses these DLL files to communicate with the vocaloid engine and use vbs/produce sounds

well if we look closely at these dll files in programs displaying the exports we see that the dlls aren't statically but dynamically linked, so they export ALL the functions used for them to work

The idea that came immediatly to my mind after seeing this was "What if it was possible to call this API the same way as cadencii called the API at the time of vocaloid 2?"
this is why I immediatly tried it.
The result ?

(the code was written quickly, my production code looks a lot better don't worry lol)
A success, the vocaloid 4 api has correctly been initialized and I've correctly retrieved an initialized instance of it.
now it will mostly be an issue of getting to understand how the API works and of retrieving the data structures, but from the looks of it, it seems totally doable
now for the legal side, as it could at first glance seem illegal, it in fact is legal.
the conditions though for it to be legal are to own the vocaloid 4 api, so it requires to :
- own a cryptonloid and piapro for it to install.
- to not modify the vocaloid 4 api
- to not bypass any drm inside (so basically all voicebanks must be purchased and the checks must not be removed).
by only calling the functions given by the dlls we are only asking vocaloid to perform actions for us, it is like calling an executable with an argument, like "Vocaloid.exe dosomething" except that it is much more interesting as with a dll we can perform a lot of operations natively with a program.
UPDATE : it seems like it may be possible that instead of a cryptonloid, a V3 voicebank including tiny vocaloid editor could be used too as tiny vocaloid editor includes its dlls

For those owning a cryptonloid, when installing piapro studio you probably noticed that it discretly installed a software called VOCALOID4 API (or VOCALOID3 API for old versions).
this "software" is something interesting because it contains the core synthesis engine of VOCALOID, probably because Yamaha only wanted to give prebuilt binaries to crypton future media and not the whole source.
the result though is that piapro uses these DLL files to communicate with the vocaloid engine and use vbs/produce sounds

well if we look closely at these dll files in programs displaying the exports we see that the dlls aren't statically but dynamically linked, so they export ALL the functions used for them to work

The idea that came immediatly to my mind after seeing this was "What if it was possible to call this API the same way as cadencii called the API at the time of vocaloid 2?"
this is why I immediatly tried it.
The result ?

(the code was written quickly, my production code looks a lot better don't worry lol)
A success, the vocaloid 4 api has correctly been initialized and I've correctly retrieved an initialized instance of it.
now it will mostly be an issue of getting to understand how the API works and of retrieving the data structures, but from the looks of it, it seems totally doable
now for the legal side, as it could at first glance seem illegal, it in fact is legal.
the conditions though for it to be legal are to own the vocaloid 4 api, so it requires to :
- own a cryptonloid and piapro for it to install.
- to not modify the vocaloid 4 api
- to not bypass any drm inside (so basically all voicebanks must be purchased and the checks must not be removed).
by only calling the functions given by the dlls we are only asking vocaloid to perform actions for us, it is like calling an executable with an argument, like "Vocaloid.exe dosomething" except that it is much more interesting as with a dll we can perform a lot of operations natively with a program.
UPDATE : it seems like it may be possible that instead of a cryptonloid, a V3 voicebank including tiny vocaloid editor could be used too as tiny vocaloid editor includes its dlls

Last edited: