So would I. I am not sure over the patent position. Probably the plain
Puckette solution is OK. The later ("improved") one was patented by
Dolson and Laroche for use in Creative Labs time-scaling software (but
in a disappointing way - to reduce CPU time to a minimum by getting
away with the minimum 50% frame overlap; so drums still process rather
badly!).
The equivalent of phase locking in the amp/freq format is (as far as I
can tell!) what I call "bin bunching" (mentioned in my ICMC paper on the
SDFT and SPV). That is, where bins converge on a source component, their
frequency values are almost equal (i.e. ~equal phase increments). So
instead of multiplying them to scale pitch, you work out the required
shift for that block (i.e. find the central or peak frequency value) and
~add~ the frequency offset to all of them as a block - so the frequency
differences between them are preserved. Most of my ICMC examples were
actually done using this approach, in a preliminary form. I have yet to
try it inside blocking pvoc. The trick of course being to decide which
bins belong with which source component; not so easy with noise-rich or
otherwise complex sources. Accuracy would require good interpolation
methods to find the real peak frequency - it will not simply be the
value of the loudest bin. Current state of the art (commercial)
algorithms are using wavelets, transient detection, and "stuff".
The problem with adding the amp/phase format now is that it will
probably entail revisions to many or all the pvs opcodes; and those
which depend on manipulating frequency bins would have to either reject
the format, or do all the maths necessary (in both directions) to
recover the phase format internally (subtraction of the centre
frequency, and re-normalizing of the bin phase value relative to the
analysis rate; I would have to look it up to give specifics).
Amplitude-only processes would be unaffected. Sadly, I am confronted
with lots of deadlines for work at the moment so can't look at it for a
while. I have never worked with the amp/phase format myself (Soundhack
uses it quite a lot, IIRC); revamping opcodes to do so would require
someone who has. The easy bit is updating the analysis and synthesis
opcodes, the code is already in there, but not much good without
updating the opcodes too.
Richard Dobson
> I just had a quick glance at Puckette's article 'phase locked vocoder'. It
> sounds promising, he mentions that with phase locking the re-synthesised
> signal has more presence and is free from the usual fft artifacts. Are there
> any software out there to allow phase locking (even commercial)?
>
> I would love to have this in csound! :-)
>
------------------------------------------------------------------------------
_______________________________________________
Csound-devel mailing list
Csound-devel@...
https://lists.sourceforge.net/lists/listinfo/csound-devel