2018年5月7日 星期一

week11 矮矮的筆記

1.讀入聲音檔



程式碼
#include <mmsystem.h>///呼叫Moltimedia多媒體系統的外掛
int main(int argc, char *argv[])
{
    PlaySound("madmoo.wav", NULL, SND_ASYNC); ///播放聲音,讀入WAV檔
    ///PlaySound()其實就是PlaySoundA(),輸入的檔名,會是正常的ASCII字串
    ///三個參數,檔名,NULL, SND_ASYNC
    ///小心,要在working_dir工作執行目錄裡面找到他


用Hello word播聲音
#include <stdio.h>
#include <windows.h>///要有window才會認識
#include <mmsystem.h>///使用mmsystem外掛

int main()
{
    PlaySound("madmoo.wav", NULL, SND_SYNC);
    printf("Hello world!\n");

}
(SYNC 等聲音播完再跑其他程式  ASYNC一起跑)

聲音檔要放在專案資料夾中



build option
黃色螢光筆部分加上去



#include <mmsystem.h>///呼叫Moltimedia多媒體系統的外掛
static void key(unsigned char key, int x, int y)
{
    switch (key)
    {
       case '1': PlaySound("Do.wav", NULL, SND_ASYNC);
            break;
       case '2': PlaySound("Re.wav", NULL, SND_ASYNC);
            break;
        case '3': PlaySound("Mi.wav", NULL, SND_ASYNC);
            break;
        case '4': PlaySound("Fa.wav", NULL, SND_ASYNC);
            break;
        case '5': PlaySound("Sol.wav", NULL, SND_ASYNC);
            break;
        case '6': PlaySound("La.wav", NULL, SND_ASYNC);
            break;
        case '7': PlaySound("Si.wav", NULL, SND_ASYNC);
            break;
void mouse (int button, int state, int x, int y)
{
    if(state==GLUT_DOWN)PlaySound("Shot.wav", NULL, SND_ASYNC);
        ///mouse要按下去才有聲音
}

int main(int argc, char *argv[])
{
    //PlaySound("madmoo.wav", NULL, SND_ASYNC); ///播放聲音,讀入WAV檔
    ///PlaySound()555555(),輸入的檔名,會是正常的ASCII字串
    ///三個參數,檔名,NULL, SND_ASYNC
    ///小心,要在working_dir工作執行目錄裡面找到他
    glutInit(&argc, argv);
    glutInitWindowSize(640,480);
    glutInitWindowPosition(10,10);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("GLUT Shapes");

    glutReshapeFunc(resize);
    glutDisplayFunc(display);
    glutKeyboardFunc(key);///要用keyboard來彈鋼琴
    glutIdleFunc(idle);
    glutMouseFunc(mouse);///我們要用mouse射擊!!!




沒有留言:

張貼留言