TimeStretch

TimeStretch (clip, float "tempo", float "rate",float "pitch", int "sequence", int "seekwindow",int "overlap", bool "quickseek", int "aa")

TimeStretch は、音のテンポ(tempo)*1、ピッチ(pitch)*2、再生レート(rate)の各パラメータを、それぞれ独立して変更することを可能にします。すなわち:

パラメータ

速度に関するパラメータはパーセンテージで、デフォルトは 100 です。tempo が 200 なら 2 倍の速度で、50 なら半分の速度で再生されます。rate の調整は、AssumeSampleRateResampleAudio を使用するのと同等です。

タイムストレッチ*3アルゴリズムは、一部のアプリケーション向けに音質を最適化するために調整することが可能ないくつかのパラメータを持っています。ポップミュージックまたはロックミュージックの処理において主観的な最高の音質を得るために、現在のデフォルトのパラメータは、IF-THEN 形式*4の分析の繰り返し(すなわち「試行錯誤」)によって選択されています。しかし、異なる種類の音を処理するアプリケーションでは、デフォルトのパラメータは最適とは言えない結果をもたらすかもしれません。

タイムストレッチアルゴリズムのデフォルトのパラメータ値は、以下のとおりです:

Sequence     82
SeekWindow   28
Overlap      12

これらのパラメータは、次のようにタイムストレッチアルゴリズムに影響します:

下の表は、パラメータが異なるアプリケーションに対してどのように調節されるかを要約したものです:

パラメータ名 デフォルト値の大きさ 大きい値の影響 小さい値の影響 ミュージック スピーチ CPU 負荷への影響
Sequence
デフォルト値は比較的大きく、音楽のテンポを遅くするために選ばれている。 通常、大きい値はテンポを遅くするには良い。値を大きくすると、テンポを遅くする際に「エコー」ノイズを減速する。 小さい値はテンポを速くするのに良いかもしれません。値を小さくすると、テンポを遅くする際に「エコー」ノイズを加速する。 通常はデフォルト値が良い。 デフォルトより小さい値が良いかもしれない。 パラメータ値の増加は計算負荷を減少させる。
SeekWindow
デフォルト値は比較的大きく、音楽のテンポを遅くするために選ばれている。 大きい値は良いミキシング位置を見つけることを容易にするが、「ドリフト」ノイズを引き起こすかもしれない。 小さい値は良いミキシング位置を見つける可能性を減らすが、「ドリフト」ノイズを減少させる。 「ドリフト」ノイズが騒がしくない限り、通常はデフォルト値が良い。 通常はデフォルト値が良い。 パラメータ値の増加は計算負荷を増大させる。
Overlap
デフォルト値は比較的大きく、上記のパラメータに合わせるために選ばれている。   「Sequence ミリ秒」の設定を引き下げた場合は、小さめの値を試しても良いかもしれない。     パラメータ値の増加は計算負荷を増大させる。

これは、サンプルアキュレートなプラグインではありません。使用すれば、わずかな誤差が発生するかもしれません。浮動小数点数値を扱っているため、とりわけ大きなサンプルに関して、丸め誤差が生じるかもしれません。しかし一般的には、映画の長さのサンプルに対し、誤差は数十ミリ秒を超えることはありません。

SoundTouch は、浮動小数点サンプルモードで使用されます。

使用例:

TimeStretch(pitch = 200) 

オリジナルのサンプルの長さを維持しながら、pitch を 1 オクターブ上げます。

TimeStretch(pitch = 100.0*pow(2.0, 1.0/12.0)) 

オリジナルのサンプルの長さを維持しながら、pitch を 1 セミトーン*6上げます。

TimeStretch(tempo = (100.0*25.0*1001.0)/24000.0)

ピッチを変更せずに、映画のスピードから PAL 方式のスピードへ tempo を変更します。

クレジット:

この関数は以下のライブラリを使用しています:

SoundTouch library Copyright (c) Olli Parviainen 2002-2006

http://www.iki.fi/oparviai/soundtouch
http://www.surina.net/soundtouch

更新履歴:

v2.55 初版
v2.57 soundtouch パラメータを公開

原文 Date: 2006/04/08 10:43:32
日本語訳 $Date: 2008/07/19 03:50:15 $