cvphase
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
Convert phase spectrum.
- Usage
cvphase(p, ifmt, ipos, ibin, ofmt, opos, obin, nbin, rev, sr, len, hop)
- p
- original phase spectrum at frame ipos and in the format ifmt; p is a vector with n values
- ifmt, ofmt
- input and output phase format (1 = locked phase, 2 = normal phase (not locked))
- ipos, opos
- input and output frame index
- ibin, obin
- input and output spectral bin
- nbin
- number of spectral bins to convert
- rev
- reverse output phase (0=no, 1=yes)
- sr
- signal sampling rate in Hz; this argument is currently not used but must be supplied!
- len, hop
- transformation length and hopsize (in samples) used for analysis and resynthesis
- Description
- This function replaces the following macro code
[macro cvphase arg: #p #ifmt #ipos #ibin #ofmt #opos #obin #nbin #rev #sr #len #hop] #dp := eval 2 * pi * $#hop / $#len #idt := eval $#ifmt == 2 ? 0 : $#dp * $#ipos #odt := eval $#ofmt == 2 ? 0 : $#dp * $#opos #r := eval init($#nbin,1,0) for #i := 0 to $#i < $#nbin step #i := int $#i+1 #z := eval ($#p[$#i] + pi + ($#i+$#ibin)*$#idt) % (2*pi) if $#rev == 1 #z := eval -$#z $#r[$#i] := eval ($#z - ($#i+$#obin)*$#odt) % (2*pi) - pi end exit 1 set $#r
- Result
- A vector r with nbin values, containing the converted phase values.
- Note: The input and output phase values are in the range
-pi..pi
. - See also
- hcomb, optmm, script application MulAc