2020年5月13日 星期三

week 12

聲音 音效 音樂




播放 WAV 檔

#include <windows.h>
#include <mmsystem.h>  
int main()
{///播聲音 正常的ASCII檔名, 空, 聲音要同步
    PlaySoundA( "Hahaha.wav", NULL, SND_SYNC);

}///檔案要在下面(in freeglut\bin)



播放音階

#include <windows.h>
#include <mmsystem.h>
#include <GL/glut.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("so.wav",NULL,SND_ASYNC);
}
int main(int argc, char**argv)
{
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
 glutCreateWindow("week12 sound");

 glutDisplayFunc(display);
 glutKeyboardFunc(keyboard);

 glutMainLoop();

}



要把 CMP3_MCI.h 放到 week12



播放MP3

#include "CMP3_MCI.h" /// TODO3:雙引號,在專同一個目錄裡

CMP3_MCI mp3;/// ex. int a; TODO3: 宣告一個物件變數,叫 mp3

mp3.Load("music.mp3");

 mp3.Play();



新增和弦

CMP3_MCI Do, Re, Mi, Fa, So;///TODO4: 有5個物件變數


    if(key=='1') Do.Play();
    if(key=='2') Re.Play();
    if(key=='3') Mi.Play();
    if(key=='4') Fa.Play();
    if(key=='5') So.Play();

 Do.Load("do.wav");Re.Load("re.wav");Mi.Load("Mi.wav");
 Fa.Load("fa.wav");So.Load("so.wav");///TODO4:5個物件變數



修改位置

改成<Option working_dir="." />



freeglut/bin 裡的資料移到 week 12




沒有留言:

張貼留言