この記事は、HARK 3.1.0、Ubuntu18.04、Tamago-03で動作を確認したものです。また、以下の記事の続きです。
・【HARK】#001 - HARK 3.1.0のインストール
・【HARK】#002 - HARKインストール後に最初にすべき3つのこと
・【HARK】#003 - HARKクックブック「はじめての録音」をやってみた
はじめに
前回、クックブックの「はじめての録音」をやってみたので、今回は「リアルタイム音源定位」です。
クックブックがどこにあるかというと、HARKクックブックの「2章 はじめてのHARK」です。Hark.jpからは、ナビゲーションの「Document > Hark cookbook」から移動できます。
この記事は、あくまでもクックブックの 「マイクロホンからのリアルタイム音源定位」 をメインとし読んでもらい、私(初心者)が実際やった際に、もっと図で説明あるといいなぁと思った部分を主に説明しています。正直クックブックの方が詳しく書かれています。
※ 今回使用した「HARK クックブック」および「HARK Document」のバージョンは、3.1.0.(Revision: 9278)です。
※ 最近(2020/11/xx)、HARKは3.2になったようです。でも、入れ直すの面倒なのと、これから話す基本的な機能は同じなのでご安心ください。
ネットワークの作成
録音と同様の手順で、以下のネットワークを作成します。
「LOOP0」という名前の「iterator サブネットワーク」を作成しノードを配置
下図のようにノードを配置し、「AudioStreamFromMic」の「NOT_EOF」の●を右クリックして、「SET CONDITION」を選択し、図のように赤字のCONDITIONが表示された状態にします。同様に、DisplayLocalizationのOUTPUTにOUTPUTを設定します。
AudioStreamFromMicのデバイス情報を設定
- ノードをダブルクリックすると、各ノードのパラメータを設定できます。基本デフォルトのままで、赤枠の部分だけ、これまでの記事 #002, #003をで確認した値に変更します。
LocalizeMUSICのA_MATRIX
を設定
- 伝達関数のダウンロード
- 今回、TAMAGO-03を使っているので、Supported Hardware | HARK.jp より、以下の赤枠の部分の伝達関数
tamago_geotf.zip
をダウンロードし、作成したHARKネットワクーク(xxx.n)と同じ階層に置いておきます。- クックブックにファイルの場所の記載どころか、ノードのA_MATRIXに指定するって説明がないので、初心者がハマるところです。もう少し丁寧に書いてくれてもいいのに...。
- 今回、TAMAGO-03を使っているので、Supported Hardware | HARK.jp より、以下の赤枠の部分の伝達関数
- ノードに指定
- 上記でダウンロードしたzipを以下の赤枠のように設定します。
SourceTracker
- 以下の閾値を設定します。ノードを設置した状態だと、値がブランクになっています。
- 値は、環境によるのでいろいろ試してみてください。
実行
- Executeを実行すると下図のように定位結果が表示されます。SourceTrackerの閾値を変更して結果が変わるのを楽しんでください。
最後に
この記事が参考になったら、LGTMよろしくお願いいたします。
今後予定している記事を書こうと思っています。ご興味あればご期待ください。
- 【HARK】#005 - arecordで、8chのwavファイルを作る方法
- 【HARK】#006 - HARK::ParsingException