C# Class SoundLibrary.Pipe.Monaural.RateTransposer

移調を行うクラス。 データの間を補完して、データ長を変えることで、音程を変更する。 再生時間も変わってしまう。
線形補間によるアップサンプル/ダウンサンプルしているだけなので、 高音質を目指すなら、別途、アンチエイリアスフィルタをかける必要がある。
Inheritance: Pipe
显示文件 Open project: ufcpp/UfcppSample

Public Methods

Method Description
Process ( ) : void
RateTransposer ( Queue input, Queue output ) : System

デフォルト値で初期化。

RateTransposer ( Queue input, Queue output, double rate ) : System

パラメータの設定。

Private Methods

Method Description
Interpolate ( double delta, short val1, short val2 ) : short

線形補間関数。

Method Details

Process() public method

public Process ( ) : void
return void

RateTransposer() public method

デフォルト値で初期化。
public RateTransposer ( Queue input, Queue output ) : System
input Queue 入力キュー
output Queue 出力キュー
return System

RateTransposer() public method

パラメータの設定。
public RateTransposer ( Queue input, Queue output, double rate ) : System
input Queue 入力キュー
output Queue 出力キュー
rate double 変換レート。音程が rate 倍、再生時間が 1/rate 倍に。
return System