Houdini 19.5 ノード チャンネルノード

Pipe In channel node

Houdini開発キットがなくても、またHoudiniの内部を知らなくても、独自のデバイスから吐き出されたデータをCHOPに繋げることができます。

On this page

LinuxとMac OS Xの“named pipe”または“FIFO”(First In, First Out)を使用することができます(man -S 7 pipeを参照)。 または、Windows, Linux, Mac OS Xのネットワーク接続(リモート接続用)を使用することができます。

入力デバイスから値を取得し、FilenameまたはNetworkポートで指定したファイルにそれらの値を出力するプログラムが必要です。 あなたが書いたプログラムは、書式化されたメッセージをそのファイルやポートに書き出し、Pipe In CHOPは、そのメッセージを読み込んで、 そのメッセージで指定されたチャンネルを作成します。

Houdiniへネットワークを繋げる

他のサーバー(例えば、遠隔で実行中のHoudini Pipe Out CHOP)からネットワークデータを受信することができます。 データを送信する前に、サーバーとPipe In CHOP間で接続が確立されていなければなりません。 その接続は、SourceをPipeからNetworkへ変更することで行ないます。 チャンネルに渡す入力データを受信するためには、サーバーアドレスとポート番号を用意しなければなりません。 そのサーバーは、このCHOPが使用しているポートの接続をリスニングします。

