Jouer un son dans une application, mais ça ne marche pas ! [Résolu]

Messages postés
30
Date d'inscription
jeudi 7 juillet 2011
Statut
Membre
Dernière intervention
8 septembre 2014
- - Dernière réponse : 1ModdingMaster
Messages postés
30
Date d'inscription
jeudi 7 juillet 2011
Statut
Membre
Dernière intervention
8 septembre 2014
- 18 juil. 2014 à 16:25
Bonjour, je vous explique mon problème, j'ai une application normale, je souhaite jouer un son une fois qu'on l'a exécutée (Form_Load), ainsi que sur des boutons quand je passe la souris dessus et quand je clique dessus aussi.

J'ai trouvé sur internet que l'on pouvait rendre plusieurs sons jouables simultanément (ce que je recherche (fond + boutons)) avec cette commande-ci :

using System.Runtime.InteropServices;

[DllImport("winmm.dll")]
        private static extern Int32 mciSendString(string command, StringBuilder buffer, int bufferSize, IntPtr hwndCallback);

mciSendString(@"open C:\Users\Nom\Music\music.wav type waveaudio alias music", null, 0, IntPtr.Zero);
mciSendString(@"play music", null, 0, IntPtr.Zero);


Cependant ça ne marche rien, il n'y a aucun son qui sort ni de mes écouteurs ni des speakers de l'ordi. Quelqu'un saurait-il pourquoi s'il vous plaît ? Quelqu'un a-t-il déjà utilisé cette commande ?

Merci de votre réponse.

Cordialement.


NB : J'ai déjà utilisé cette commande :

System.Media.SoundPlayer Son = new System.Media.SoundPlayer();


Elle fonctionne bien, mais est très incomplète, pas de réglage de volume parait-il, et on ne peut pas jouer plusieurs sons simultanément.
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
30
Date d'inscription
jeudi 7 juillet 2011
Statut
Membre
Dernière intervention
8 septembre 2014
1
1
Merci
Bonjour Whismeril et merci de m'aider encore une fois. Ton aide me fut d'une grande utilité, j'ai pris ton premier exemple avec WMP, car ton second exemple avec DirectX marche aussi mais on ne peux pas donner la Sound.Location, c'est dommage. Avec WMPLib on peut lire des sons simultanément et aussi gérer le volume (tu ne savais pas donc je te montre) :

using WMPLib;

WindowsMediaPlayer PlayMusic = new WMPLib.WindowsMediaPlayer();

PlayMusic.URL = "wav/music.wav";
PlayMusic.controls.play();
PlayMusic.settings.volume = 50; // Entre 0 et 100


Merci de ton aide Whismeril ;) Sujet résolu.

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 200 internautes nous ont dit merci ce mois-ci

Whismeril
Messages postés
13832
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 octobre 2019
311 -
De rien, google a été mon ami!
1ModdingMaster
Messages postés
30
Date d'inscription
jeudi 7 juillet 2011
Statut
Membre
Dernière intervention
8 septembre 2014
1 -
Il a été le mien aussi avant d'ouvrir un nouveau sujet ici. ;)
Commenter la réponse de 1ModdingMaster
Messages postés
13832
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 octobre 2019
311
0
Merci
Bonjour,

ici un exemple avec System.Media.SoundPlayer pour lire plusieurs sons.
Après pour le volume je ne sais pas
Whismeril
Messages postés
13832
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 octobre 2019
311 -
et une autre méthode que tu dois pouvoir aussi jouer en simultané et gérer le volume.
Commenter la réponse de Whismeril