SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: Binary en Sábado 31 de Julio de 2004, 01:06

Título: Sonido
Publicado por: Binary en Sábado 31 de Julio de 2004, 01:06
Necesito saber la forma mas simple de producir algun sonido en C/C++ (DJGPP)
Windows XP... es para una juego... (tetris), solo necesito un beep para cuando avancen las piezas...

Tengo todo lo demas terminado.
Título: Re: Sonido
Publicado por: Noel Solw en Sábado 31 de Julio de 2004, 09:41
Fijate si tu compilador tiene la funcion sound(frecuencia), donde frecuencia es un entero que representa la frecuencia del sonido deseado.
La duracion del sonido puede controlarse con delay.
Finalizarlo con nosound().
Hay que usar #include <dos.h>
Exito ! ! !
Título: Re: Sonido
Publicado por: Electroduende en Sábado 31 de Julio de 2004, 12:00
en Win32 puedes usar la funcion del API PlaySound
De todas formas, para sonido en juegos, yo te recomendaria la libreria FMOD, que es multiplataforma, libre y muy buena :D (bueno, bonito y barato, jejejeje)

hasta luego,  :hola:
Electroduende
 :alien:
Título: Re: Sonido
Publicado por: Binary en Sábado 31 de Julio de 2004, 14:57
Muchas gracias... el sound(freq) y nosound() funcionaron a la perfeccion.
Lo que si, es que para juegos, no se puede usar delay(), porque el juego debe continuar, no? :D

Asi que eso lo verifico con:
clock_t t1, t2;

sound(freq);
t1 = t2 = clock();

if(t1 + (0.1 * CLK_TCK) > t2)  nosound();
else  t2 = clock();

Lo que si, me salvaste el pellejo :D
Me estaba urgiendo porque no sabia como ponerle sonido.
Para los que quieran, aqui esta el .exe
No envio los codigos, porque es trabajo de 3 horas (no documentado, ni ordenado)

Adios, y gracias de nuevo!