mp3scal — Phase-locked vocoder processing with onset detection/processing, 'tempo-scaling'.
mp3scal implements phase-locked vocoder processing from mp3-format disk files, resampling if necessary.
This opcode allows for time and frequency-independent scaling. Time is advanced internally. The quality of the effect is generally improved with phase locking switched on.
mp3scal will also scale pitch, independently of frequency, using a transposition factor (k-rate).
Sfile -- source soundfile stereo mp3 files.
ifftsize -- FFT size (power-of-two), defaults to 2048.
idecim -- decimation, defaults to 4 (meaning hopsize = fftsize/4)
iskip -- skiptime in seconds, defaults to 1.
ilock -- 0 or 1, to switch phase-locking on/off, defaults to 1.
ktimescal -- timescaling ratio, < 1 stretch, > 1 contract. Non-negative numbers only.
kamp -- amplitude scaling
kpitch -- grain pitch scaling (1=normal pitch, < 1 lower, > 1 higher; negative, backwards)
Here is an example of the mp3scal opcode. It uses the file mp3scal.csd.
Example 550. Example of the mp3scal opcode.
See the sections Real-time Audio and Command Line Flags for more information on using command line flags.
<CsoundSynthesizer> <CsOptions> </CsOptions> <CsInstruments> nchnls=2 ksmps=64 sr=44100 instr 1 SFile = p4 p3 = mp3len(SFile)/p5 a1,a2,k2 mp3scal SFile,p5,1,1 outs a1,a2 endin </CsInstruments> <CsScore> i1.1 0 1 "beats.mp3" .75 </CsScore> </CsoundSynthesizer>