問題タブ [winmm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - winmm.lib のインクルードが機能しない
簡単な数当てゲームで小さなプログラムをコーディングしようとしています。
シンプルなスレッドを使用して、その背後で mp3 ファイルを再生したいと考えています。c++ プログラムで *.mp3 または *.wav サウンド ファイルを再生または開く方法を読みましたか? 、しかし、私はそれを動作させることができません。それは常にエラーを吐き出します:
これが私のコードです:
winmm.lib
ライブラリが見つからないようなので、どこかからダウンロードしてみました(推測です)。
何か間違ったことをしていますか、それとも他のヘッダーを含める必要がありますか?
c++ - C ++でWASAPIを使用して録音するときにオーディオ波形バッファにアクセスする方法は?
私は以前に winmm ライブラリを使用して、次のような構文で波形情報にアクセスしwaveInAddBuffer(hwi, &wh[i], sizeof(WAVEHDR));
ました。そのため、波形データを保存するメモリ ブロック (&w[i]) を指すポインタを渡し、アクセスする必要があります。私はちょうどこの whi[i].lpData を行う必要
があります WASAPI にこのような同様の関数はありますか?
winapi - waveInOpen を呼び出すときに stdio リダイレクトが「失敗」するのはなぜですか?
これが私の基本的なプログラムです。これは VisualStudio でかなり簡単にコンパイルできます (express でも)。
引数なしでコマンドラインから呼び出すと、すべて正常に出力されます (いくつかの「Hello World!」)。これをファイル(myprog.exe > blah.txt)
にリダイレクトすると、すべて正常に動作し、数行の「Hello World!」が表示されます。期待どおりにファイルになります。
ただし、引数がある場合 (そのようにwaveInOpen
呼び出されます)、ファイルに何もリダイレクトしません。ファイルが空です。出力をリダイレクトしない場合は、コマンド プロンプトに問題なく出力されます。
std::flush 行のコメントを外さない限り、ファイルは空ではなく、すべて正常に動作します。
それを引き起こしているボンネットの下で一体何が起こっているのですか?何があっても、終了時に標準出力をフラッシュしてファイルにパイプするべきではありませんか? waveInOpen()
そのようなstdioバッファリングを台無しにする呼び出しは何ですか?
FWIW、これが明らかになったのは、TCL と Python からこのプログラムを呼び出して、接続された製品のオーディオ品質測定を行っており、何も読み戻されていなかったからです。 )。