Method | Description | |
---|---|---|
Process ( ) : void | ||
SetParameter ( int size, int overlap, double rate, int maxSkip ) : void |
パラメータの設定。
|
|
SetRate ( double rate ) : void |
変換レート。音程が rate 、再生時間が 1/rate 倍に。
|
|
TimeStretcher ( Queue input, Queue output ) : System |
デフォルト値で初期化。
|
|
TimeStretcher ( Queue input, Queue output, int size, int overlap, double rate ) : System |
パラメータの設定。
|
|
TimeStretcher ( Queue input, Queue output, int size, int overlap, double rate, int maxSkip ) : System |
Method | Description | |
---|---|---|
Correlation ( int pos, int len ) : int | ||
Interpolate ( short a, short b, int fade, int overlap ) : short |
a と b の信号をクロスフェードさせながら混ぜる。
|
|
MoveNext ( ) : void |
現在位置(current)を更新する。 ついでに、ピッチ予測とかの処理も行う。
|
|
Reset ( ) : void |
現在位置をリセットする(current を 0 に)。 ついでに、スキップ量を更新。
|
|
SeekSkipSize ( ) : bool |
フレームのスキップ数を求める。 前フレームの overlap(後) と現フレームの overlap(前) の相互相関値が高くなるように、 フレームの最初数サンプルをスキップする。 スキップ数を決定するために、何サンプルか後ろのデータを参照するため、 入力キューにある程度データがたまらないとスキップ数を決定できない。 スキップ数を決定できない間は false を返す。 |
public SetParameter ( int size, int overlap, double rate, int maxSkip ) : void | ||
size | int | ブロックサイズ |
overlap | int | オーバーラップさせる部分の長さ |
rate | double | 変換レート。再生時間が 1/rate 倍に。 |
maxSkip | int | |
return | void |
public TimeStretcher ( Queue input, Queue output ) : System | ||
input | Queue | 入力キュー |
output | Queue | 出力キュー |
return | System |
public TimeStretcher ( Queue input, Queue output, int size, int overlap, double rate ) : System | ||
input | Queue | 入力キュー |
output | Queue | 出力キュー |
size | int | ブロックサイズ |
overlap | int | オーバーラップさせる部分の長さ |
rate | double | 変換レート。再生時間が 1/rate 倍に。 |
return | System |
public TimeStretcher ( Queue input, Queue output, int size, int overlap, double rate, int maxSkip ) : System | ||
input | Queue | |
output | Queue | |
size | int | |
overlap | int | |
rate | double | |
maxSkip | int | |
return | System |