pvswarp — Warp the spectral envelope of a PVS signal
fsig -- output pv stream
fsigin -- input pv stream
kscal -- spectral envelope scaling ratio. Values > 1 stretch the envelope and < 1 compress it.
kshift -- spectral envelope shift, values > 0 shift the envelope linearly upwards and values < 1 shift it downwards.
klowest -- lowest frequency shifted (affects only kshift, defaults to 0).
kmethod -- spectral envelope extraction method 1: liftered cepstrum method; 2: true envelope method (defaults to 1).
kgain -- amplitude scaling (defaults to 1).
kcoefs -- number of cepstrum coefs used in formant preservation (defaults to 80).
![]() |
Warning |
---|---|
It is unsafe to use the same f-variable for both input and output of pvs opcodes. Using the same one might lead to undefined behavior on some opcodes. Use a different one on the left and right sides of the opcode. |
Example 489. Example
asig in ; get the signal in fsig pvsanal asig, 1024, 256, 1024, 1 ; analyse it ftps pvswarp fsig, 1.5, 0 ; warp it atps pvsynth ftps ; synthesise it out atps
The example above shows a spectral envelope warper, scaling the freq envelope by 1.5. Used with vocal sounds, it will shift the formants and result in a changed vowel timbre, similar to the effect of a singer inhaling helium (the 'donald duck' effect).
Here is an example of the use of the pvswarp opcode. It uses the file pvswarp.csd.