計測器のWaveファイルから測定値を読み出す①

ここ最近では音楽分野でも配信が主流となったのであまり見かけることの無くなった「Wave形式ファイル」ですが、無圧縮でオリジナル波形を維持できるうえにファイルに諸情報を埋め込めるという使い勝手があるため計測分野では幅広いジャンルで使われています。

ただ、測定器で取得されるWaveファイルには校正情報など各社独自の拡張情報を埋め込んでいるため、Audacityなど一般的Waveファイル読み込みソフトだけでは収録値がデジタル値のままで計測値として直読できず、そのままでは計測データとして処理が出来ません

今回はリオン社製データレコーダーDA-21にて保存したWaveファイルを例にとり、Waveファイルから測定値をどのように読み出すかがテーマです。

Waveファイルには「チャンク」と呼ばれる構造体があり、チャンクには校正情報や収録情報、波形そのものなど様々なチャンクが一塊となってWaveファイルを構成しています。

今回テーマとしたリオン社のDA-20PA1取扱説明書によるとDA-21保存Waveファイルには下記チャンク群の集合体と定義されています。

※チャンク概要は弊社ブログをご覧ください。
音ファイル(拡張子:WAVファイル)のデータ構造について

※引用元:リオン株式会社 DA-20PA1取扱説明書

うち、fmtサブチャンク以下は独自の拡張チャンクで校正情報や収録条件情報が記録されています。

読み出すにあたり重要な情報は

”fmtサブチャンク”

チャンネル数:収録したチャンネル数情報を取得します。これが無いと波形データがうまく取得できません。
サンプリング周波数:1データ当たりの時間幅が取得できます。一般的には時間幅は「1/サンプリング周波数」で求められますが、DA-21は周波数レンジとサンプリング倍率の乗数でサンプリング周波数求めてから計算します。

”共通設定 ch毎チャンク”

このチャンクには収録デジタル波形データをPa(音圧:パスカル)やm/s^2(加速度:メートル毎秒2乗)測定値に戻すためのEU値や単位など各種情報が記録されています。

入力レンジ:デジタル値を電圧に変換する際に必要なファクターです
単位/校正値:物理量復元用のEC値や校正感度値が入力されています。

ただ、任意設定であるが故に往々にして入力されていない事が多いです。今回は入力されていない前提で進めたいと思います。

 

EUとは

アナログ信号をデジタル変換する際には一般的には電圧(ボルト:V)を無次元量のデジタル値として記録します。EUとは「工学単位」(Engineering Unit)の略称で電圧あたりの単位量を定めておく値で、例えば騒音なら”1Pa/V”など「物理量/電圧」で表記する事が多いです。 EU値があるとデジタル値→電圧値→物理量までの変換がスムーズに行えます。 ちなみにDA-21のEU値は「物理量/1bit」のビット当たりの物理量で記録されていますのでデジタル→物理量が直接計算できます。

 

”Wave Dataサブチャンク”

〇収録波形データを保存しているサブチャンクです。ここで注意すべきはデータの並びが収録チャンネル数で並びが変わっている点です。
fmtサブチャンクでチャンネル数情報を正しく取得してから読み込まないとチャンネル間データが混合する危険性がありますのでご注意ください。

他にも一時停止情報やマーカー情報など考慮すべき情報はありますが今回は割愛します。

 

では、次回は実際にデジタルデータを読み出して測定値に変換してみます。
次の投稿記事に続きます!

 

お問い合わせはこちら