Leer y reproducir audio archivo formato wav

Iniciado por GoBrit, 25 Mayo 2013, 11:24 AM

0 Miembros y 1 Visitante están viendo este tema.

GoBrit

Hola,

Estoy desarrollando una aplicación en la cual necesito que se reproduzca un archivo *.wav. Mi objetivo es leer el contenido del fichero *.wav para poder reproducirlo con la función sound() & delay(). Se puede hacer esto?¿

Se que debo leer el fichero en modo binario. De hecho, he programado un pequeño ejemplo para ver si me lo leía bien, pero no he tenido mucho éxito.

En fin el problema es que no se como leer un archivo *.wav para luego poder reproducirlo.

Estoy programando en C.

Muchas Gracias

pacoperico

Para ello deberias usar alguna libreria que te permita reproducir archivos wav como por ejemplo la biblioteca sdl:

http://www.libsdl.org/

GoBrit

 Hola,

Lo de la librería SDL ya me lo habían dicho antes, pero no me funciona, ya que trabajo en DosBox con borland C 3.1.

Tambien comente en el post "Poner música en backgrouns en juego 8 bits". En este post explico todo lo que  me pasa y lo que necesito. Si alguien cree que me puede echar una mano, les agradecería que se pasaran por ese post, para no duplicar la información .

Muchas Gracias

pacoperico

El lenguaje C y su biblioteca estandar no disponen de ninguna funcion para reproducir archivos de sonidos. Si quieres reproducir wav tendras que usar una biblioteca de terceros.

leosansan

Cita de: GoBrit en 25 Mayo 2013, 11:24 AM
Hola,
..................................................
En fin el problema es que no se como leer un archivo *.wav para luego poder reproducirlo.
............................................

Perdona pero te puse por error la respuesta en e otro tema, Pero vamos, no hay problema y te la repito;

Cita de: GoBrit en 17 Mayo 2013, 22:26 PM
Hola,
...........................................................................
Aquí viene el kit de la cuestión: Como puedo hacer una interrupción al timer que me ponga música en modo background. El objetivo es a partir de un archivo .wav y haciendo una interrupción al timer (0x08 -> Tema interrupción dominado) hacer sonar el la canción que contiene el fichero .wav.
..........................................................

No me he aclarado mucho con tu problema. Por lo que entiendo está en "reproducir" el archivo .wav, para lo cual la única información necesaria es su ruta de acceso. Pues eso, si lo que quieres es reproducir un .wav o un ,mp3 o lo que sea hay varias posibilidades:

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>

int main()
{
   system("C:\\WINDOWS\\Media\\notify.wav");
   sndPlaySound("C:\\WINDOWS\\Media\\notify.wav",0);
   system("C:/219.mp3");
   return 0;
}


Las barras las pongo de una forma u otra, según me da,

Hay un porrón de funciones en las API relacionadas con la reproducción, para empezar.

No sé si es algo de lo que buscas, pero or intentarlo que no quede.

Saluditos!. ... ..

flony

si un problema no tiene solucion entonces no es un problema...es algo inevitable

leosansan

Cita de: flony en 26 Mayo 2013, 04:59 AM
lei algo que talvez te interese
http://foro.elhacker.net/programacion_cc/como_encontrar_la_duracion_de_un_mp3-t390797.0.html
aca en el foro

¿No te has dado cuenta que GoBrit es el autor de dicho tema?. :rolleyes:

La verdad es que no entiendo porque abrió otro hilo con el mismo tema, espero pueda explicar ese hecho, más que nada por curiosidad sociológica. :silbar:

Saluditos!. ... ..

flony

si un problema no tiene solucion entonces no es un problema...es algo inevitable

GoBrit

Hola,

Primero de todo decir que ya conseguí leer el fichero *.wav. Me sirvió bastante el link de "flony", muchas gracias.

Por otro lado, quería aclarar la duda que le surge a "leosansan": "La verdad es que no entiendo porque abrió otro hilo con el mismo tema, espero pueda explicar ese hecho, más que nada por curiosidad sociológica."
Es lógico, ya que son dos temas super parecidos.
-Este post pretendía poder  leer los metadatos del fichero *.wav para poderlos reproducir posteriormente, solo eso, nada de librerías ni otras formas para poder reproducir el audio.
-En el otro post cualquier forma valida para reproducir el audio me servia.

Espero haber arreglado la confusión y disculpen las molestias.
En futuros posts intentare ser mas explicito.

Atentamente,
GoBrit