利用函數來控制聲音midi文件
聲音midi格式與wav相比占有的空間比較小,在authorware里用midi做背景音樂,
是比較理想的選擇。有的朋友會說,我用wav做背景不是一樣嗎?當然可以了,但
是如果你的課件做的內容比較詳細,動畫、講解也比較多的時候,你就可以比較出
來還是用midi音樂做背景好。而authorware6本身不能直接插入midi音樂,我們可
以借助midiloop.u32來完成authorware里midi的播放和停止。下面來看一下具體的
操作步驟:
一.midiloop.u32函數的導入
1. 打開authorware6可執行文件,新建一個文件命名為:播放midi
2. 導入midiloop.u32【實現的途徑:windon-->functions-->(在category
的下來菜單里選播放midi)-->load-->選中midiloop.u32文件夾(找到你下載的midiloop.u32)-->打開-->出現圖1界面-->
選中loopmidi和stopmidi-->load-->出現圖2界面(點擊loopmidi
在圖2下面的descreption里可以看到具體的函數的表達意義和實例)-->done】為了便于大家應用,我把此函數放到網站中,請到下面去下載:
http://www.faithli.com/linshi/midiloop.zip
圖1
圖2
二. 用函數控制midi的播放
1.播放midi
在流程線上放一計算圖標,命名為播放midi. 里面的函數為:
loopmidi(filelocation^"midi//rose.mid"),如圖3所示:
圖3
這樣就可以在一個頁面里循環播放midi音樂作為背景了:
2.這里需要對計算圖標里的函數的路徑說明一下:
①這里的filelocation^"midi//rose.mid"是midi音樂rose.mid的相對路徑,
意思是midi文件夾和播放midi.exe 文件在同一目錄下,這樣不管你在
測試或者刻錄光盤時,都不用在考慮路徑的問題。
② 當然計算圖標里我們也可以用絕對路徑:loopmidi("c://midi//rose.mid")
但這樣做在自己的計算機里運行是沒有問題的,當作品完成以后刻錄 光盤后,
到其它計算機里運行的時候找c盤里的midi文件夾,是找不 到的,因此不會正常實現midi的播放。這種方法只實用于制作
測試階段。
③還有一種方法是絕對路徑的表示方法:loopmidi("://midi//rose.mid")
這種表示方法是要求midi文件夾必須放在根目錄下,也就是我們刻錄
光盤的時候要把這個midi文件夾刻錄在光盤的根目錄下,這樣不管你
的光驅是那一個盤符,保證能找到rose.mid,使midi音樂的播放沒有問題。
3. 這種在流程線上播放的midi是沒有控制的,即打開界面,背景音樂就
開始播放,平且是循環播放。我們希望界面上的音樂可以操縱,即我們想聽
的時候,才打開,這就需要用下面的按鈕來控制。
三. 用按鈕或熱區控制midi的播放
1用按鈕控制midi的播放
在上面圖3的流程上做一下修改,即在流程線上放一個交互圖標midi控制,在其右邊放一個按鈕:播放midi如下圖中的②;計算圖標播放midi里的
函數同上采用相對路徑:filelocation^"midi//rose.mid"如圖中的③所示;
測試一下,只有圖片沒有聲音,但我們在圖片區看到的有一個播放midi
按鈕,點擊一下,可以聽到優美的rose音樂。當然這里的按鈕用的是系統自帶的,我們一般在制作的時候要使用與界面協調的自制按鈕,這會在后面的按鈕篇里做詳細的講解。
[1] [2] [3] 下一頁
新聞熱點
疑難解答