2016年5月9日 星期一

Week11

1.音效、音樂
2.鍵盤

   開一個貝殼檔


下載音樂檔http://www.openprocessing.org/sketch/132652
看音樂檔叫啥"Do.wav"




咒語--winmm


要加音樂到資料夾


程式碼
#include <iostream>
#include <windows.h>///在window的系統下
#include <mmsystem.h>///多媒體系統 要播放聲音、影片都要那行
using namespace std;

int main()
{
    int a;
    for(int i=0;i<10;i++)
    {
         cout << "Hello world!" << endl;
        PlaySoundA("Do.wav", NULL, SND_ASYNC);///播放檔案( 檔名,附屬誰,非同步((不用等)) )
        cin>>a;

    }

    return 0;
}
do re mi 循環

比較SND_ASYNC & SND_SYNC
        cout << "Hello world!" << endl;
        PlaySoundA("Do.wav", NULL, SND_ASYNC);
///播放檔案( 檔名,附屬誰,非同步((不用等可以切歌)) )
        cin>>a;

         cout << "Hello world!" << endl;
        PlaySoundA("Re.wav", NULL, SND_SYNC);
///播放檔案( 檔名,附屬誰,同步((要等他播放完才能撥放別的EX20秒音樂就要等20秒)) )
        cin>>a;



glut的keyboard函式

加路徑
freeglut的include檔


freeglut的lib檔


咒語
freeglut
opengl32
glu32
gdi32
winmm

把音樂檔跟freeglut.dll檔放到資料夾

程式碼
#include <GL/glut.h>
#include <windows.h>///在window的系統下
#include <mmsystem.h>///多媒體系統 要播放聲音、影片都要那行

void display()
{

}

void keyboard(unsigned char key, int x, int y)
{
    if(key=='1') PlaySoundA("Do.wav", NULL, SND_ASYNC);
    if(key=='2') PlaySoundA("Re.wav", NULL, SND_ASYNC);
    if(key=='3') PlaySoundA("Mi.wav", NULL, SND_ASYNC);
    if(key=='4') PlaySoundA("Fa.wav", NULL, SND_ASYNC);
    if(key=='5') PlaySoundA("Sol.wav", NULL, SND_ASYNC);
    if(key=='6') PlaySoundA("La.wav", NULL, SND_ASYNC);
    if(key=='7') PlaySoundA("Si.wav", NULL, SND_ASYNC);

}
int main(int argc, char**argv)
{
   glutInit(&argc, argv);
   glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
   glutCreateWindow("3D sound version");

   glutDisplayFunc(display);
   glutKeyboardFunc(keyboard);

   glutMainLoop();
}



播MP3檔
音樂&"CMP3_MCI.h"要放到資料夾
#include <GL/glut.h>
#include <windows.h>///在window的系統下
#include <mmsystem.h>///多媒體系統 要播放聲音、影片都要那行
#include "CMP3_MCI.h"///"CMP3_MCI.h"是一個執行檔下載要放到資料夾///通常電腦能撥的都可以撥
CMP3_MCI myMP3;
void display()
{

}

void keyboard(unsigned char key, int x, int y)
{
    if(key=='1') PlaySoundA("Do.wav", NULL, SND_ASYNC);
    if(key=='2') PlaySoundA("Re.wav", NULL, SND_ASYNC);
    if(key=='3') PlaySoundA("Mi.wav", NULL, SND_ASYNC);
    if(key=='4') PlaySoundA("Fa.wav", NULL, SND_ASYNC);
    if(key=='5') PlaySoundA("Sol.wav", NULL, SND_ASYNC);
    if(key=='6') PlaySoundA("La.wav", NULL, SND_ASYNC);
    if(key=='7') PlaySoundA("Si.wav", NULL, SND_ASYNC);

}
int main(int argc, char**argv)
{
   glutInit(&argc, argv);
   glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
   glutCreateWindow("3D sound version");

   glutDisplayFunc(display);
   glutKeyboardFunc(keyboard);

   myMP3.Load("yukai.mp3");///("音樂檔名")
   myMP3.Play();

   glutMainLoop();
}

沒有留言:

張貼留言