ProSound : SoundClass
 
 
 
ProSound - superclass: SoundClass; super-superclass:MAXWrapper - classID: #(1198500318, 1536265802) 	 

3ds Max 2010 で導入された ProSound SoundClass は 100 種類のサウンド チャンネルと広範囲な MAXScript アクセスをサポートする優れた Sound Object を提供します。

概要については「プロ サウンド Extension」のトピックを参照してください。

メソッド:

サウンド システムの初期化

   

<boolean>prosound.init <boolean>KeepExistingFile 	 

プロ サウンドを初期化して、MaxScript からアクセスできる状態にします。プロ サウンドがロードされていない場合は、自動的にロードし、3ds Max のサウンド オブジェクトに設定します。 3ds Max の Default SoundClass オブジェクトにオーディオ ファイルが既にロードされてている場合は、 KeepExistingFile フラグを true に設定することによって、プロ サウンドのオーディオ トラックの 1 つとしてこのファイルをプロ サウンドに追加し、保持することができます。

成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound. isActive()   

プロ サウンドが 3ds Max のサウンド オブジェクトであれば true、それ以外の場合は false を返します。戻り値が false の場合は、 prosound.init() を呼び出して、他のすべてのプロ サウンド MAXScript 関数にアクセスします。

   

<integer>prosound.Version() 

ProSound のバージョンに 100 を掛けた値を返します。たとえば、バージョンが 1.4 であれば、この関数は 140 を返します。

例:

prosound.isActive () --プロ サウンドがアクティブであるかを確認
ProSound is not active. Call ProSound.Init (true)
ProSound.Init (true)
Attempting to Load ProSound
ProSound Init Success
true
prosound.isActive () --再試行
ProSound is active.
true
prosound.version () --バージョンを取得
140

   

<boolean>prosound.unload () 

プロ サウンドをロード解除して、3ds Max の Default Sound Class オブジェクトを有効にします。正常に終了した場合は true、それ以外の場合は false を返します。

例:

prosound.unload () -- プロ サウンドをロード解除して Default Sound を有効化

プロ サウンド ダイアログ ボックスのコントロール

   

<void>prosound.open () 

[ProSound]ダイアログ ボックスを開くまたは最大化します。

ProSound がアクティブでない場合は、アクティブ化も行います。

   

<void>prosound.close() 

[ProSound]ダイアログ ボックスが開いている場合は閉じます。

例:

prosound.open () -- [ProSound]ダイアログ ボックスを開きます。
prosound.close () -- ダイアログ ボックスを閉じます。

サウンド ファイルの追加と問い合わせ

   

<integer>prosound.MaxTracks() 

プロ サウンドでサポートされるオーディオ トラックの最大数をレポートします。現在、この数は 100 です。

   

<integer>prosound.NumTracks() 

プロ サウンドで使用されているオーディオ トラックの数をレポートします。これには、アクティブではないがファイルが割り当てられているトラックも含まれます。

   

<boolean>prosound.append <filename>AudioFile 

指定されたファイルをロードし、オーディオ トラックのリストの末尾に追加します。引数は有効なオーディオ ファイルの完全名でなくてはなりません。

プロ サウンドの UI で[追加]ボタンを使用することと同じです。

成功の場合は true、それ以外の場合は false を返します。

   

boolean>prosound.delete <index>Track 

指定したオーディオ トラックを削除します。

プロ サウンドの UI で[削除]ボタンを使用することと同じです。

成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.replace <index>Track <filename>AudioFile 

指定したインデックスの位置にあるオーディオ ファイルを置き換えます。最初の引数は置き換えるファイルのインデックス、2 つ目の引数は追加する有効なオーディオ ファイルの完全ファイル名です。

プロ サウンドの UI で[置換]ボタンを使用することと同じです。

成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.ReloadAll() 

すべてのオーディオ ファイルをプロ サウンドに再ロードします。再ロードに成功した場合は true、それ以外の場合は false を返します。

例:

prosound.append"C:\\WINDOWS\\Media\\chimes.wav"--ファイルを追加
--> true
prosound.append"C:\\WINDOWS\\Media\\tada.wav"--さらに追加
--> true
prosound.numtracks () --トラック数を確認
--> 2
prosound.delete1 --トラック 1 を削除
--> true
prosound.replace 1"C:\\WINDOWS\\Media\\notify.wav"
--> true
prosound.numtracks() --トラック 1 を削除した後のトラック数を取得
--> 1
prosound.maxtracks() --サポートされているトラック数を確認
--> 100
prosound.reloadall() --すべてのトラックを再ロード
--> true

