マイク入力した音声の電圧値を取得するには?

解決


春雨  2010-01-27 03:35:21  No: 102177

VB6を利用して、マイク入力した音声の電圧値を一定時間おきに測定し、Excelに測定値を入力していくプログラムを作成したいのですが、どうしたらいいでしょうか?

マイク入力した音声の音量を測定する事ができればほぼ解決できるのですが・・・
ご存知の方がいらっしゃったら、よろしくお願いします。


特攻隊長まるるう  2010-01-28 05:00:19  No: 102178

参考になりそうな過去ログはこの辺だと思うが。。。
VB以外の知識も必要ですね。
http://madia.world.coocan.jp/vb/vb_bbs2/200309/200309_03090079.html
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200406/04060125.txt


特攻隊長まるるう  2010-01-28 05:10:28  No: 102179

FFTで動作確認できたというのは最近の質問でありましたね。
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200912/09120008.txt


春雨  2010-01-28 23:12:19  No: 102180

特攻隊長まるるうさん
アドバイスありがとうございます。

こちらの記事は以前、僕も拝見した事があったのですが、
僕には少し難解すぎて手付かずの状態にしてました。

これらを参考に少しずつ解決させていこうと思います。
解決した際には、改めて書き込みさせて頂きますので、
それまでに、もし他の方法がありましたらアドバイスをおねがいします。


オショウ  2010-01-29 05:24:08  No: 102181

電圧?音量?
どちらで欲しいのでしょうか・・・

電圧ならマイク入力からは無理です。
A/Dボードなりが必要です。

音量ならマイク入力を取得さえすれば、WAVE形式
データとして取れれば、2バイトの値で格納されてま
すので・・・

あ!16ビットモードね!
WAVE形式フォーマットを知っている前提で

ある一定時間分のWAVEデータ中の各の2バイトひと組
の値で、最大値を抽出できれば最大音量に換算できます。

※  昔のコード見たらピーク値を100倍してました・・・
    レベルメーターとして表示するためだったように思います。

レベルメーターのようにバーが音量に応じて伸びたり
縮んだりしているのは、その方法で算出したもので、
バーの値を決めてます。

で、最後にdB換算する必要があるのかどうか・・・
これに関しては、規定音量をマイク入力させて、実際にどんな
値になるかチューニングが必要です。(おそらく・・・)

ミキサーの調整やらいろいろあるので、大変かと思いますが、
頑張ってください!

以上。


春雨  2010-01-30 04:15:11  No: 102182

オショウさん
アドバイスありがとうございます!

欲しかったのは電圧値ですね。
「音量」で検索するとサウンドデバイスのボリュームを操作するものしか出てこなかったので厳密には電圧値が正しいのかと。

特攻隊長まるるうさんから紹介して頂いたところを参考に完成させる事ができました。
ありがとうございました!!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加