SaveMapFrames で作成されたファイルのデータをMap $<$int , Vector<float> $>$ 型またはMap $<$int , Vector<complex<float> > $>$ 型のコンテナに読み込む.
“内部ファイル”と呼ばれるテキスト形式(TEXT)またはバイナリ形式(RAW)のデータファイルと,フレーム毎のデータファイルのリストを含む“メインファイル”と呼ばれるテキストファイルが必要.これらすべてはSaveMapFrames によって作成されたファイルである.
どんなときに使うのか
このノードは,あらかじめSaveMapFrames によってファイルに保存されたフレームのデータを使用し,後にデータをwavファイルに変換するなどの処理に用いる.
典型的な接続例
図6.102 に,ネットワークでLoadMapFrames を使用した接続例を示す. LoadMapFrames が読み込むファイルは,FILENAMEパラメータの値によって指定される. このネットワークでは,Synthesize はLoadMapFrames の出力であるMap $<$int , Vector<complex<float> > $>$ 型のデータを時間領域の波形に変換する. 次に,SaveWavePCM は,Synthesize によって出力されたデータをサウンドファイルとして保存する. このネットワークでのLoadSourceLocation はオプションで,SaveWavePCM がオプションでVector<ObjectRef> 型の音源定位結果を取ることができる例を示している. ObjectRef はソースタイプのデータを参照する必要があることに注意. LoadSourceLocation はSaveSourceLocation によって生成されたファイルからデータを読み込むが,LoadMapFrames はSaveMapFrames によって生成されたファイルからデータを読み込む.
入力
無し.
出力
: Map<int, ObjectRef> 型のMap $<$int , Vector<float> $>$ またはMap $<$int , Vector<complex<float> > $>$ データがマップのキーにマップされるフレームのデータ.
: bool 型.プログラムが各フレームの“内部ファイル”のリストを含む“メインファイル”を読み込んでいるときにファイルの終わりに達したかどうかを示すフラグ.プログラムが“メインファイル”のファイルの最後に到達するとfalseに設定され,その後プログラムは終了する.それ以外はtrueに設定される.
パラメータ
パラメータ名 |
型 |
デフォルト値 |
単位 |
説明 |
FILENAME |
各フレームのデータファイルのリストを含むテキストファイルの名前. |
|||
INPUT_TYPE |
TEXT_float |
入力データファイルのファイル形式とデータ型.TEXT_floa,RAW_float,TEXT_complex_float,またはRAW_complex_floatを選択. |
||
COL_SIZE |
512 |
データファイル内のデータを復元するMap $<$int , Vector<ObjectRef> $>$ 型のVector<ObjectRef> の列サイズ. |
: string 型. SaveMapFrames によって作成された各フレームのデータファイルのリストを含む“メインファイル”の名前. SaveMapFrames によって生成されるファイルの詳細については,ノードのリファレンスを参照.
: string 型. 入力データファイルのファイル形式とデータ型. ドロップダウンメニューから適切なものを選択. 次の4つのオプションがある.
TEXT_float
RAW_float
TEXT_complex_float
RAW_complex_float
デフォルト値はTEXT_float. 間違った値を選択すると,ネットワークは正常に動作しない. 図6.103 は,“メインファイル”と“内部ファイル”の両方のサンプルファイル名を示している. “内部ファイル”の各ファイル名は,データ型,例では“Vector_float”を示している. ファイル拡張子は,ファイル形式を示す. 各ファイルの拡張子は,テキスト(TEXT)は「txt」,バイナリ(RAW)は「raw」である.
: int 型. 入力データファイルに保存されたMap $<$int , Vector<ObjectRef> $>$ 型のデータのVectorサイズ. 図6.103 に示すように,読み込むファイルの名前で見つけることができる. 間違った値を指定すると,ネットワークは正常に動作しない. デフォルト値は512.
詳細については,SaveMapFrames のノードの詳細を参照.
SaveMapFrames によって生成されるファイルの詳細については,SaveMapFrames のノードリファレンスを参照.
LoadMapFrames は,Map $<$int , Vector<float> $>$ 型またはMap $<$int , Vector<complex<float> > $>$ 型のいずれかで,SaveMapFrames で生成されたファイルを読み込んでコンテナ内のデータを復元する. LoadMapFrames は2種類のファイルを読み込む. 1つは,各キーに分離されたフレームのデータを含む“内部ファイル”と呼ばれるデータファイル. もう1つは,“メインファイル”と呼ばれるテキストファイルで,各フレーム番号に続く“内部ファイル”のリストを含む. LoadMapFrames は,“内部ファイル”に保存されたデータを対応するデータ型のコンテナに適切に復元するために,メインファイルのフレーム番号とファイル名の両方から情報を取得する. 表 6.89 に,使用可能なすべてのINPUT_TYPEパラメータ値と対応する出力データ型を示す.
INPUT_TYPE |
出力データ型 |
Text Float |
Map $<$int , Vector<float> $>$ |
Raw Float |
Map $<$int , Vector<float> $>$ |
Text Complex Float |
Map $<$int , Vector<complex<float> > $>$ |
Raw Complex Float |
Map $<$int , Vector<complex<float> > $>$ |
LoadMapFrames は,フレーム番号の後にファイル名がない場合,空のMapを出力することに注意. これは,フレームに関連するデータがないことを意味する. “メインファイル”ファイルの終わりに達することによって,すべてのデータファイルが読み込まれたことを検出すると,LoadMapFrames はNOT_EOFをfalseに設定し,ファイルからコンテナへデータを読み込む反復処理を終了できる.