Overview

HARKTOOL5-GUIはウェブブラウザベースで音源定位用・音源分離用の伝達関数を生成・可視化するGUIツールである。

HARKTOOL5-GUIによって次のことが可能になる。

最初の一歩

依存するソフトウェア

HARKTOOL5-GUIは以下のソフトウェアに依存している。 HARKTOOL5-GUIをインストールする前にこれらをインストールする必要がある。

インストール

Linuxユーザ

  1. HARKのリポジトリを追加する。詳しくは http://www.hark.jp/wiki.cgi?page=HARK+Installation+Instructions を参照。
  2. HARKTOOL5-GUIをインストールする。 sudo apt install harktool5-gui を実行。

Windowsユーザ

  1. http://www.hark.jp/wiki.cgi?page=Softwares#p9 に従って Hark for Windows と依存ソフトウェアをインストールする。
  2. http://www.hark.jp/harktool5-gui_2.4.0.zip からHARKTOOL5-GUIをダウンロードする。
  3. 適当なディレクトリ(例: C:\ProgramData\HARK\harktool5-gui)に展開する。

ステップ 1: HARKTOOL5-GUI を開く

Linuxユーザ

ターミナル上で harktool5_gui を実行する。直後にChrome ブラウザが開く。

Windowsユーザ

  1. コマンドプロンプトを開き、HARKTOOL5-GUIを展開したディレクトリへ移動する。
cd C:\ProgramData\HARK\harktool5-gui
  1. 初回のみ: npmモジュールをインストールする。
npm install --production
  1. HARKTOOL5-GUIを起動する。
node app.js
  1. Chromeを起動し、 http://127.0.0.1:3001 にアクセスする。
Screen shot

ステップ 1: 初期画面

ステップ 2: マイクアレイ座標ファイルを作成する

旧マイクロホン位置情報ファイルを使用したいときは、 マイクロホン位置情報ファイルの移行 を参照。

  1. “Microphone array positions” > “Create” をクリックする。
  2. 座標モデルを選択する。
  3. パラメータを入力する。距離の単位はメートル。

Generalパラメータ

Position Type
“microphone”固定
Output File
出力するファイル名
  1. 画面下の”Create”ボタンをクリックすると、マイクアレイ座標ファイルが作成され、3Dグラフが右側に表示される。
  2. “Go back to the top page”のリンクまたは、画面上の”HARKTOOL5”タイトルをクリックし、トップ画面へ戻る。
  3. 作成したマイクアレイ座標ファイルは”Microphone array positions” > “Download” をクリックするとダウンロードできる。
Screen shot

ステップ 2: マイクアレイ座標ファイル作成後

ステップ 3: 音源座標ファイルを作成する

旧TSP応答リストファイルを使用したいときは、 TSP応答リストファイルの移行 を参照。

また、旧インパルス応答リストファイルを使用したいときは、インパルス応答リストファイルの移行 を参照。

  1. “Sound source positions” > “Create” をクリックする。
  2. 座標モデルを選択する。
  3. パラメータを入力する。

Generalパラメータ

Position Type
録音したTSPを使う場合”tsp”、インパルス応答(wav形式)を使う場合、”impulse”を選択する
Wav File Path

録音したTSPファイルまたは、インパルス応答(wav形式)の格納場所。 “{}”で囲まれた部分はテンプレートで、それぞれ指定した項目の値が指定したフォーマットで置換される

RADIUS ( 単位 m )
ELEVATION ( 単位 deg )
AZIMUTH ( 単位 deg )
X_AXIS ( 単位 mm )
Y_AXIS ( 単位 mm )
Z_AXIS ( 単位 mm )
HEIGHT ( 単位 mm )
Output File
出力するファイル名
Use Channels
使用するマイクチャンネルをカンマ区切りで列挙。空欄で全チャンネルを使用

Neighborsパラメータ

Algorithm
アルゴリズム種別。”NearestNeighbor”固定
Maximum Number
Positionそれぞれが保持できるNeighborの最大数
Threshold
近傍判定のための閾値(単位 m)
  1. 画面下の”Create”ボタンをクリックすると、音源座標ファイルが作成され、3Dグラフが右側に表示される。
  2. “Go back to the top page”のリンクまたは、画面上の”HARKTOOL5”タイトルをクリックし、トップ画面へ戻る。
  3. 作成した音源座標ファイルは”Sound source positions” > “Download” をクリックするとダウンロードできる。
Screen shot

ステップ 3: 音源座標ファイル作成後

ステップ 4: 伝達関数ファイルを作成する

マイクアレイ座標ファイル、音源座標ファイルが揃うと、伝達関数を作成することができる。

  1. “Transfer function” > “Create” をクリックする。
  2. Configを必要に応じて入力する。
