Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What are the problem?

【HARK】#005 - arecordで、8chのwavファイルを作る方法

この記事は、HARK 3.1.0、Ubuntu18.04、Tamago-03で動作を確認したものです。これまでの記事には、連番を振っていますので合わせてご確認ください。

はじめに

これまで、クックブックの「はじめての録音」、「リアルタイム音源定位」をやりましたが、クックブックでは、「2.2.2 リアルタイム音源定位」の前にある、「2.2.1 音声ファイルの音源定位」を飛ばしています。理由は、遊ぶのにwavファイルだとつまらないと思ったからです。

でも、実際にHARKを使う場合、同じ条件で実験したいと思うので、録音したwavを入力としたいと思うと思います。クックブック「2.2.1 音声ファイルの音源定位」に、wavを読み込むために、どのようなノードを使い、どのようなネットワークにすればよいかがもうあるので、ここでは、8chのwavをどうやって作るのかを説明します。

arecordを使って8chのwavを作る方法

TAMAGOの-03のフォーマットを確認

  • 下図のように、 arecord -l で、カード番号がわかります
  • 番号がわかったら、 cat /proc/asound/card1/stream0 (cardXのXは、arecordで表示された番号)で、Formatを確認します。
    • Formatの S24_3LE が必要な情報です

card.png

録音

  • arecord -D plughw:1,0 -f S24_3LE -r 160000 -c8 output.wav
    • -Dで、デバイス指定(今回、カード1で、サブデバイス0なので上記のように指定)
    • -fで、先ほど調べてフォーマットを指定
    • -rで、サンプリング周波数を指定。人の声なので、16kHzで十分サンプリング定理を満たす。
    • -cで、チャネル数を指定

補足

  • 出力されたwavを、fileコマンドを使って、本当に8chになっているか確認できます
$ file output.wav 
output.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 24 bit, 8 channels 160000 Hz

最後に

この記事が役立ったら、LGTMよろしくお願いいたします。

他の記事
【HARK】#001 - HARK 3.1.0のインストール
【HARK】#002 - HARKインストール後に最初にすべき3つのこと
【HARK】#003 - HARKクックブック「はじめての録音」をやってみた
【HARK】#004 - HARKクックブック「マイクロホンからのリアルタイム音源定位」をやってみた
【HARK】#006 - HARK::ParsingException

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?