6.7.7 LoadVectorFrames

6.7.7.1 ノードの概要

SaveVectorFrames で作成されたデータファイルをフレーム毎にVector<float> 型またはVector<complex<float> > 型に読み込む.

6.7.7.2 必要なファイル

SaveVectorFrames によって作成されたテキスト形式(TEXT)またはバイナリ形式(RAW)のデータファイル.

6.7.7.3 使用方法

どんなときに使うのか

このノードは,SaveVectorFrames によってファイルに保存されたフレームのデータをVector<float> 型またはVector<complex<float> > 型に復元し,ファイル内のデータを処理できるようにする.

典型的な接続例

6.113 に,ネットワークでLoadVectorFrames を使用した接続例を示す. このサンプルネットワークは,最後に入力音源の位置を表示するためのものである. LocalizeMUSIC の隠れた出力端子の代わりに,NormalizeMUSIC のMUSIC_SPEC入力端子に対して,LoadVectorFrames はVector<float> 型のあらゆる方向のMUSICスペクトルのパワーを出力する. NormalizeMUSIC は,LocalizeMUSIC で指定されたソースポジションとLoadVectorFrames で提供されたMUSICスペクトラムの両方を使用し,SourceTracker による音源検出を安定させることができる.

\includegraphics[width=.9\textwidth ]{fig/modules/LoadVectorFrames}
Figure 6.113: LoadVectorFrames の接続例

6.7.7.4 ノードの入出力とプロパティ

入力

無し.

出力

OUTPUT

: Vector<float> またはVector<ObjectRef> 型のVector<complex<float> > 型.フレームのデータ.

NOT_EOF

: bool 型.プログラムがデータファイルを読み込んでいるときにファイルの終わりに達したかどうかを示すフラグ.プログラムがデータファイルの最後に到達するとfalseに設定され,その後プログラムは終了する.それ以外はtrueに設定される.

パラメータ

Table 6.98: LoadVectorFrames のパラメータリスト

パラメータ名

デフォルト値

単位

説明

FILENAME

string 

   

読み込むデータファイルの名前.

INPUT_TYPE

string 

TEXT_float

 

TEXT_floatデータファイルのファイル形式とデータ型.TEXT_float,RAW_float,TEXT_complex_float,またはRAW_complex_floatを選択.

COL_SIZE

int 

512

 

データファイル内のデータを復元するVector<ObjectRef> 型の列サイズ.

FILENAME

: string 型. 読み込むデータファイルの名前.

INPUT_TYPE

: string 型. 読み込むデータファイルのファイル形式とデータ型. ドロップダウンメニューから適切なものを選択. 次の4つのオプションがある.

  • TEXT_float

  • RAW_float

  • TEXT_complex_float

  • RAW_complex_float

デフォルト値はTEXT_float. 間違った値を選択すると,ネットワークは正常に動作しない.

COL_SIZE

: int 型. データファイル内のデータを復元するVector<ObjectRef> 型の列サイズ. 間違った値を指定すると,ネットワークは正常に動作しない. デフォルト値は512.

LoadVectorFrames のパラメータ値設定を簡単にするには,SaveVectorFrames によってファイルにデータを保存するときに特別なパターン{tag:format},つまりフォーマット文字列を使用することを強く推奨する. ファイル名には,データタイプと,データファイル内のデータを復元するVector<ObjectRef> タイプの列サイズが含まれる.

表 6.99 に,FILENAMEを除く各パラメータのフォーマット文字列と出力の例を示す. {tag:format}の詳細については,SaveVectorFrames ノードのリファレンス,特にSaveVectorFrames のタグリストを参照.

Table 6.99: 列サイズが20のVector<complex<float> > の書式文字列と出力の例

書式文字列(FILENAMEパラメータ値)

出力(書式付きファイル名)

samplefile.dat

samplefile.dat

samplefile_{datatype}.txt

samplefile_complex_float.txt

samplefile_col{colsize}.raw

samplefile_col20.raw

samplefile_dim{dim}.dat

samplefile_dim1.dat

samplefile_{datatype}_col{colsize}_dim{dim}.dat

samplefile_complex_float_col20_dim1.dat

適切なファイル拡張子を付けることは,ファイル形式を見つける時間を節約するのにも役立つ. そうでない場合,TEXTタイプはテキストファイルであり,RAWタイプはバイナリファイルである. Ubuntuプラットフォームでは,RAWファイルはテキストエディタではアクセスできないが,Windowsでは開くことができる. いずれにしても,RAWファイルはTEXTファイルとは異なり人間が読める形式ではない.

6.7.7.5 ノードの詳細

LoadVectorFrames は,SaveVectorFrames で生成されたファイルを読み取り,ファイル内のデータをフレーム毎にVector<float> 型またはVector<complex<float> > 型に復元する. フレーム毎にVector<ObjectRef> 型にデータを読み込む反復処理は,INPUT_TYPEおよびCOL_SIZEで指定されたパラメータ値に従って実行される. 表 6.100 に,使用可能なすべてのINPUT_TYPEパラメータ値と,LoadVectorFrames の対応する出力データ型を示す.

Table 6.100: LoadVectorFrames の出力データ型

INPUT_TYPE

出力データ型

Text Float

Vector<float> 

Raw Float

Vector<float> 

Text Complex Float

Vector<complex<float> > 

Raw Complex Float

Vector<complex<float> > 

LoadVectorFrames は,データファイルのファイルの最後に到達するとNOT_EOFをfalseに設定し,ファイルからVector<ObjectRef> にデータを読み込む反復処理を終了できる.