作者steven70101 (老人)
看板GameDesign
標題[請益] directxsound載入wav檔問題
時間Tue Apr 26 21:24:36 2011
最近在用DirectX,但是在導入音效wav檔方面出了問題
按照書本範例給的標頭檔來判斷是否為wav檔
typedef struct xWaveHeader{
char RiffSig[4];
long WaveformChunkSize;
char WaveSig[4];
char FormatSig[4];
long FormatChunkSize;
short FormatTag;
short Channels;
long SampleRate;
long BytesPerSec;
short BlockAlign;
short BitPerSample;
char DataSig[4];
long DataSize;
}
但是問題是,同樣都是這一個 struct 來判斷
卻有的 wav 可以載入有的卻會錯誤
而且錯的通常都是 DataSig 一欄
正常來說應該是至入 [d][a][t][a]
但是錯誤的在同一欄卻變成 [] [] [d] [a]
差了2個 byte
而且就算刻意多放入2個byte,最後的 DataSize也對不起來
有人知道這是啥問題嗎囧?
因為素材有限,結果還一堆不能用頗囧....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.118.112.119
→ Bencrie:你可能要調一下對齊 ... 像BMP的 header也有這種問題 04/26 22:34
→ steven70101:也就是說我可能要每個wav檔分開處理? 04/26 23:48
→ steven70101:抱歉新手沒概念... 04/26 23:48
→ asoedarren:關鍵字"pragma pack" 04/26 23:50