2015-06-15 4 views
-1

На самом деле я занимаюсь разработкой Будильника и я хочу играть звук (mp3 или OGG или файл WAV с моего компьютера, когда будильник звонит.Как добавить звук в C++ визуальной студии

class alarmclock //Alarm Clock Declaration 
{ 
protected: 
int hour, min, sec, A_hour, A_min, A_sec, msec; 
public: 
char c, a; 

void time(int ah, int am, int as) 
{ 
    SYSTEMTIME time; 
    GetLocalTime(&time); //Getting Time from Local Machine 


     if (ah >= 0 && ah <= 23 && am >= 0 && am <= 60 && as >= 0 && as <= 60) 
     { 
      hour = time.wHour; 
      min = time.wMinute; 
      sec = time.wSecond; 
      A_hour = ah; 
      A_min = am; 
      A_sec = as; 
      system("cls"); //Clear Screen 
      for (int i = sec; sec <= 60; i++) 
      { 
       Sleep(1000); //Delay of 1 Sec 
       system("cls"); 
       logo(); 
       gotoxy(45,13); 
       cout << "=> Alarm Time: " << A_hour << ":" << A_min << ":" << A_sec<<endl; 
       gotoxy(45,14); 
       cout << "=> Current Time: " << hour << ":" << min << ":" << sec; 
       sec++; 
       if (sec == 60) 
       { 
        min++; 
        if (min == 60) 
        { 
         min = 0; 
         hour++; 
        } 
        sec = 0; 
       } 
       if (hour == 24) 
       { 
        hour = 0; 
       } 
       if (A_hour == hour&&A_min == min&&A_sec == sec) 
       { 
        cout << "\nAlarm!"; 
        printf("\a"); //with this code it only beeps once but i want to play sound file for specific time 
        break; 
       } 

       if (_kbhit()) 
       { 
        c = _getch(); 
        cout << endl << endl; 
        if (c == 'e') 
        { 
         break; 
        } 
       } 
      } 
     } 

    else 
    { 
     cout << "Not Possible" << endl; 
    } 
} 
}; 

Я хочу играть конкретный файл в течение некоторого времени, когда звучит сигнал тревоги. Как я мог бы это сделать, есть ли какой-либо файл lib/header или встроенная функция для этого или я должен сам его разработать?

+0

Сон (1000) будет дрейфовать. Найдите [SetWaitableTimer] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms686289 (v = vs.85) .aspx) и [WaitForSingleObject] (https://msdn.microsoft. com/en-us/library/windows/desktop/ms687032 (v = vs.85) .aspx) – user4581301

ответ

0

Самый простой способ - для использования функции PlaySound (убедитесь, что вы связываетесь с winmm.lib).

+0

Как мне связать winmm.lib –

0

В следующем примере воспроизводится звуковой файл:
PlaySound (ТЕКСТ («recycle.wav»), NULL, SND_FILENAME);

+0

Я добавил, но вы хотели бы рассказать мне, как подключить winmm. lib –

+0

# прагма комментарий (lib, "winmm.lib") – Xearinox

Смежные вопросы