What happen in DAW when plugin starts

hello,  i am having test about daw & vst plugin

i study wav file, and vst plugin

so i think this wav file is composed of 16bit integer pcm (-32768 ~ 32767)

but when making vst plugin , the function (processblock) has float values.

(32bit float single precision)

i read the vst plugin page, they(steinberg) decide to use 32 float single precision(-1.0 ~ 1.0)

so do DAW change 16bit int to 32float?

if i use another daw such as reaper, login, cubase, do i have same 32 float values??



yes, all processing is done in float values these days, except if the host called setProcessingPrecision (ProcessingPrecision precision), then it uses doubles i.e. 64 bit flaoting point, see: http://www.juce.com/doc/classAudioProcessor#ab9c8a901838ee7d35df06d849a1709a2

You can see in the example plugin a nice way, how you can template your processing for FloatType, so you don't have to code float and double variants separately: https://github.com/julianstorer/JUCE/blob/master/examples/audio%20plugin%20demo/Source/PluginProcessor.h

Especially lines 34-44

Yes, whenever you are in the context of DAWs, audio plug-ins, and JUCE apps, your audio will be represented as 32-bit floats with the valid values being in the range [-1.0, 1.0], regardless of what other formats are used elsewhere in your system.