Précédent   Forum du club des développeurs et IT Pro > Dotnet > Général Dotnet > Mono
Mono Forum d'entraide sur le développement avec Mono, l'implémentation open-source de la Common Language Infrastructure .
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 15/12/2010, 11h38   #1
med971
Invité de passage
 
med971
Inscription : novembre 2010
Messages : 7
Détails du profil
Informations personnelles :
Nom : med971

Informations forums :
Inscription : novembre 2010
Messages : 7
Points : 3
Points : 3
Par défaut [Mono] Comment lire un son WAV pendant une durée à préciser sur linux ?

Bonjour à tous,
Je programme en C# sous linux(avec mono),et depuis quelques jours je sèche sur cette question:"Comment lire un son WAV pendant une durée à préciser sur linux?"
J'ai un code qui fonctionne à peu près (ça toussote,la lecture n'est pas correcte),le voici:

Code :
1
2
3
4
5
6
7
8
9
10
11
private void Form1_Load(object sender, EventArgs e)
        {
            SoudPlayer s = new SoundPlayer();
            s.SoundLocation = @"/home/moi/Musique/mon_son.wav";
            s.Play();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            s.Stop();
        }
En fait je voudrais aussi supprimer le clic sur le bouton,pour que ça soit plus automatique,je crois que c'est quelque chose du genre Thread.Sleep(200); que je dois rajouter mais je suis un peu paumée je n'avance pas

Merci de m'aider
med971 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2010, 23h30   #2
Dr Dédé
Membre du Club
 
Inscription : octobre 2010
Messages : 50
Détails du profil
Informations forums :
Inscription : octobre 2010
Messages : 50
Points : 60
Points : 60
Tu peux utiliser System.Timers.Timer pour déclencher un évènement à intervalle régulier.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
using System;
using System.Media;
using System.Timers;
 
 
class Program
{
	static SoundPlayer player;
	static void Main()
	{
		player = new SoundPlayer("asound.wav");
		player.PlayLooping();
		var timer = new Timer(1000);
		timer.Elapsed += OnTimedEvent;
		timer.Start();
 
		Console.ReadKey();
	}
 
 
	static void OnTimedEvent(object sender, ElapsedEventArgs e)
	{
		player.Stop();
		((Timer)sender).Stop();
	}
}
Dr Dédé est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 05h21.


 
 
 
 
Partenaires

Hébergement Web