6.7.8 MapSelectorBySource

6.7.8.1 ノードの概要

複数の音源分離結果のうち,Source に含まれる情報(ID,パワー,方向)に基づきパラメータで指定した条件を満たすものだけを 出力させたいときに用いる. 複数音源入力時に音源のID,パワーに対してその最小,最大にもとづいて出力したり, 値の範囲を指定して出力することができる. また音源の方向に関しては,複数音源のうち指定した角度方向に最も近い音源を出力したり, 方向の範囲を角度で指定し,その範囲内にある音源のみを出力することができる.

6.7.8.2 必要なファイル

無し.

6.7.8.3 使用方法

どんなときに使うのか

たとえば,音源分離ノード GHDSS などの出力結果を PlayAudio で再生する場合. このとき, GHDSS ノードの後に Synthesize , MapSelectorBySource を接続し, Lch,Rchで各々別の方向の音源を試聴したい場合に用いる. このように,Map 型の入力の一部を出力したい場合に用いる.

典型的な接続例

6.102 に接続例を示す. 図に示すように,このノードは, GHDSS などの音源分離モジュールの後段に接続される.

\includegraphics[width=\linewidth ]{fig/modules/MapSelectorBySource}
Figure 6.102: MapSelectorBySource の接続例: これは Iterator サブ ネットワーク

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

入力

INPUT

: Map<int, ObjectRef> 型.通常は音源分離ノードの後段に接続されるので, Map のキーになる int には音源IDが対応する. ObjectRef は分離を表すVector<float> 型 (パワースペクトル) か Vector<complex<float> > 型(複素スペクトル)である.

SOURCES

: Vector<ObjectRef> , ID付きの音源方向. 各Vector の中身は,ID 付きの音源情報を示す Source 型になっている. このパラメータの指定は必須である.

出力

OUTPUT

: Map<int, ObjectRef> 型.パラメータで指定した条件を満たしたデータが出力される.

パラメータ

Table 6.91: MapSelectorBySource のパラメータ表

パラメータ名

デフォルト値

単位

説明

SELECTION_TYPE

string 

ID

 

ALL,ID,POWER,DIRECTION(※),DIRECTION_AZIMUTH,DIRECTION_ELEVATION から選択.

ID_SELECTION_TYPE

string 

LATEST

 

LATEST,OLDEST,BETWEEN から選択.

ID_RANGE_MIN

int 

0

 

ID_SELECTION_TYPEがBETWEENの場合有効.

ID_RANGE_MAX

int 

0

 

ID_SELECTION_TYPEがBETWEENの場合有効.

POWER_SELECTION_TYPE

string 

HIGHEST

 

HIGHEST,LOWEST,BETWEEN から選択.

POWER_RANGE_MIN

float 

0

 

POWER_SELECTION_TYPEがBETWEENの場合有効.

POWER_RANGE_MAX

float 

40.0

 

POWER_SELECTION_TYPEがBETWEENの場合有効.

DIRECTION_SELECTION_TYPE(※)

string 

BETWEEN

 

NEAREST,BETWEEN から選択.

DIRECTION(※)

float 

0

[deg]

DIRECTION_SELECTION_TYPEがNEARESTの場合有効.

DIRECTION_RANGE_MIN(※)

float 

0

[deg]

DIRECTION_SELECTION_TYPEがBETWEENの場合有効.

DIRECTION_RANGE_MAX(※)

float 

360.0

[deg]

DIRECTION_SELECTION_TYPEがBETWEENの場合有効.

AZIMUTH_SELECTION_TYPE

string 

BETWEEN

 

NEAREST,BETWEEN から選択.

AZIMUTH

float 

0

[deg]

AZIMUTH_SELECTION_TYPEがNEARESTの場合有効.

AZIMUTH_RANGE_MIN

float 

0

[deg]

AZIMUTH_SELECTION_TYPEがBETWEENの場合有効.

AZIMUTH_RANGE_MAX

float 

360.0

[deg]

AZIMUTH_SELECTION_TYPEがBETWEENの場合有効.

ELEVATION_SELECTION_TYPE

string 

BETWEEN

 

NEAREST,BETWEEN から選択.

ELEVATION

float 

0

[deg]

ELEVATION_SELECTION_TYPEがNEARESTの場合有効.

ELEVATION_RANGE_MIN

float 

0

[deg]

ELEVATION_SELECTION_TYPEがBETWEENの場合有効.

ELEVATION_RANGE_MAX

float 

360.0

[deg]

ELEVATION_SELECTION_TYPEがBETWEENの場合有効.

SELECTION_TYPE

