Tengo una aplicación de Windows escrita en C# /. NET.Cómo reproducir un sonido en C#, .NET
¿Cómo puedo reproducir un sonido específico cuando se hace clic en un botón?
Tengo una aplicación de Windows escrita en C# /. NET.Cómo reproducir un sonido en C#, .NET
¿Cómo puedo reproducir un sonido específico cuando se hace clic en un botón?
que puede usar:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
Esta es la respuesta perfecta porque un nuevo usuario puede entender que SoundPlayer pertenece a System.Media .... –
¿Qué es @ for ?. –
@Ali ... http://stackoverflow.com/questions/2361857/what-does-means-in-c-sharp "Significa interpretar la siguiente cadena como literal. Es decir, la \ en la cadena será en realidad una "\" en la salida, en lugar de tener que poner "\\" para significar el carácter literal " – Praveen
para Windows Forms una forma es utilizar el SoundPlayer
private void Button_Click(object sender, EventArgs e)
{
using (var soundPlayer = new SoundPlayer(@"c:\Windows\Media\chimes.wav")) {
soundPlayer.Play(); // can also use soundPlayer.PlaySync()
}
}
Esto también trabajará con WPF, pero hay otras opciones como el uso de MediaPlayer
MSDN page
Probablemente debería estar envuelto en una declaración 'using' como hereda de' Component' – cjk
@ck - Solo estaba mostrando lo básico, pero sí en el código de producción, envuélvalo en 'using'. – ChrisF
Mejor aún, en el código de producción, créelo solo una vez y úselo muchas veces en lugar de crearlo cada vez que se presiona el botón. – Shibumi
Puede usar SystemSound, por ejemplo, System.Media.SystemSounds.Asterisk.Play();
.
+1 genial, no sabía que –
+1 para usar instancias incorporadas similares a 'SystemColors'. – Shibumi
muy útil. puede ayudar a usar los valores predeterminados del sistema. –
Código abajo permite reproducir archivos MP3 y archivos de onda en memoria demasiado
player.FileName = "123.mp3";
player.Play();
de http://alvas.net/alvas.audio,samples.aspx#sample6 o
Player pl = new Player();
byte[] arr = File.ReadAllBytes(@"in.wav");
pl.Play(arr);
Esta es una respuesta de alto nivel para aplicaciones que desean integrarse perfectamente en el entorno de Windows. Los detalles técnicos de reproducir un sonido particular se proporcionaron en otras respuestas. Además de eso, siempre tenga en cuenta estos dos puntos:
Uso cinco del sistema estándar de sonidos en escenarios típicos, es decir
asterisco - juega cuando se quiere resaltar evento actual
Pregunta - jugar con preguntas (la ventana del cuadro de mensaje del sistema reproduce esta)
exclamación - jugar con el icono excalamation (sistema de ventanas cuadro de mensaje juega éste)
Bip (sonido del sistema por defecto)
parada crítico ("mano") - jugar con error (la ventana del cuadro de mensaje del sistema reproduce este)
Los métodos de la clase System.Media.SystemSounds
los reproducirán por usted.
Implementar cualquier otro sonido como personalizable por sus usuarios en sonido panel de control
Para reproducir un archivo de audio en forma de Windows con C# vamos a ver ejemplo sencillo de la siguiente manera:
1.Go Visual Studio (VS-2008/2010/2012) -> Menú Archivo -> haga clic en Nuevo proyecto.
2.En el proyecto nuevo -> haga clic en Aplicación de Windows Forms -> Nombre y luego en Aceptar.
Se abrirá un nuevo proyecto de "Windows Forms".
3. Deslice y suelte un control de botón de la Caja de herramientas a Windows Form.
4. Haga doble clic en el botón para crear automáticamente el controlador de eventos Click predeterminado y agregue el siguiente código.
Este código muestra el cuadro de diálogo Abrir archivo y pasa los resultados a un método llamado "playSound" que creará en el siguiente paso.
OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "Audio Files (.wav)|*.wav";
if(dialog.ShowDialog() == DialogResult.OK)
{
string path = dialog.FileName;
playSound(path);
}
5.Agregue el siguiente código de método en el botón 1_Click evento hander.
private void playSound(string path)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer();
player.SoundLocation = path;
player.Load();
player.Play();
}
6.Ahora ejecutemos la aplicación simplemente presionando F5 para ejecutar el código.
7.Haga clic en el botón y seleccione un archivo de audio. Después de que el archivo se carga, el sonido se reproducirá.
Espero que este sea un ejemplo útil para principiantes ...
WinForms or WPF? – Richard