動画作成ツール「Crystel Engine」ブログ

動画作成ツール「Crystel Engine」の開発日誌です。良かったら「CE」と略して下さい。現在はMAD動画を作るためのツールとして稼動中。MADデビューしたい方は、ぜひどうぞ!ロマンはどこだ!?を胸に日々開発中

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

音声録音機能

組み込んだ音声をWAVE出力できる機能を追加しました。

ゲームとしての動作では必要ありませんが、NIVE
のような動画作成ツールにも持っていきたかったもので・・・

DirectSoundのキャプチャ機能もしくはwaveInOpen(Win32)のAPIを使うかを
調べてましたが、とりあえずはWin32APIを使う事にしました。
DirectSoundの場合セカンダリバッファの出力は何となく理解できましたが、
プライマリバッファの出力が調査しきれませんでした。

以下、Win32関数で行っていること

・waveInOpen関数で下準備
・waveInStart関数で現在スピーカから流れている音声を録音
// 終了したら以下の事を行ってmmio関数等でWAVEを作成
・waveInReset(m_hwi);
・waveInUnprepareHeader(m_hwi, &m_wh, sizeof(WAVEHDR));
・waveInClose(m_hwi);

「waveInOpen サンプル」とかGoogleで調べたら幾つか参考になるサイトが出てくると思います。

recordaudio.jpg

録音コントロールの音量は全て下げないと、ノイズが乗ってしまったので全部下げた方がいいかと。

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。