: string 型.ALL,ID,POWER,DIRECTION(※),DIRECTION_AZIMUTH,DIRECTION_ELEVATION から選択する. ALLの場合はすべてのすべての結果を出力する.IDでは音源のID,POWERでは音源のパワー,DIRECTION(※),DIRECTION_AZIMUTH,DIRECTION_ELEVATIONでは音源の方向に基づいて以降のパラメータで指定した条件を満たす結果を出力する.

ID_SELECTION_TYPE

: string 型.SELECTION_TYPEでIDが選択された場合のみ有効.LATEST,OLDEST,BETWEENから選択する. LATESTでは複数の音源の入力があった場合,最も新しい音源がOLDESTでは最も古い音源が出力される.BETWEENでは以降のID_RANGE_MINとID_RANGE_MAXに含まれるIDをもつ音源を出力する.複数の音源がこの条件を 満たす場合は複数の音源の結果が出力される.

ID_RANGE_MIN

: int 型.ID_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源のID下限値.

ID_RANGE_MAX

: int 型.ID_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源のID上限値.

POWER_SELECTION_TYPE

: string 型.SELECTION_TYPEでPOWERが選択された場合のみ有効.HIGHEST,LOWEST,BETWEENから選択する. HIGHESTでは複数の音源の入力があった場合,最もパワーの大きな,LOWESTでは最も小さな音源が出力される.BETWEENでは以降のPOWER_RANGE_MINとPOWER_RANGE_MAXに含まれるパワーの音源を出力する.複数の音源がこの条件を 満たす場合は複数の音源の結果が出力される.

POWER_RANGE_MIN

: float 型.POWER_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源のパワー下限値.

POWER_RANGE_MAX

: float 型.POWER_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源のパワー上限値.

DIRECTION_SELECTION_TYPE

: string 型.SELECTION_TYPEでDIRECTIONが選択された場合のみ有効.NEAREST,BETWEENから選択する. NEARESTでは複数の音源の入力があった場合に最もその方向の角度に近い結果が出力され,BETWEENでは以降のDIRECTION_RANGE_MINとDIRECTION_RANGE_MAXに含まれる角度の音源を出力する.複数の音源がこの条件を 満たす場合は複数の音源の結果が出力される.(※)

DIRECTION

: float 型.DIRECTION_SELECTION_TYPEでNEARESTが選択された場合のみ有効.複数音源が同時に観測された場合は指定した角度にもっとも近い音源が出力される.(※)

DIRECTION_RANGE_MIN

: float 型.DIRECTION_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源の角度下限値.(※)

DIRECTION_RANGE_MAX

: float 型.DIRECTION_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源の角度上限値.(※)

AZIMUTH_SELECTION_TYPE

: string 型.SELECTION_TYPEでDIRECTION_AZIMUTHが選択された場合のみ有効.NEAREST,BETWEENから選択する. NEARESTでは複数の音源の入力があった場合に最もその方位角に近い結果が出力され,BETWEENでは以降のAZIMUTH_RANGE_MINとDIRECTION_RANGE_MAXに含まれる方位角の音源を出力する.複数の音源がこの条件を満たす場合は複数の音源の結果が出力される.

AZIMUTH

: float 型.AZIMUTH_SELECTION_TYPEでNEARESTが選択された場合のみ有効.複数音源が同時に観測された場合は指定した方位角にもっとも近い音源が出力される.

AZIMUTH_RANGE_MIN

: float 型.AZIMUTH_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源の方位角の下限値.

AZIMUTH_RANGE_MAX

: float 型.AZIMUTH_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源の方位角の上限値.

ELEVATION_SELECTION_TYPE

: string 型.SELECTION_TYPEでDIRECTION_ELEVATIONが選択された場合のみ有効.NEAREST,BETWEENから選択する. NEARESTでは複数の音源の入力があった場合に最もその仰角に近い結果が出力され,BETWEENでは以降のAZIMUTH_RANGE_MINとDIRECTION_RANGE_MAXに含まれる仰角の音源を出力する.複数の音源がこの条件を満たす場合は複数の音源の結果が出力される.

ELEVATION

: float 型.ELEVATION_SELECTION_TYPEでNEARESTが選択された場合のみ有効.複数音源が同時に観測された場合は指定した仰角にもっとも近い音源が出力される.

ELEVATION_RANGE_MIN

: float 型.ELEVATION_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源の仰角の下限値.

ELEVATION_RANGE_MAX

: float 型.ELEVATION_SELECTION_TYPEでBETWEENが選択された場合のみ有効.出力される音源の仰角の上限値.

6.7.8.5 (※)互換性のためにあるパラメータ

SELECTION_TYPEのDIRECTIONはDIRECTION_AZIMUTHと,DIRECTIONはAZIMUTHと,DIRECTION_RANGE_MINはAZIMUTH_RANGE_MINと,DIRECTION_RANGE_MAXはAZIMUTH_RANGE_MAXと同じ.