2020年5月13日 星期三

Week 12 _


- Sound -


#include <windows.h>
#include <mmsystem.h>

 int main()
 {
     PlaySoundA("ccheer.wav",NULL,SND_SYNC);  ///把音樂檔存成wav,並放在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 放到專案資料夾 


#include <windows.h>
#include <mmsystem.h>
#include <GL/glut.h>
#include "CMP3_MCI.h"

CMP3_MCI mp3;

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)
 {
    mp3.Load("music.mp3");
    mp3.Play();    
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("Week12_Sound");

    glutDisplayFunc(display);
    glutKeyboardFunc(keyboard);

    glutMainLoop();
 }



#include <windows.h>
#include <mmsystem.h>
#include <GL/glut.h>
#include "CMP3_MCI.h"

CMP3_MCI mp3;
CMP3_MCI Do,Re,Mi,Fa,So;

void display()
{
}

void keyboard(unsigned char key,int x,int y)
{
    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();
}

 int main(int argc,char**argv)
 {
    Do.Load("do.mp3");Re.Load("re.mp3");Mi.Load("mi.mp3");    
    Fa.Load("fa.mp3");So.Load("so.mp3");
    mp3.Play();    
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("Week12_Sound");

    glutDisplayFunc(display);
    glutKeyboardFunc(keyboard);

    glutMainLoop();
 }


 ♬ 將專案的cbp檔用notepad打開 - 修改程式把工作位置改成. - 把freeglut.dull移到專案資料夾 
 ♬ 就可以把需要的檔案都放在專案資料夾中~ 

#include <windows.h>
#include <mmsystem.h>
#include <GL/glut.h>
#include "CMP3_MCI.h"
CMP3_MCI mp3;
CMP3_MCI Do,Re,Mi,Fa,So;
float ballX=0,ballY=0,dx=0.05,dy=0.03;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
        glTranslatef(ballX,ballY,0);
        glutSolidSphere(0.1,30,30);
    glPopMatrix();
    glutSwapBuffers();
}
void timer(int t)
{
    glutTimerFunc(50,timer,t+1);
    ballX+=dx; ballY+=dy;
    if(ballX>=1)
    {
        Do.Play(); dx=-dx;
    }
    if(ballX<=-1)
    {
        Re.Play(); dx=-dx;
    }
    if(ballY>=1)
    {
        Mi.Play(); dy=-dy;
    }
    if(ballY<=-1)
    {
        So.Play(); dy=-dy;
    }
    glutPostRedisplay();
}
void mouse(int button,int state,int x,int y)
{
    if(state==GLUT_DOWN) PlaySoundA("shot.wav",NULL,SND_ASYNC);
}
void keyboard(unsigned char key,int x,int y)
{
    if(key=='1') Do.Play();///PlaySoundA("do.wav",NULL,SND_ASYNC);
    if(key=='2') Re.Play();///PlaySoundA("re.wav",NULL,SND_ASYNC);
    if(key=='3') Mi.Play();///PlaySoundA("mi.wav",NULL,SND_ASYNC);
    if(key=='4') Fa.Play();///PlaySoundA("fa.wav",NULL,SND_ASYNC);
    if(key=='5') So.Play();///PlaySoundA("so.wav",NULL,SND_ASYNC);
}
 int main(int argc,char**argv)
 {
    Do.Load("do.wav");Re.Load("re.wav");Mi.Load("mi.wav");
    Fa.Load("fa.wav");So.Load("so.wav");
    mp3.Load("music.mp3");
    //mp3.Play();
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("Week12_Sound");

    glutDisplayFunc(display);
    glutKeyboardFunc(keyboard);

    glutTimerFunc(50,timer,0);
    glutMouseFunc(mouse);

    glutMainLoop();
 }



沒有留言:

張貼留言