TimeStretch
(clip, float "tempo", float "rate",
float "pitch", int "sequence", int "seekwindow",
int "overlap", bool "quickseek", int "aa")
TimeStretch
erlaubt es, Audio tempo, pitch und playback rate Parameter unabhängig voneinander einzustellen:
Parameter:
Die Geschwindigkeitsparameter sind Prozentsätze, und liegen standardmäßig 100%. Wenn tempo
200 ist, wird die Audiospur doppelt so schnell abgespielt, wenn es 50
ist, wird sie mit halber Geschwindigkeit abgespielt. Wenn man rate einstellt, entspricht das der gleichzeitigen Verwendung von AssumeSampleRate
und ResampleAudio.
Der Time-Stretch Algorithmus hat ein paar Parameter, die auf höhere
Klangqualität für bestimmte Anwendungen abgestimmt werden können. Die
aktuellen Standard-Parameter iterative durch Probieren und Vergleichen
gefunden (sprich: "trial and error"), um die beste subjektive
Klangqualität bei Pop/Rock-Musik zu erhalten, aber bei der Verarbeitung
anderer Arten von Sound können die Standard-Parameter zu einem
suboptimalen Ergebnis führen.
Die Standardparameterwerte des Time-Stretch Algorithmus sind
Sequence 82
SeekWindow 28
Overlap 12
Diese Parameter beeinflussen den Time-Stretch-Algorithmus wie folgt:
Die folgende Tabelle fasst zusammen, wie die Parameter für verschiedene Anwendungen angepasst werden können:
Parameter |
Standard |
Größerer Wert bewirkt... | Kleinerer Wert bewirkt... | Musik | Sprache | CPU Last |
Sequence |
Standardwert ist recht groß, passend für die Verlangsamung von Musik | Größer Wert ist meist besse, wenn man das Tempo verringert. Erhöhung reduziert den Echoeffekt, wenn man das Tempo verringert. |
Kleinerer Wert, wenn man das Tempo erhöht. Das Verkleinern erhöht aber den Echoeffekt
wenn man das Tempo verringert. |
Standardwert ist meist gut | Ein kleinerer Wert als der Standard könnte besser sein | Erhöhen des Parameterwertes verringert Porzessorlast |
SeekWindow |
Standardwert ist recht groß, passend für die Verlangsamung von Musik | Größerer Wert erleichtert, gute Mischpositionen zu finden, aber kann den Driftartefakt erzeugen. | Kleinerer verringert die Chance, eine gute Mischposition zu finden, aber reduziert den Driftartefakt. | Standardwert ist meist gut, außer wenn der "Drifting" Artefakt stört. | Standardwert ist meist gut | Erhöhen des Parameterwertes erhöht Porzessorlast |
Overlap |
Standardwert ist recht groß, damit er zu den oberen Werten passt | Wenn du den "sequence ms" Wert verringerst, könntest du hier auch einen kleineren versuchen. | Erhöhen des Parameterwertes erhöht Porzessorlast |
Hinweise:
Beispiele:
TimeStretch(pitch = 200)
Dies erhöht die Stimmung (pitch) um eine Octave, wobei die Länge der Originalspur erhalten bleibt.
TimeStretch(pitch = 100.0*pow(2.0, 1.0/12.0))
Dies erhöht die Stimmung (pitch) um einen Halbton, wobei die Länge der Originalspur erhalten bleibt.
TimeStretch(tempo = (100.0*25.0*1001.0)/24000.0)
Dies ändert das tempo von Filmeschwindigkeit auf PAL Geschwindigkeit, ohne die Tonhöhe zu ändern.
Verweise:
Diese Funktion verwendet:
SoundTouch library Copyright (c) Olli Parviainen 2002-2006
http://www.iki.fi/oparviai/soundtouch
http://www.surina.net/soundtouch
Changelog:
v2.55 | Initial Release |
v2.57 | Expose soundtouch parameters |
$Date: 2008/12/24 22:55:01 $