Sync. Add Num
TSP信号の録音時にTSP信号を連続再生した回数
Original TSP Path
録音に使用したTSP 信号、1周期分のファイル名
TSP Offset
録音したファイルを伝達関数計算に用いる先頭位置(単位 サンプル 0始まり)
Peak Search From
伝達関数計算時にピークを探索する開始位置(単位 サンプル 1始まり)
Peak Search To
伝達関数計算時にピークを探索する終了位置(単位 サンプル 1始まり)

注釈

Peak Searchに0を指定した場合、全サンプルがピークを探索の範囲となる。

探索したピーク位置を直接音とみなす。インパルス応答の直接音よりも反射音が大きい場合など、反射音を無視したい場合にPeak Searchの範囲を使う。

FFT Length
伝達関数を離散周波数表現するときのビン数
Sampling Rate
伝達関数のサンプリング周波数
Signal Max
最大振幅値とする数値
TSP Length
録音したTSP信号1個分のサンプル数

以下の図に、典型的なTSP収録(TSPを17回連続再生したものを、wiosで同期録音)ファイルの波形とConfigパラメータの対応を示す。

Screen shot
  1. Transfer Function Parametersを必要に応じて入力する。
Output File Name (zip)
出力する伝達関数ファイル名
TF Calculation Type
伝達関数を計算する方法
  • Use Impulse Response Files: インパルス応答ファイルから伝達関数を計算
  • Use TSP Record Files: TSP収録ファイルから伝達関数を計算
  • Use Mouth TSP Record Files: TSP収録ファイルからFD変換で伝達関数を計算(HARKTOOL5新機能)
  • Use Geometric Calculation: 幾何計算により伝達関数を計算
TF Type
伝達関数ファイルに定位用・分離用のどれを含むか
Direct Sound Length
直接音とみなすサンプル数
Reverb Sound Length
反響音とみなすサンプル数
Normalize SRC axis
伝達関数の音源軸の正規化有無
Normalize MIC axis
伝達関数のマイクチャンネル軸の正規化有無
Normalize FREQ axis
伝達関数の周波数軸の正規化有無
Reset Mic Channels
音源座標ファイルのUse Channelsで使用するマイクチャンネルを選抜した場合、伝達関数のマイクチャンネルを0始まりの連番にリセットするかしないか。

注釈

リセットする場合、HARKTOOL4と互換の伝達関数となる。

  1. 画面下の”Create”ボタンをクリックすると、伝達関数ファイルが作成される。
  2. “Go back to the top page”のリンクまたは、画面上の”HARKTOOL5”タイトルをクリックし、トップ画面へ戻る。
Screen shot

ステップ 4: 伝達関数ファイル作成後

  1. 作成した音源座標ファイルは “Sound source positions” > “Visualize” をクリックすると3Dグラフで確認できる。
TF type
表示対象の伝達関数を選択
Domain
グラフのX軸(周波数/時間)を選択
Z Axis

Z軸の種類を選択(周波数ドメインの時のみ)

  • Amplitude: 振幅スペクトルを表示
  • Amplitude in dB: 振幅スペクトルをデシベルで表示
  • Phase: 位相スペクトルを表示
Screen shot

伝達関数表示

  1. 作成した音源座標ファイルは “Sound source positions” > “Download” をクリックするとダウンロードできる。

HARKTOOL4からの移行

  1. Python2.7以降をインストールする。
  2. http://www.hark.jp/harktool5migrationtool.zip から移行ツールをダウンロードする。
  3. 作業ディレクトリに展開する。

マイクロホン位置情報ファイルの移行

  1. python conv4mic.py <HARKTOOL4マイクロホン位置情報ファイル> <出力ファイル> を実行する。
例) python conv4mic.py miclist.xml microphones.xml
  1. 出力されたファイルはHARKTOOL5-GUIの “Microphone array positions” > “Upload” からロードできる。

TSP応答リストファイルの移行

  1. python conv4src.py <HARKTOOL4TSP応答リストファイル> <出力ファイル> を実行する。
例) python conv4src.py tsplist.xml source.xml
  1. 出力されたファイルはHARKTOOL5-GUIの “Sound source positions” > “Upload” からロードできる。

インパルス応答リストファイルの移行

  1. python conv4src.py <HARKTOOL4インパルス応答リストファイル> <出力ファイル> を実行する。
例) python conv4src.py implist.xml source.xml
  1. 出力されたファイルはHARKTOOL5-GUIの “Sound source positions” > “Upload” からロードできる。
  2. flt2multiwav.txt ファイルも出力されるので、中に記載されているコマンドを実行すると、fltファイルがwavファイルに変換される。