简体   繁体   中英

Play simultaneously sound in C#

I want in the win Application (written in C#), the sound (Wav Format) play as Background Sound, and mouse over Control play small wav sound File, and when Click on Button, Stop Background Sound and ... .
Thanks For your guidance.

You could try look around in the System.Media namespace. There is a SoundPlayer which is able to play Wave files.

To play a wav file in a loop, you can use the following code:

string filename = @"C:\WINDOWS\Media\notify.wav";
System.Media.SoundPlayer player = new System.Media.SoundPlayer(filename);
player.PlayLooping();

To stop playing, you simple call Stop():

player.Stop();

Play around a bit, there's more if you need it.

您是否尝试过在单独的线程中播放它们?

you can use Windows Media Player:

reference C:\\Windows\\System32\\wmp.dll in your project

to launch a wav file:

WMPLib.WindowsMediaPlayer wmp = new WMPLib.WindowsMediaPlayerClass();
wmp.URL = "[wav file path]";

//then control the player with :

wmp.controls.play(), stop(), ...

for the second wav file, do the same thing with another instance of WindowsMediaPlayer etc...

you can also use Managed DirectX : Managed DirectX Tutorial Part 2

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM