Archivo de audio en C

Iniciado por Baal_30, 19 Julio 2014, 12:07 PM

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

Baal_30

Perdonarme por continuar con el post y por mi ignorancia, pero ahora no consigo que me funciona con una canción que quiero.

El código queda así : #include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
#include "res.h"

int reloj();
int cuenta();

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
int op;

printf("elige sobre que deseas usar la alarma:\n");
printf("(1) Programar una hora\n");
printf("(2) Cuenta atras\n");
scanf("%d",&op);

switch(op){
case 1 : reloj();
break;
case 2 : cuenta();
break;
default : {
system("cls");
printf("Abre de nuevo el programa y elige una opcion correcta.\n\n");
}
}

return 0;
}

int reloj(){
system("cls");

int hh, mm;
struct tm * infoTiempo;
time_t tiempo;

printf("Introduce una hora:\n");
scanf("%d",&hh);
printf("Introduce los minutos:\n");
scanf("%d",&mm);

printf("La alarma sonara a las %d:%d\n",hh,mm);

for(;;){
time(&tiempo);
infoTiempo = localtime(&tiempo);
if((infoTiempo->tm_hour == hh)&&(infoTiempo->tm_min==mm)){
printf("\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a");
break;
}
}

return 0;
}

int cuenta(){
system("cls");
int hh,mm,ss;
int i,j,ii,ij,ik;
int x = 1000;

printf("Introduzca el tiempo para realizar la cuenta atras(HH:MM:SS) :\n");
scanf("%d:%d:%d",&hh,&mm,&ss);

for(ii=hh,i=0;ii>=0;ii--,i++){
if(i>0) mm=59,ss=59;
for(ij=mm,j=0;ij>=0;ij--,j++){
if(j>0) ss=59;
for(ik=ss;ik>=0;ik--){
Sleep(x);
printf("La alarma sonara en: %d:%d:%d\r",ii,ij,ik);
if(ii==0&&ij==0&&ik==0){
PlaySound(MAKEINTRESOURCE(SONIDO),NULL,SND_RESOURCE);
}
}
}

}

return 0;
}


res.h
#define SONIDO 100

res.rc
#include "res.h"
SONIDO WAVE "charlie.wav"


He probado mil cosas, y buscado por google, pero no me funciona con ninguna. La primera vez, cuando me funcionó, en me salió una pestaña en el DEV++ que salían funciones y cosas que no entendía, pero relacionadas con los audios y el sonido. Ahora al crear el proyecto y linkar el libwinmm.a, no me ha salido ¿quizás sea eso? ¿Como me puede salir otra vez encontes? ¿Quizás lo haya borrado yo de la librería o algo de eso?

Y una preguntita que se me olvidó preguntar, el "100" de res.h, ¿que indica? y, "SONIDO WAVE" que significa realmente ¿? Tan sólo marca el archivo de audio que se va a usar, ¿no?

Y ya aprovecho... Donde y cómo se supone que se guarda el archivo de audio en el ejecutable ¿? Una vez compilado y guardado, se puede sacar el archivo de audio de alguna forma ¿?

Gracias y disculpas por las molestias :/

EDITO: Comentar que el archivo de audio lo tengo en la misma carpeta del proyecto, así no hace falta poner la ruta...
«La suerte es el cuidado de los detalles». -Winston Churchill

leosansan

Cita de: Baal_30 en 21 Julio 2014, 15:11 PM
Perdonarme por continuar con el post y por mi ignorancia, pero ahora no consigo que me funciona con una canción que quiero.
.......................................................
He probado mil cosas, y buscado por google, pero no me funciona con ninguna. La primera vez, cuando me funcionó, en me salió una pestaña en el DEV++ que salían funciones y cosas que no entendía, pero relacionadas con los audios y el sonido. Ahora al crear el proyecto y linkar el libwinmm.a, no me ha salido ¿quizás sea eso? ¿Como me puede salir otra vez encontes? ¿Quizás lo haya borrado yo de la librería o algo de eso?
......................................................

Prueba a añadir nuevamente la librería como ya te indiqué en un mensaje anterior. La prueba que he hecho si me funciona, linkando la librería, claro.

Y aprovecho para indicarte otra manera "simple" de reproducir .mp3:

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

int main(){
  mciSendString ("cancion.mp3",NULL,0,0);
  system("pause");
  return 0;
}





¡¡¡¡ Saluditos! ..... !!!!







Baal_30

Nada :/, la cargo igual que hice la primeza vez, pero parece que no haga nada, cuando se tendría que escuchar la canción al compilar, me da error :/
«La suerte es el cuidado de los detalles». -Winston Churchill

daryo

Cita de: Baal_30 en 23 Julio 2014, 13:39 PM
Nada :/, la cargo igual que hice la primeza vez, pero parece que no haga nada, cuando se tendría que escuchar la canción al compilar, me da error :/

mira si esta linkeada con direccion relativa o absoluta y en caso de que este relativa ponlo absoluto
absoluta es asi:
c:\direccion\libreria\archivo.a

relativa es asi:
..\..\..\direccion\archivo.a
buenas

Baal_30

Bien, así ya me sale lo que me salía antes, la pestaña de "Makefile.win", pero ahora al compilar me da error:

[Error] C:/Program: No such file or directory
[Error] Files: No such file or directory
[Error] (x86)/Dev-Cpp/MinGW32/lib/libwinmm.a: No such file or directory
recipe for target '"Proyecto1' failed

¿Será que borré la librería sin querer o algo así?  :-\
«La suerte es el cuidado de los detalles». -Winston Churchill

daryo

CitarSerá que borré la librería sin querer o algo así?

puede ser pero lo bueno es que eso tendria una solucion sencilla reinstala el dev o instala code blocks :P
buenas