5.3.1 音源位置リスト情報(srcinf) 形式

音源定位伝達関数ファイル (LocalizeMUSIC の A_MATRIX に設定) や音源分離伝達関数ファイル (GHDSS の TF_CONJ_FILE に設定) を作成するため harktool で用いる ファイルである.

記述形式は、hark1.1までは、TEXT形式、hark1.2以降は、XML形式である。

XML形式で使用する各タグの説明をする。
Table 5.10: 音源位置リスト情報のタグ定義1

タグ名

説 明

hark_config

ファイル種別

 

id : "ImpulseResponseList" または "TSPList" 固定

 

major: メジャー番号 (2)

 

minor: マイナー番号 (0)

NumMic

マイク数

SourceFileType

float または wav

Sources size

要素数

Comment

コメント

Position

音源位置座標

 

マイクロホンアレイの中心(原点)から測定場所への方向ベクトル(x,y,z) を表す.

 

ベクトルの大きさ $\sqrt {x^2 + y^2 + z^2}$ が1.0になるように記述する.

 

unit: meter

 

type: cartesian

X

音源位置座標: X軸 (上記Positionタグ参照)

Y

音源位置座標: Y軸 (上記Positionタグ参照)

Z

音源位置座標: Z軸 (上記Positionタグ参照)

Files size

ファイル数

Table 5.11: 音源位置リスト情報のタグ定義2

タグ名

説 明

Name

ファイル名

 

測定したインパルス応答のファイル名または,TSP応答のファイル名を記述する.

 

インパルス応答の場合:

 

example_Dddd_Eeee_Rrrr_chcc.flt

 

( “example” 部分は任意,ddd は方位角,eeeは仰角,rrrは半径,ccはチャネル番号)

 

の形式で記述する.

 

なお,flt はリトルエンディアンの 32bit の実数 float フォーマットファイルである.

 

例: 方位角:180度 仰角:16.7度 半径:1mの場合

 

/path/example_D180_E16.7_R100_ch00.flt

 

TSP応答の場合:

 

example_Dddd_Eeee_Rrrr_chcc.wav

 

( “example” 部分は任意,ddd は方位角,eeeは仰角,rrrは半径,ccはチャネル番号)

 

の形式で記述する.

 

各ファイルは,RIFF 形式の PCM wave フォーマットのみが利用可能である.

 

例: 方位角:180度 仰角:16.7度 半径:1mの場合

 

/path/example_D180_E16.7_R100_ch00.wav

MicIndices size

MicIndex数(総Mic数)

MicIndex

Mic番号

CutStart

浮動小数点ベクトルのカット開始インデックス

 

何番目のデータ(サンプル)から読込みを開始するかを指定する.

 

例えば 1 を指定すれば,1サンプル目から読み込みを開始する.通常は 1 で問題はない.

 

オフセットは正の整数とする必要がある.

CutEnd

浮動小数点ベクトルのカット終了インデックス

 

開始オフセットから,何番目のデータ(サンプル)まで読込むかを指定する.

 

例えば, 開始オフセットを100に指定し,終了オフセットを200に指定すれば,

 

100サンプル目から200サンプル目までを読み込む.

 

オフセットは正の整数とする必要がある.

 

この項目に"0"を記載すると、全サンプルを読込みます。

SynchronousAverge

同期平均の数

OriginalImpulseFile

オリジナルのTSPファイル

TSPOffset

サンプル中のTSP信号のオフセット

TSPLength

サンプルの1つのTSPの長さ

SignalMax

TSP信号の最大振幅

NoiseSources size

要素数

NoiseIndex

Mic番号


ImpulseResponseListファイルの記述例
<hark_xml>
  <hark_config id="ImpulseResponseList" major="2" minor="0">
    <NumMic>8</NumMic>
    <SourceFileType>float</SourceFileType>
    <Comment>created by harktool4</Comment>
    <Sources size="72">
      <Source>
        <Position unit="meter" type="cartesian">
          <X>-0.957823</X>
          <Y>8.37355e-08</Y>
          <Z>0.287361</Z>
        </Position>
        <Files size="8">
          <File>
            <Name>/YOUR_PATH/D-180_E16.7_R100_ch00.flt</Name>
            <MicIndices size="1">
              <MicIndex>0</MicIndex>
            </MicIndices>
          </File>
          <File>
            <Name>/YOUR_PATH/D-180_E16.7_R100_ch01.flt</Name>
            <MicIndices size="1">
              <MicIndex>1</MicIndex>
            </MicIndices>
          </File>
            ・
            ・
        </Files>
        <CutStart>1</CutStart>
        <CutEnd>0</CutEnd>
      </Source>
            ・
            ・
    </Sources>
  </hark_config>
</hark_xml>


TSPListファイルの記述例
 <hark_config id="TSPList" major="2" minor="0"> 
   <SynchronousAverage>16</SynchronousAverage> 
   <OriginalImpulseFile type="float">
    /usr/bin/harktool4_utils/16384.little_endian.tsp
   </OriginalImpulseFile>
   <TSPOffset>16384</TSPOffset> 
   <TSPLength>16384</TSPLength> 
   <SignalMax>32768</SignalMax> 
   <NumMic>8</NumMic> 
   <SourceFileType>float</SourceFileType> 
   <Comment>created by harktool4</Comment> 
   <Sources size="72"> 
     <Source> 
       <Position unit="meter" type="cartesian"> 
        <X>-0.957823</X> 
        <Y>8.37355e-08</Y> 
        <Z>0.287361</Z> 
       </Position> 
       <Files size="1"> 
        <File> 
         <Name>/YOUR_PATH/D180_E16.7_R100.wav</Name> 
          <MicIndices size="8"> 
           <MicIndex>0</MicIndex> 
           <MicIndex>1</MicIndex> 
           <MicIndex>2</MicIndex> 
           <MicIndex>3</MicIndex> 
           <MicIndex>4</MicIndex> 
           <MicIndex>5</MicIndex> 
           <MicIndex>6</MicIndex> 
           <MicIndex>7</MicIndex> 
          </MicIndices> 
         </File> 
        </Files> 
       <CutStart>1</CutStart> 
      <CutEnd>0</CutEnd> 
     </Source> 
       ・
       ・	
   </Sources> 
  </hark_config> 
</hark_xml>