1

MP3 ストリームのデコード、再生、録音に NAudio を使用しています。録音WasapiLoopbackCaptureのために、ストリームを wav ファイルに保存するために使用します。

if (waveIn == null) {
  waveIn = new WasapiLoopbackCapture();
  writer = new WaveFileWriter(outputFilename, waveIn.WaveFormat);
  waveIn.DataAvailable += new EventHandler<WaveInEventArgs>(waveIn_DataAvailable);
  waveIn.RecordingStopped += new EventHandler(waveIn_RecordingStopped);
  waveIn.StartRecording();
}

私は現在、3072 kBit/s (wasApi の標準と思われるもの) ではない wav ファイルを保存するソリューションを探しています。mp3 ストリームは 128 kBit/s を提供するので、これは私の wav ファイルに適したビットレートです。を変更しようとしましたwaveIn.WaveFormatが、適切なプロパティが見つかりませんでした。

4

2 に答える 2

3

残念ながら、WASAPI では、ループバック レコーディングのサンプル レートを変更することはできません。その後、独自のサンプルレート変換を自分で実行する必要があります。これには、NAudioのDmoResamplerまたはWaveFormatConversionStreamクラスを使用できます。

于 2012-03-08T19:44:09.547 に答える
-1

wasapi での Naudio の抽象化には詳しくありませんが、wasapi C++ API を使用して、Windows に特定のビットレート/サンプルサイズでオーディオを提供させることができます。それが役に立ったら

于 2012-04-22T22:24:46.720 に答える