2012-06-09 16 views
6

I una aplicación Metro de Windows 8 (C#/XAML): ¿Cómo puedo disparar el mismo efecto de sonido dos veces para que se reproduzca simultáneamente?reproducir dos sonidos simultáneamente en Windows 8 Metro App (C#/XAML)

La segunda jugada debe comenzar antes de que la primera haya finalizado.

cuestiones relacionadas son:

Playing two sounds simultaneously c# y Play two sounds simultaneusly

me encontré con esta clase de XNA que no lo quiero, pero no está disponible en Metro: http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.audio.soundeffectinstance.aspx

Respuesta

17

Basta con crear un medio independiente elemento para cada efecto de sonido.

(no estoy seguro que necesito para reubicar el archivo cada vez)

public async void PlayLaserSound() 
    { 
     var package = Windows.ApplicationModel.Package.Current; 
     var installedLocation = package.InstalledLocation; 
     var storageFile = await installedLocation.GetFileAsync("Assets\\Sounds\\lazer.mp3"); 
     if (storageFile != null) 
     { 
      var stream = await storageFile.OpenAsync(Windows.Storage.FileAccessMode.Read); 
      MediaElement snd = new MediaElement(); 
      snd.SetSource(stream, storageFile.ContentType); 
      snd.Play(); 
     } 
    } 
+0

funcionaría esto en Windows Phone 8? –

Cuestiones relacionadas