トラックの操作

   

<boolean>prosound.active <index>Track 

インデックスで指定されたトラックがアクティブである場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetActive <index>Track <boolean>ActiveState 

指定されたトラックのアクティブ状態を設定します。成功の場合は true、それ以外の場合は false を返します。

例:

prosound.active 1 --トラック 1 がアクティブであるかどうかを確認
-->true
prosound.setactive 1false --オフにする
-->true
prosound.active 1 --現在オンであるかオフであるかを確認
-->false
prosound.setactive 1true --オンに戻す
-->true

   

filename>Name <index>Track 

指定されたトラックのファイル名を返します。

   

<integer>prosound.SampleRate <index>Track 

オーディオ トラックのサンプル レートを返します。

   

integer>prosound.channels <index>Track 

指定されたオーディオ トラックのオーディオ チャンネル数を返します。

例:

prosound.name1 --トラック 1 の名前を取得
-->"C:\WINDOWS\Media\notify.wav"
prosound.SampleRate 1 --トラック 1 のサンプル レートを取得
-->22050
prosound.channels1 --トラック 1 のチャンネル数を取得
-->2

   

time>prosound.start <index>Track 

インデックスで指定されたトラックの開始フレーム番号を返します。

   

<boolean>prosound.SetStart <index>Track <time>StartFrame 

インデックスで指定されたトラックの開始フレームを設定します。成功の場合は true、それ以外の場合は false を返します。

   

time>prosound.end <index>Track 

指定されたトラックの終了フレーム番号を返します。

   

<boolean>prosound.SetEnd <index>Track <time>EndFrame 

指定されたトラックの終了フレームを設定します。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.Shift <index>Track <time>Frames 

指定されたトラックの開始フレームおよび終了フレームを、指定された数だけずらします。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.ShiftAll <integer>Frames 

すべてのオーディオ トラックの開始フレームおよび終了フレームを、指定された数だけずらします。成功の場合は true、それ以外の場合は false を返します。

   

time>prosound.filelength <index>Track 

指定されたオーディオ ファイルの長さを (フレーム数で) 返します。これはファイルの長さであり、トラックの長さではありません。つまり、ファイルの長さが 120 フレームであり、トラックの開始フレームおよび終了フレームが 0 および 150 である場合は、150 ではなく 120 が返されます。トラックの長さを取得するには、 prosound.end() および prosound.start() を使用します。

プロ サウンドの UI の[持続時間]の値と同じです。

例:

prosound.start 1 --トラック 1 の開始フレームを取得
-->0f
prosound.end 1 --トラック 1 の終了フレームを取得
-->18.9625f
prosound.filelength 1 --トラック 1 のファイルの長さを取得
-->40.5875f
prosound.setstart 1 10 --トラック 1 から トラック 10 までの開始フレームを設定
-->true
prosound.setend 1 123 --トラック 1 からトラック 123 までの終了フレームを設定
-->true
prosound.start 1 --トラック 1 の新しい開始フレームを確認
-->10f
prosound.end 1 --トラック 1 の新しい終了フレームを確認
-->123f
prosound.shift 1 50 --開始と終了をそれぞれ 50 フレームずつずらす
-->true
prosound.start 1 --トラック 1 のシフトされた開始フレームを確認
-->60f
prosound.end 1 --トラック 1 のシフトされた終了フレームを取得
-->173f
prosound.shiftAll 1-50 --すべてのトラックを 50 フレームずつ戻す
-->true

   

<integer>prosound.NumLoops <index>Track 

このトラックでループが使用されている場合は、トラックのループの数を返します。それ以外の場合は、トラックの持続時間およびファイルの長さに基づいて、完了したループの数を計算します。

   

<boolean>prosound.SetNumLoops <index>Track <integer>NumberOfLoops 

指定されたトラックのループの数を設定します。また、このトラックの[ループを使用]オプションを true に設定します。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.UseLoops <index>Track 

指定されたトラックについて[ループを使用]オプションが有効であれば true、それ以外の場合は false を返します。

例:

prosound.numloops 1 --トラック 1 のループ数を取得 
-->2
prosound.setnumloops1 3 --トラック 1 のループ数を 3 に設定
-->true
prosound.end 1 --トラック 1 の新しい終了フレームを確認
-->181.762f
prosound.useloops 1 --トラック 1 でループが使用されるかを確認
-->true

