Ссылка PresentationCore
и WindowsBase
и попробуйте это ...
var p1 = new System.Windows.Media.MediaPlayer();
p1.Open(new System.Uri(@"C:\windows\media\tada.wav"));
p1.Play();
// this sleep is here just so you can distinguish the two sounds playing simultaneously
System.Threading.Thread.Sleep(500);
var p2 = new System.Windows.Media.MediaPlayer();
p2.Open(new System.Uri(@"C:\windows\media\tada.wav"));
p2.Play();
EDIT
Я получил пониженное голосование, вероятно, потому что на первый взгляд похоже, что он будет воспроизводить второй звук после того, как первый закончен. Это не так, они воспроизводятся окнами асинхронно. Спит, так что если вы тестируете этот код дословно, вы можете услышать звуки, играющие вместе, это не будет заметно без задержки, так как они - один и тот же звук.
Этот код демонстрирует два звука, воспроизводимых в отдельных потоках друг над другом, что бессмысленно, поскольку воспроизведение все равно не блокируется
new System.Threading.Thread(() => {
var c = new System.Windows.Media.MediaPlayer();
c.Open(new System.Uri(@"C:\windows\media\tada.wav"));
c.Play();
}).Start();
System.Threading.Thread.Sleep(500);
new System.Threading.Thread(() => {
var c = new System.Windows.Media.MediaPlayer();
c.Open(new System.Uri(@"C:\windows\media\tada.wav"));
c.Play();
}).Start();
http://msdn.microsoft.com/en-us/library/system.windows.media.mediaplayer.stop.aspx
Класс также имеет элемент управления, необходимый для остановки воспроизведения