録音された、個別のヘッダとデータの中身を個別に確認したい

[戻る]
ひで 2015/01/17(土) 17:38:22
bccで組んでいますが、下記の録音ルーチンで、
再生がうまくいったので、録音も
上手く行っているようです。
waveInPrepareHeader(hwi, &wh, sizeof(WAVEHDR));
waveInAddBuffer(hwi, &wh, sizeof(WAVEHDR));
waveInStart(hwi);
rewind(stdin);
getchar(); 
waveInReset(hwi);
waveInUnprepareHeader(hwi, &wh, sizeof(WAVEHDR));
waveInClose(hwi);
しかし、データをWAVファイルあたりに残しておきたいのですが、
その時、どうすれば、ヘッダと、データ(中身そのもの)
をバイト単位に取って来れるのでしょうか?
(そのバッファがどこにあるのか?)

また、このbccで動いたコードをVisual Studio 2005に移植しましたが、
下記のように、コンパイルで跳ねられます。
#include <MMSystem.h>と
#pragma comment(lib, winmm.lib)
をやってみても、同じです。
1>マニフェストをリソースにコンパイルしています...
1>リンクしています...
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveOutClose@4 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル 
__imp__waveOutUnprepareHeader@12 が関数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveOutReset@4 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveOutWrite@12 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル 
__imp__waveOutPrepareHeader@12 が関数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveOutOpen@24 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveInClose@4 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル 
__imp__waveInUnprepareHeader@12 が関数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveInReset@4 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveInStart@4 が関
数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveInAddBuffer@12 
が関数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル 
__imp__waveInPrepareHeader@12 が関数 _main で参照されました。
1>Rec_Syn.obj : error LNK2019: 未解決の外部シンボル __imp__waveInOpen@24 が関
数 _main で参照されました。
1>Debug\Rec_Syn.exe : fatal error LNK1120: 外部参照 13 が未解決です。

tetrapod 2015/01/22(木) 13:58:24
#pragma comment(lib, winmm.lib)
ではなくて
#pragma comment(lib, "winmm.lib")
のはずなんだけど。

俺的には #pragma comment よりプロジェクトの設定でライブラリを追加したい。

ITO 2015/01/23(金) 09:35:50
 winmm.libのようなVCにリンクされてないライブラリーは、目的のプロジェクトに
コピーして使いますね。

tetrapod 2015/01/25(日) 21:07:36
ええー
winmm.lib は platform SDK なんで通常 VC++ (っつか PSDK) 所有扱いとして問題ない
=自プロジェクトにコピーするなんてありえない、と思うんだけど。

元発言者氏の返信が無いのでこれ以上のコメントは無し、ってとこかな。

ITO 2015/01/26(月) 10:37:09
> =自プロジェクトにコピーするなんてありえない、と思うんだけど。
そうですか(^^;
いちいちディレクトリー設定しないといけないんでコピ−してきちゃいますね。

古いスレッドには追加発言できません。