下載/瀏覽Download
Download
Report
Transcript 下載/瀏覽Download
Phase Vocoder
報告者:張育豪
1
outline
1.
2.
3.
4.
簡介
流程圖
分析端
合成端
1.
2.
5.
2
相位重建
振幅重建
時長實驗結果
簡介
1.
Phase vocoder是利用STFT的相位來作頻率預測
2.
它可以用來作為TSM來使用,也可作為調整Pitch使用
3
流程圖
4
The Basic Phase Vocoder Time-Scaling Algorithm
分析端
Analysis stage
在分析端,分析時間瞬時點 tau以整數 u沿著原始訊號上來設定,
其作法是將原始訊號以 tau= uRa來切框, Ra被稱為分析跳躍因子。
以每一個分析時間瞬點tau為中心,加上窗作短時傅利葉轉換,就
可得到短時傅利葉轉換後的結果X(tau, Ωk):
hnxt
X t , k
u
a
n
u
a
n e j k n
•x is the original signal.
•h(n) is the analysis window
•Ωk=2πk/N is the center frequency of the kth vocoder channel
•N is the size of the discrete Fourier transform
5
合成端
Synthesis stage
在合成端,設置了一個合成時間瞬時點 tsu,合成時間瞬
時點,通常具有一致性,所以可以得到 tsu=Rsu, Rs被稱
為分析跳躍因子。
y n
wn t y n t
u
6
u
s
u
u
s
1
yu n
N
N 1
j k n
u
Y
t
,
e
s k
k 0
在無調變情況下(Ra=Rs and X(tau, Ωk)=Y(tsu, Ωk) ),此時
輸入訊號x(n)等於輸出訊號y(n)。
合成端
係數
時間壓縮與擴展的調整是由分析跳躍係數Ra與合成跳躍係數Rs的比例
不同所決定的。
Rs Ra
Time Extension
R s Ra
Time Compression
振幅調變
在phase vocoder演算法中合成的振幅與分析的振幅是一樣的
Y tsu , k X tau , k
7
其中tsu=Rsu,所以在Phase Vocoder演算法並不需要調變振幅大小。
合成端
相位調變
在計算合成相位時,需利用相位擴展方式。因此正弦函數
的瞬間頻率需被計算出來,而瞬間頻率的計算是使用連續
音框的相位增量△Φku所得到的。
uk X tau , k X tau 1 , k Ra k
Ra :分析跳躍因子
8
計算出相位增量△Φku後,為了使其座落在±π之間,稱為
△pΦku
p uk uk mod 2
合成端
9
合成端
取得最接近正弦曲線的瞬時頻率 ŵk tau
wˆ k t au k
1
p uk
Ra
時間tau的瞬時頻率已求出,
根據下面的相位增值公式,來求出時間tsu的短時傅利葉轉換的相位:
Ra: 分析跳躍因子
Y t su , k Y t su 1 , k Rŝk t su
Y t su , k Y t su 1 , k
10
Rs: 合成跳躍因子
Rs
X tau , k X t au 1 , k
Ra
求得相位增量△Φku後,不去限制增量值落在正負π之間
就可將合成相位∠Y(tsu, Ωk)的求法,簡化如下:
1
Y t su , k Y t su 1 , k Rs k
X t au , k X t au 1 , k Ra k
Ra
X t au , k X t au 1 , k
Y t , k Y t , k Rs k
k
Ra
Ra
R
Y t su , k Y t su 1 , k s X t au , k X t au 1 , k
Ra
u
s
11
u 1
s
Ra Rs
Ra Rs
k tau
k t au
t
Rs
X t
12
u 1
a
, k
Ra
X t , k
u
a
X t au 1 , k
Rs
Ra
t
X t au , k
振幅重建
1.
利用修改後的相位,來重建出新的振幅
Z M exp
k
i
•M=原始振幅
•k=0,1,2,…,numframes
•J=0,1,2,…,N
13
k
j
ipf
k
j
實驗結果
14
音框長度:N=256
參數一
α=時長因子
Ra=N/4
Rs=N/4* α
參數二
α=時長因子
Ra=N/8
Rs=N/8* α
實驗結果 α =0.5 Ra=N/4 Rs=N/4* α
15
實驗結果 α =2 Ra=N/4 Rs=N/4* α
16
實驗結果 α =0.5 Ra=N/8 Rs=N/8* α
17
實驗結果 α =2 Ra=N/8 Rs=N/8* α
18