c# - C#中的声音数组

标签 c# arrays audio slideshow soundplayer

我正在尝试制作一个程序,以像幻灯片一样显示图像,并且每次显示图片时,当前图像都会播放声音,每个图像都会播放不同的声音。
如何使用带有声音的阵列并播放阵列中的声音?

string[] sounds = new string[] { "nero", "fai", "mpanio", "tv1", "volta", 
                                 "sleep1" }; 
private int currentAudioIndex = 0;

private void timer1_Tick(object sender, EventArgs e)
{
   timer1.Stop();
   try
   {
      timer1.Interval = 5000; // Next time, wait 5 secs
      button1.BackgroundImage = (Image)Properties.Resources.ResourceManager.GetObject(arr1[currentImageIndex]);
      new SoundPlayer(Properties.Resources.nero).Play();// plays only one sound "nero"

      currentImageIndex++;
   }
   finally
   {
      if (currentImageIndex < arr1.Length)
      timer1.Start();
   }
}

最佳答案

我假设您有名为“nero.wav”,“fai.wav”等的wav文件资源...

从那里,您可以将资源作为Stream加载,然后将流传递到SoundPlayer构造函数:

Stream stream = Properties.Resources.ResourceManager.GetStream(arr1[currentImageIndex] + ".wav");
new SoundPlayer(stream).Play();

关于c# - C#中的声音数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23477526/

相关文章:

c# - 单元测试项目c#上的相对路径

c# - LINQ 复杂查询导航属性

c - 将字符串作为输入到字符串指针数组中并显示它们

ios - 一起使用 AVCaptureSession 和音频单元会导致 AVAssetWriterInput 出现问题

javascript - Youtube API 和 Web 音频 api

c# - 是否可以使用 if 语句优雅地配置 Serilog?

javascript - 使用ES6表示法中的filter()方法解析一维数组

arrays - 可以向 slice 添加追加方法

android - 通过Android中的声音启动服务?

c# - jQuery 中的 ConfigurationManager.AppSettings