[問題] 關於openAL

看板C_and_CPP (C/C++)作者 (森)時間16年前 (2010/07/03 13:57), 編輯推噓4(4014)
留言18則, 5人參與, 最新討論串1/1
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) 第一次使用 連編譯都過不了 希望得到的正確結果: 能播出音樂 程式跑出來的錯誤結果: invalid conversion from `const char*' to `ALbyte*' initializing argument 1 of `void alutLoadWAVFile(ALbyte*, ALenum*, ALvoid**, ALsizei*, ALsizei*, ALboolean*)' 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) dev c ps:dev c測試成功後 會改道vc試試 有問題的code: (請善用置底文標色功能) #include <stdio.h> #include <stdlib.h> #include <AL/alut.h> #include <AL/al.h> #include <AL/alu.h> int main(){ ALenum alenSoundFormat; ALsizei alsSoundSize; ALvoid* alvSoundData; ALsizei alsSoundFreq; ALboolean albSoundLoop; alutLoadWAVFile("sorrysorry.wav", &alenSoundFormat, &alvSoundData, &alsSoundSize, &alsSoundFreq, &albSoundLoop); alBufferData(aluiSound_buffer[ulSoundFileIndex], alenSoundFormat, alvSoundData, alsSoundSize, alsSoundFreq); alutUnloadWAV(alenSoundFormat, alvSoundData, alsSoundSize, alsSoundFreq); 補充說明: 哪裡有介紹al的函式庫網站阿... 好難找到完整的~ 謝謝看完~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.127.208.193 ※ 編輯: b26168 來自: 140.127.208.193 (07/03 18:10)

07/03 18:19, , 1F
跟據偉大的google和compile msg. 請大力地做casting
07/03 18:19, 1F

07/03 18:20, , 2F
alutLoadWAVFile((ALbyte *)_fileName,...
07/03 18:20, 2F

07/03 18:21, , 3F
這應該就是簡單的形態轉換吧!?
07/03 18:21, 3F

07/03 18:22, , 4F
確認下ALbyte 在 library是用什麼做typedef的
07/03 18:22, 4F

07/03 20:33, , 5F
你有看過OpenAL SDK給的文件 ?
07/03 20:33, 5F

07/04 13:34, , 6F
alutLoadWAVFile(ALbyte *file,ALenum *format,
07/04 13:34, 6F

07/04 13:34, , 7F
ALvoid **data,ALsizei *size,
07/04 13:34, 7F

07/04 13:35, , 8F
ALsizei *freq,ALboolean *loop);
07/04 13:35, 8F

07/04 13:45, , 9F
你需要先: 1.看signature 2.讀懂錯誤訊息 3.把基本功
07/04 13:45, 9F

07/04 13:45, , 10F
練好 4.上網查資料
07/04 13:45, 10F

07/04 15:01, , 11F
我將第一個參數強制轉換型態後 現在出現一堆函式link error
07/04 15:01, 11F

07/04 15:20, , 12F
你的Linker參數怎麼下的 ?
07/04 15:20, 12F

07/04 16:10, , 13F
我只把alut.lib丟到dev C的lib目錄下而已@@
07/04 16:10, 13F

07/04 16:22, , 14F
編譯器選項那邊要加入你lib所在的目錄
07/04 16:22, 14F

07/04 22:09, , 15F
有加過alut.lib進去 ㄧ樣的結果就是
07/04 22:09, 15F

07/05 19:41, , 16F
你貼了alut.lib那openal32.lib呢?
07/05 19:41, 16F

07/06 13:52, , 17F
剛剛加上去了 編譯似乎沒問題 可以一執行就結束了
07/06 13:52, 17F

07/06 13:53, , 18F
我在main一開始第一行就system("pause")也沒看到東西就結束
07/06 13:53, 18F
文章代碼(AID): #1CBj5PCp (C_and_CPP)
文章代碼(AID): #1CBj5PCp (C_and_CPP)