2つのHoudiniプロセス間のリンクをセットアップするには、1つ目のプロセスのPipe Out CHOPが任意のポート(つまり、port #5010)に対して 有効(つまり接続をリスニングしている)になっている必要があります。 2つ目のHoudiniは、ネットワークアドレスを1つ目のHoudiniプロセスが動いているマシン名に設定されたPipe In CHOPを使用します。 そのネットワークポートは、サーバー(この場合、5010)と同じポートに設定してください。 ポート番号は、Pipe In CHOPとPipe OutCHOPで使用するポート番号が同じであれば、5000から10000までの任意の数値を設定することができます。 2つ以上の接続に関しては、別のポート番号を使用してください。 異なるマシン上でポート番号が同じPipe In/Out CHOPは、自動的にお互いを区別するはずです。

単にローカルプロセスからHoudiniへデータを送信したいのであれば、サーバーアドレスをlocalhostに設定してください。

Pipe In CHOPのプログラミング

Pipe In CHOPは、Houdini開発キットがなくてもCHOPのインターフェースをプログラミングできるように設計されています。

Pipe In CHOPを使えば、HoudiniはFIFO(First In, First Out)ファイルからここで記述した特別な書式の情報を読み込んで、CHOPチャンネルを作成することができます。 書式が正しい限り、Houdiniは、ジョイスティック、マイクロフォン、PuppetWorks社のハードウェアなどのデバイスを含んだソースからデータを取得することができます。

Pipe In CHOPは、2つのパラメータを持ち、3つのコマンドフォーマットを解読します。 1番目のパラメータには、読み込むファイルを指定し、2番目のパラメータは、アクティブモード(読み込み)と非アクティブモード(データの破棄)をトグルします。 サポートされているフォーマットは、以下の機能です:

  • 最新のサンプルデータをアップロード

  • すべてのサンプルデータをアップロードして完全な波形を作成

  • チャンネル名をアップロード

Pipe In CHOPの使い方

このCHOPを使って情報を読み込むには、適切なフォーマットでFIFOへ書き込みする別のアプリケーションを開発しなければなりません。 以下のセクションでは、ファイルを開いてPipe In CHOPで受け取る値を書き出すためのサンプルコード(C言語)について説明しています。

FIFOファイルの開き方

Pipe In CHOPが読み込むファイルを作成するには、FIFO_NAMEという新しいFIFOを開く以下のコードを使います。 FIFO_NAMEには作成したいファイル名を設定します。 書き込みに使用する出力ストリームは、Readerがファイルに接続されるまでブロックします。

#include    <sys/types.h>
#include    <sys/stat.h>
#include    <stdio.h>
mode_t       prev_mask;
FILE        *output = 0;
/* 新しいFIFOを作成します */
prev_mask = umask(0);
mkfifo (FIFO_NAME, 0666);
umask(prev_mask);
/* 書き込み用にファイルを開きます */
fprintf(stderr,
"Awaiting reader of FIFO %s\n\r", FIFO_NAME);
output = fopen(FIFO_NAME, "wb");

そのファイルへの書き込み方

Pipe In CHOPは、トークンと呼ばれる8バイトビッグエンディアンのデータ単位でFIFOから情報を読み込みます。 つまり、その情報はそれと同じフォーマットでファイルに書き込む必要があります。 また、コマンドの解読途中でリセットが必要な時にエスケープ文字を送信するのに適したメソッドもあります。

Note

Houdini12以前では、8バイトトークンではなく、4バイトトークンが使われていました。

リセット文字は、170の整数値です。 このバイトを受信し、その後にゼロの値のバイトが続けば、現在の解読がリセットされます。 コマンドをリセットせずに170の値を送信するには、Pipe In CHOPが1番目の値を無視するように 170の値の2バイトを連続で送信しなければなりません。

#define ESCAPE_CHARACTER        170
void
write_byte(char b, FILE *output)
{
    /* エスケープ文字を頭に追加する */
    if (b == ESCAPE_CHARACTER)
      fputc(ESCAPE_CHARACTER, output); 
      fputc(b, output);
}
void
write_values(const char *p, int size, FILE *output)
{
    int          i;
    for(i=0; i<size; i++)
      write_byte(p[i], output);
}
void
send_reset(FILE *output)
{
    fputc(ESCAPE_CHARACTER, output);
    fputc(0, output);
    fputc(ESCAPE_CHARACTER, output);
    fputc(0, output);
    fputc(ESCAPE_CHARACTER, output);
    fputc(0, output);
    fputc(ESCAPE_CHARACTER, output);
    fputc(0, output);
    fflush(output);
}

これらの関数を使えば、8バイトデータ(例えば、 00000001, 3.141,Chan, …)をファイルに送信することができます。 リセット信号を送信するには、4つのエスケープシーケンスを8バイトに詰め込んで書き込みます。 コマンドの前にリセット信号を送信して、コマンドの終わりでFIFOをフラッシュ(書き出し)するのは、よい考えです。

int64       token;
double      sample;
send_reset(output); 
/* ここでコマンドを送信する */
write_values((char *)&token, sizeof(token), output);
write_values((char *)&sample, sizeof(sample), output);
fflush(output);

Note

エスケープ文字(170)の後に他の文字を送信することで、現在のコマンド解読を停止してから再度開始することができます。 170-170シーケンスを送信すると、最初の文字が無視されて、その値が正常に送信されます。

Command Type #1: Current Values

Pipe In CHOPが読み込む1番目のコマンドタイプは、最近のチャンネルデータの取得に使われます。 このチャンネルデータは、1秒あたり30サンプルのデフォルトサンプルレート、1のCHOP長さ、0の開始位置を持ちます。 このコマンドは、いくつかのチャンネルを設定し、それらのチャンネルに関連したサンプルを読み込むことができます。

(int64) 1

コマンドタイプ。

(int64)

チャンネル数。

(double)

サンプルデータ。チャンネル毎に1サンプル。

Command Type #2: Upload

解読される2番目のコマンドタイプは、フルセットのサンプルをアップロードして波形を作成するのに使われます。 トラック長を満たすために、 サンプルレート、開始位置、チャンネル数、チャンネル毎のサンプルを用意しなければなりません。 1インデックスに対するチャンネルすべてが次のインデックスに移る前に満たされるように、チャンネルサンプルをインターリーブ(交互配置)しなければなりません。

(int64) 2

コマンドタイプ。

(int64)

トラック長。

(double)

サンプルレート。

(double)

開始インデックス。

(int64)

チャンネル数。

(double)

サンプルデータ。インデックス毎のチャンネル毎の1サンプル。

Command Type #3: Channel Names

このコマンドは、チャンネルを作成する前に名前を割り当てることができます。 名前は通常では文字列なので、それらの文字列が正しく解読されるように、それらの文字列を8バイトトークン(必要であれば、最後にゼロ埋め)として書き込むことが重要です。 このフォーマットでは、名前の数を設定する必要があり、その後に(8バイトトークンの数の範囲内で)名前の長さ、チャンネル毎の名前データを付けます。

(int64) 3

コマンドタイプ。

(int64)

名前の数。

名前毎に、以下のデータが読み込まれます:

(int64)

名前の長さ。名前毎に1つ。

(char*)

名前のかたまり(char[8] * 名前の長さ )

Command Type #4: Disconnect

このコマンドは、Pipe In CHOPにネットワーク接続を解除させます。 このコマンドは、Pipe Out CHOPActive パラメータがオフまたはノードがバイパスの時に、Pipe Out CHOPによって送信されます。

(int64) 4

コマンドタイプ。

追加コマンド

delay refresh
    (int64)    5 - コマンドタイプ
    (int64)    - 遅延させる秒数

script
    (int64)    6 - コマンドタイプ
    (int64)    - スクリプト長
    (char*)    - スクリプトのかたまり(char[8] * スクリプト長)

コマンドの書き込み

コマンドタイプ1のサンプルとして以下の関数を使えば、 Pipe In CHOPで読まれるFIFOへコマンドを送信することができます。

void
send_current_values(FILE *output, int num, double *samples)
{
    int64       token;
    int         j;
    send_reset(output);             /* 安全のため */
    /* コマンドタイプ */
    token = 1;
    write_values((char *)&token, sizeof(token), output);
    /* チャンネルの数 */
    token = num;
    write_values((char *)&token, sizeof(token), output);
    /* サンプル値 */
    for(j=0; j<num; j++)
      write_values((char *)&samples[j],
        sizeof(samples[j]), output);
      fflush(output);
}

ソースコードサンプル

Pipe Inアプリケーションのコンパイル可能なサンプルを以下で見つけることができます:

$HH/public/PPD.tar.Z

このプロトコルPuppetworksデバイスを使って実装されたあるデバイスと、そのドライバをproto_installアプリケーションによってインストールすることができます。

パラメータ

PipeIn

Source

UNIXパイプまたはネットワークポートを通じて、データをパイプインすることができます。

Filename

デバイスデータの読み込み先となるファイル。そのファイルは通常のファイルではなく、“named pipe”または“FIFO”でなければなりません。 UNIXでは、“mknod”を参照してください。

Server Address

サーバーコンピュータのネットワークアドレス。このアドレスは、'foo'や'foo.bar.com'などの標準のWWWWアドレスです。

Server Port

サーバーのネットワークポート。そのポート番号は、5000から10000の間で、サーバーとクライアントの接続で使用します。

Active

オンの時、CHOPは、パイプまたはサーバーから情報を受信します。 オフの時、アップデートが起こりません。 サーバーによって送信されたデータは消失しますが、パイプは、Activeが再度オンになるまでデータを記憶します。 Networkモードの場合、このパラメータをオンにすると接続が開始し、オフにすると接続が解除されます。

Reset Channels

すべてのチャンネルとデータをクリアします。

Common

これらのパラメータのいくつかは、すべてのCHOPノードで利用できない場合があります。

Scope

影響を受けるチャンネルを決めるために、いくつかのCHOPにはスコープ文字列があります。パターン(例えば、*(すべてに一致)、?(1文字に一致))は、スコープで使用可能です。

以下に可能なチャンネル名マッチングオプションの例を載せます:

chan2

単一チャンネル名に一致します。

chan3 tx ty tz

スペース区切りで4つのチャンネル名に一致します。

chan*

chanで始まる各チャンネルに一致します。

t?

?は1文字に一致します。t?tで始まる2文字のチャンネルに一致します。

r[xyz]

rxryrzのチャンネルに一致します。

blend[3-7:2]

指定した範囲の番号のチャンネルblend3blend5blend7に一致します。

blend[2-3,5,13]

チャンネルblend2blend3blend5blend13に一致します。

t[xyz]

[xyz]はチャンネルtxtytzに一致します。

Sample Rate Match

Sample Rate Matchオプションは、複数の入力CHOPのサンプルレートが異なる場合を処理します。

Resample At First Input’s Rate

1番目の入力のレートを使って他の入力を再サンプリングします。

Resample At Maximum Rate

一番高いサンプルレートに再サンプリングします。

Resample At Minimum Rate

一番低いサンプルレートに再サンプリングします。

Error if Rates Differ

異なるサンプルレートを受け入れません。

Units

指定したTimeパラメータの単位。

例えば、秒(デフォルト)、フレーム(HoudiniのFPS)、サンプル(CHOPのサンプルレート)の単位で持続する遅延の時間の長さを指定することができます。

Note

Unitsパラメータを変更する時、既存のパラメータを新しい単位に変換しません。

Time Slice

Time Slicingはクッキングパフォーマンスを良くしメモリ使用量を少なくする機能です。慣例上、CHOPは全体のフレーム範囲のチャンネルを計算します。チャンネルをフレーム毎に評価する必要がないなら、全体のチャンネル範囲をクッキングするのは不必要です。必要なチャンネルの部分だけを計算するほうが効率的です。この部分のことをTime Sliceと呼びます。

Unload

CHOPで使われるメモリをそのCHOPのクックが終わったあとにリリースして、次のCHOPにデータを渡します。

Export Prefix

ExportプリフィックスをCHOPチャンネル名の前に追加することで、エクスポートする場所を決めることができます。

例えば、CHOPチャンネル名がgeo1:txで、プリフィックスが/objなら、チャンネルは、/obj/geo1/txにエクスポートされます。

Note

Export Prefix を空白のままにすることができますが、CHOPトラック名をobj:geo1:txのように絶対パスの名前にする必要があります。

Graph Color

すべてのCHOPには、このオプションがあります。各CHOPはGraphポートの表示で割り当てられたデフォルトのカラーを取得しますが、Graph Color下のCommonぺージ内のカラーを上書きすることができます。Paletteには36個のRGBカラーの組み合わせがあります。

Graph Color Step

グラフがアニメーションカーブを表示し、CHOPに2つ以上のチャンネルがある時、これは、虹色のカラースペクトルを指定して、あるチャンネルから次のチャンネルへカラーを別のカラーに定義します。

See also

チャンネルノード

  • Acoustic

    空間音声システムのオーディオフィルタと音源をデザインします。

  • Agent

    エージェントプリミティブからアニメーションクリップをインポートします。

  • Area

    チャンネルグラフのエリアを計算します。これは、チャンネルの積分計算やチャンネルの統合と同様のものです。

  • Attribute

    入力CHOPのアトリビュートを追加、削除、更新をします。

  • Audio In

    アナログ/デジタル・オーディオポートから音声入力を受け取ります。

  • Band EQ

    従来のバンドイコライザーは音声の固定周波数帯域をフィルタリングするのにつまみを動かしますが、それと同様の方法で14バンドイコライザーは入力チャンネルをフィルタリングします。

  • Beat

    音楽にビートを手動で打ったり、自動でループを入れます。

  • Blend

    入力2,3などの2個以上のCHOPを入力1のブレンディングチャンネルを使ってまとめます。

  • Blend Pose

    多次元またはサンプルベースのチャンネル補間を行ないます。

  • Channel

    パラメータの値からチャンネルを作成します。

  • Channel VOP

    チャンネルデータを制御するVOPネットワークを含んでいます。

  • Channel Wrangle

    VEXスニペットを実行してチャンネルデータを修正します。

  • Composite

    1個のCHOPのチャンネルを他のCHOPのチャンネルにレイヤー化(ブレンド化)します。

  • Constant

    最大40個までの新しいチャンネルを作成します。

  • Constraint Blend

    パラメータとして指定したウェイトのリストを使用することで、2つ以上のCHOP入力を結合します。

  • Constraint Get Local Space

    Object Local Transformを返します。

  • Constraint Get Parent Space

    Object Parent Transformを返します。

  • Constraint Get World Space

    Object World Transformを返します。

  • Constraint Lookat

    常にターゲット位置に向くように回転を拘束します。

  • Constraint Object

    2つのオブジェクトを比較して、その相対的な位置と向きの情報を返します。

  • Constraint Object Offset

    2つのオブジェクトを比較して、その相対的な位置と向きの情報を返します。

  • Constraint Object Pretransform

    Object Pretransformを返します。

  • Constraint Offset

    拘束を評価した後にトランスフォームオフセットを適用します。

  • Constraint Parent

    オブジェクトの親子化を組み直します。

  • Constraint Path

    パス上にオブジェクトを配置して、そのパスの方向にオブジェクトを向けます。

  • Constraint Points

    ジオメトリのポイント位置を使って、オブジェクトの位置と向きを変更します。

  • Constraint Sequence

    シーケンスの入力をブレンドすることで、複数のCHOPを結合します。

  • Constraint Simple Blend

    指定した単一ウェイトをパラメータとして使用することで、2つのCHOPを結合します。

  • Constraint Surface

    ジオメトリのサーフェスを使って、オブジェクトの位置と向きを変更します。

  • Constraint Transform

    移動、回転、スケールのチャンネルを受け取って、それらをトランスフォームします。

  • Copy

    1番目の入力のタイムラインに沿って2番目の入力からコピーを複数生成します。

  • Count

    チャンネルがトリガーまたはリリース閾値を超えた回数を数えます。

  • Cycle

    周期を作成します。

  • Delay

    入力を遅延します。通常モードまたはタイムスライスモードで動きます。

  • Delete

    入力からのチャンネルを削除します。

  • Device Transform

    デバイス入力からのデータをトランスフォームデータに変換します。

  • Dynamic Warp

    このノードの2番目の入力(参照クリップ)を参照として使用して、1番目の入力(ソースクリップ)をタイムワープさせます。

  • Dynamics

    dopfieldエクスプレッションを使ってアクセス可能なDOPシミュレーションの情報を抽出します。

  • Envelope

    各入力サンプルにおける近接の最大振幅を出力します。

  • Euler Rotation Filter

    行列を分解した後の回転データの不連続性を修復します。

  • Export

    チャンネルを出力する便利なツール。

  • Export Constraints

    Constraints Networkを任意のオブジェクト上にエクスポートします。

  • Export Transforms

    トランスフォームをたくさんのオブジェクトのConstraints Networkにエクスポートします。

  • Expression

    エクスプレッションを使って入力チャンネルを修正します。

  • Extend

    CHOPのextend conditionsを設定するだけです。音程の前・後にCHOPをサンプリングするときに、あなたがどの値が必要なのか決めます。

  • Extract Bone Transforms

    ジオメトリオブジェクトから現行のワールド空間またはローカル空間のボーントランスフォームを抽出します。

  • Extract Locomotion

    アニメーションクリップからロコモーションを抽出します。

  • Extract Pose-Drivers

    指定した派生トランスフォーム、ノードパラメータ、CHOPチャンネルから、ポーズ空間変形用チャンネルを生成します。

  • FBX

    FBXファイルからチャンネルデータを読み込みます。

  • Fan

    他のCHOPを制御するために使用します。

  • Feedback

    1フレームまたはタイムスライス前のCHOPの状態を取得します。

  • Fetch Channels

    他のCHOPsからチャンネルを取り込みます。

  • Fetch Parameters

    他のOPからチャンネルを取り込みます。

  • File

    CHOPで使うチャンネルと音声ファイルを読み込みます。

  • Filter

    入力チャンネルを滑らかにまたはシャープにします。

  • Foot Plant

    位置チャンネルが静止している時を計算します。

  • Foreach

    各グループの中のネットワークを処理しながら、入力チャンネルをグループ別にわけます。

  • Function

    Math CHOPよりも複雑な数学関数(三角関数、対数関数、指数関数)を用意しています。

  • Gamepad

    ゲームパッドまたはジョイスティックデバイスの入力値をチャンネル出力に変換します。

  • Geometry

    ジオメトリオブジェクトを使ってチャンネルを作成するSOPを選択します。

  • Gesture

    1番目の入力のショートセグメントを記録して、3番目の入力のビートに合わせてそのセグメントをループします

  • Handle

    ハンドルオブジェクトを使ってインバースキネマを駆動させるエンジン 。

  • Hold

    1番目の入力の値をサンプルし保持します。

  • IKSolver

    ボーンチェーンのインバースキネマティクス回転を計算します。

  • Identity

    単位行列トランスフォームを返します。

  • Image

    画像のピクセル行列をCHOPチャンネルに変換します。

  • Interpolate

    複数入力をキーフレームとして扱い、それらを補間します。

  • InverseKin

    ボーンチェーンとエンドアフェクターベースのボーンオブジェクトのチャンネルを生成します。

  • Invert

    入力の逆トランスフォームを返します。

  • Jiggle

    入力のTranslateチャンネルに微震するエフェクトを作成します。

  • Keyboard

    キー入力をチャンネル出力に変換します。

  • Lag

    チャンネルに遅延とオーバーシュートを追加します。

  • Layer

    複数のChannel CHOPのキーフレームアニメーションにウェイトを付けたレイヤをベースのChannel CHOPにミックスします。

  • Limit

    入力チャンネルを制限、正規化するための色々な機能があります。

  • Logic

    全入力CHOPのチャンネルを2進チャンネルに変換し、色々な論理演算を使って合成します。

  • Lookup

    1番目の入力のチャンネルを2番目の入力のlookupテーブルに索引を付けます。そして、lookupテーブルから値が出力されます。

  • MIDI In

    MIDI機器とファイルからNoteイベント、Controllerイベント、Program Changeイベント、Timingイベントを読み込みます。

  • MIDI Out

    MIDIイベントをMIDI機器に送ります。

  • Math

    チャンネル上またはチャンネル間で色々な数学的な処理を実行します。

  • Merge

    複数の入力を受け取り、それらを出力に結合します。

  • Mouse

    マウスからスクリーンのXY座標を出力します。

  • Mouse 3D

    Connexionスペースマウスの入力値をチャンネル出力に変換します。

  • Multiply

    入力トランスフォームすべてを事後乗算します。

  • Network

    ネットワークモードのPipe In/Out CHOPと同様。

  • Noise

    -1から1の範囲で近似処理した値で、二度と繰り返さない不規則な波形を作成します。

  • Null

    代替用として使用し、これ自体は何も機能がありません。

  • Object

    2個のオブジェクトを比較して相対的な位置や向きの情報を返します。

  • ObjectChain

    オブジェクトのチェーンでTransformを意味するチャンネルを作成します。

  • Oscillator

    2つの方法で音声を生成します。

  • Output

    サブネットワークの出力をマークします。

  • Parametric EQ

    オーディオクリップをフィルタリングしてから他のオーディオエフェクトを適用します。

  • Particle

    POP Networkのパーティクルの位置に従ってオブジェクトを移動させるために、TranslateとRotateチャンネルを生成します。

  • Pass Filter

    4つの異なるフィルターを使って音声入力をフィルタリングします。

  • Phoneme

    英語のテキストをひと続きの音声値に変換します。

  • Pipe In

    Houdini開発キットがなくても、またHoudiniの内部を知らなくても、独自のデバイスから吐き出されたデータをCHOPに繋げることができます。

  • Pipe Out

    Houdiniから吐き出されたデータを他のプロセスに渡します。

  • Pitch

    音声データから音程のピッチを抽出します。

  • Pose

    入力を評価することで、後で使用するためのトランスフォームポーズを記録します。

  • Pose Difference

    2つのポーズ間の差分を計算します。

  • Pretransform

    Translate、Rotate、Scaleのチャンネルを受け取り、指定したオブジェクトのプリトランスフォームを使ってそれらのチャンネルを変換します。

  • Pulse

    1チャンネルの規則的な間隔でパルスを生成します。

  • ROP Channel Output

  • Record

    1番目(Position)の入力のチャンネルを内部ストレージアレイに記録し、ストレージアレイをCHOP出力として出力します。

  • Rename

    チャンネルの名前を変更します。

  • Reorder

    1番目の入力CHOPのチャンネルを数字またはアルファベット順で並べ替えます。

  • Resample

    入力チャンネルを新しいレート、開始、終了の間隔にサンプリングし直します。

  • Sequence

    すべての入力を受け取り、CHOPを直列に繋げます。

  • Shift

    CHOPをタイムシフトしてCHOPの間隔の開始/終了を変更します。

  • Shuffle

    チャンネルのリストを再編します。

  • Slope

    入力チャンネルの傾斜(微分)を計算します。

  • Spatial Audio

    3Dオーディオを生成するためのレンダリングエンジン。

  • Spectrum

    入力チャンネルの周波数スペクトルやそれらのチャンネルの配分を計算します。

  • Spline

    CHOPのグラフをCubicまたはBezierハンドルで直接チャンネルデータを編集します。

  • Spring

    スプリングに重りを取り付けられたような振動を入力チャンネルから作成します。

  • Stash

    コマンド実行時にノード内の入力モーションをキャッシュ化してから、それをノードの出力として使用します。

  • Stash Pose

    Pose-Space Deform SOPやPose-Space Edit SOPのノードに使用するためのボーントランスフォームとポーズドライバをスタッシュ(貯蔵)します。

  • Stretch

    チャンネルの形とサンプリングレートを保持しつつ、チャンネルを新しい間隔にサンプリングし直します。

  • Subnetwork

    たくさんのCHOPを1つにまとめることで、複雑なネットワークを単純化します。

  • Switch

    CHOPnetを使ってチャンネルの流れを制御します。

  • Time Range

    入力ノードを複数回クックし直すことによってCurrent FrameモードをTime Rangeモードに変換します。

  • Time Shift

    CHOPの時間をずらすことで、別の時間でノードを再クックします。

  • Transform

    Translate、Rotate、Scaleチャンネルを変更します。

  • Transform VOP CVEX

    トランスフォームデータを制御可能なVOPネットワークを含んでいます。

  • TransformChain

    Translate、Rotate、Scaleチャンネルのチェーンを結合します。

  • Trigger

    オーディオスタイルの attack/decay/sustain/release(ADSR)envelopeを入力チャンネルのすべてのトリガー点に追加します。

  • Trim

    入力チャンネルを短くまたは長くします。

  • VEX Waveform

    Waveform CHOPのサブセットです。

  • Vector

    チャンネルセットに対してベクトル処理を実行します。

  • Voice Split

    オーディオトラックを単語別に異なるチャンネルに分けます。

  • Voice Sync

    指定した音素サンプルでオーディオチャンネルから音素を検出します。

  • Warp

    1番目の入力(Pre-Warp Channels)を2番目の入力のワープチャンネルでタイムワープします。

  • Wave

    ループする波形を作成します。

  • チャンネルノード

    チャンネルノードは、チャンネルデータの作成、フィルタリング、制御をします。