0

mp3 ファイルを読み込んで再生する方法に関する NAudio の Web サイトのチュートリアルに従いましたが、オーディオ ファイルを正しいディレクトリに配置したにもかかわらず、実行するたびに「vshost32.exe が動作を停止しました」というメッセージが表示されてプログラムがクラッシュします。何か案は?Windows 7 で Visual Studio 10.0 を使用しています。

チュートリアルで提供された(正確な)コードは次のとおりです。

   namespace NAudioTest
   {
       class Program
    {
    static IWavePlayer waveOutDevice;
    static WaveStream mainOutputStream;
    static WaveChannel32 volumeStream;

    static void Main(string[] args)
    {
        waveOutDevice = new WaveOut();
        mainOutputStream = CreateInputStream("Kalimba.mp3");
        waveOutDevice.Init(mainOutputStream);
        waveOutDevice.Play();
    }

    private static WaveStream CreateInputStream(string filename)
    {
        WaveChannel32 inputStream;
        if (filename.EndsWith(".mp3"))
        {
            WaveStream mp3Reader = new Mp3FileReader(filename);
            inputStream = new WaveChannel32(mp3Reader);
        }
        else
        {
            throw new InvalidOperationException("Unsupported extension");
        }
        volumeStream = inputStream;
        return volumeStream;
    }

}
}

(書式が悪くてすみません)

4

1 に答える 1

0

気にしないでください。このコードを使用して、オーディオファイルを機能させました。

NAudio を使用して MP3 ファイルを再生する方法

 class Program
 {
     static void Main()
     {
         using (var rdr = new Mp3FileReader(filename))
         using (var waveOut = new WaveOut(WaveCallbackInfo.FunctionCallback()))
         {
              waveOut.Play();
              while (waveOut.PlaybackState == PlaybackState.Playing)
              {
                  Thread.Sleep(100);
              }
         }
     }
  }

これは良いですか?WaveOutEvent がどこに行くのかよくわかりませんが。ご協力ありがとうございました!!

于 2013-03-11T08:26:01.387 に答える