問題タブ [waitone]
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# - 低レベルのオーディオ プレーヤーで C# の再生が途切れる - 修正しますか?
現在のオーディオ バッファで再生される周波数を表示できるようにする小さなプロジェクト (楽しみのため) に取り組んでいます。
計画は次のとおりです。
メソッドを実行しているスレッドは、WaveOutPlayer.ThreadProc()
再生を続け、2 つのオーディオ バッファーを補充します。最初のバッファが再生されている間、2 番目のバッファが再充填され、その逆も同様です。1 つのバッファーが再生を停止する前にもう 1 つのバッファーの再生が開始されないようにするために、このWaitOne()
メソッドを使用します。バッファーのオーディオ データがデバイスによって再生された後WaveOut
、バッファーのOnCompleted()
メソッドが呼び出されます。このメソッドは、待機をキャンセルします。
再生自体は始まりますが、非常に途切れ途切れです。
なぜこれが起こるのか誰か教えてもらえますか?
Visual Studio
プロジェクトはhttp://www.pour-toujours.net/lowlevelaudio.zipにあります。
(現在、16 ビット、ステレオ、44.1kHz の非圧縮 wav のみがサポートされています。)
関連すると思われる私のコードの一部を次に示します。
multithreading - 放棄されたミューテックスのために完了待ち
以下のアプリの最初のインスタンスの実行中に、「取得済み」と出力されます。ただし、2番目のものを開始すると、1分間待機します。その間にEnterキーを押して「最初のインスタンス」を離れると、2番目のインスタンスで「放棄されたミューテックスによる待機完了」例外がスローされます。スレッドを取得することになっていませんか?! (最初のインスタンスはすでにそれをリリースしましたか?!)