再生コントロール

   

<boolean>prosound.backwardScrub() 

[逆方向スクラブを許可]再生オプションの状態を返します。逆方向スクラブが有効であれば true、それ以外の場合は false を返します。

   

<boolean>prosound.setBackwardScrub <boolean>BackwardsScrubState 

[逆方向スクラブを許可]再生オプションを設定します。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.PlayOnce() 

[1 回だけ再生]オプションが有効な場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetPlayOnce <boolean>State 

[1 回だけ再生]再生オプションを true または false に設定します。正常に終了した場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.UsePlaybackRange() 

[再生範囲を使用]オプションが有効な場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetUsePlaybackRange <boolean>State 

[再生範囲を使用]再生オプションを特定のブール値の状態に設定します。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetPlaybackEnd <integer>EndFrame 

[再生範囲を使用]再生オプションの終了フレームを設定します。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetPlaybackStart <integer>StartFrame 

[再生範囲を使用]再生オプションの開始フレームを設定します。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.PingPong() 

[ピンポン]再生オプションが有効な場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetPingPong <boolean>State 

[ピンポン]再生オプションの状態を設定します。成功の場合は true、それ以外の場合は false を返します。

例:

prosound.backwardScrub ()-- 逆方向スクラブが有効かどうかを確認
--> false
prosound.setBackwardScrub true-- 逆方向スクラブを有効化
--> true
prosound.backwardScrub () --もう一度確認
--> true
prosound.playonce () --[1 回だけ再生]オプションの状態を確認
--> false
prosound.setplayonce true --再生をループに設定
--> true
prosound.useplaybackrange () --再生範囲が使用されているかを確認
--> false
prosound.setuseplaybackrange true --再生範囲を有効化
--> true
prosound.setplaybackend 100 --再生範囲を 100 で終了するよう設定
--> true
prosound.setplaybackstart 0 --再生範囲を 0 で開始するよう設定
--> true
prosound.pingpong () --ピンポン再生が有効化されているかを確認
--> false
prosound.setpingpong true --ピンポン再生を有効化
--> true

   

<boolean>prosound.isPlaybackActive () 

プロ サウンドの再生が有効な場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetPlaybackActive <boolean>State 

ブール値の引数に基づいてオーディオ再生を有効化または無効化します。成功の場合は true、それ以外の場合は false を返します。

   

<void>prosound.Step() 

1 フレームずつ進み、対応するオーディオを再生します。

   

<void>prosound.Stepback() 

1 フレームずつ後退し、対応するオーディオを再生します。

例:

prosound.isplaybackactive () --再生がアクティブであるかを確認
--> false
prosound.setplaybackactive true --再生をアクティブ化
--> true
prosound.isplaybackactive () --再生がアクティブであるか再確認
--> true
prosound.step ()
prosound.Stepback ()

レンダリング コントロール

   

<boolean>prosound.export <filename>AudioFile <integer>StartFrame <integer>EndFrame 

指定したファイル名のファイルに、組み合わされたオーディオを書き出そうとします。ファイルは、レンダリング設定を使って PCM 形式で保存されます。成功の場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.isRenderActive() 

プロ サウンド オーディオ レンダリングが有効な場合は true、それ以外の場合は false を返します。

   

<boolean>prosound.SetRenderActive <boolean>State 

ブール値の引数に基づいて、オーディオ レンダリングを有効にします。

成功の場合は true、それ以外の場合は false を返します。

例:

prosound.export "c:\\sounds\\export_test.wav" 0 100
--> true
prosound.isrenderactive () --レンダリングがアクティブであるかを確認
--> false
prosound.setrenderactive true
--> true

メトロノーム コントロール

   

<boolean>prosound.isMetroActive () 

[メトロノーム]が有効である場合は true、無効になっている場合は false を返します。

   

<boolean>prosound.SetMetroActive <boolean>ActiveState 

ブール値の引数に基づいて、メトロノームを有効または無効にします。成功の場合は true、それ以外の場合は false を返します。

例:

prosound.ismetroactive() --メトロノームがアクティブであるかを確認
--> false
prosound.setmetroactivetrue --メトロノームを有効化
--> true
prosound.ismetroactive() --変更が動作したかを確認
--> true
prosound.setmetroactivefalse --メトロノームを無効化
--> true
prosound.ismetroactive() --ここでは無効化
--> false
関連事項