全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2706
推到 Plurk!
推到 Facebook!

為止wav檔頭4~7不能改呢?

尚未結案
dsp
一般會員


發表:14
回覆:23
積分:7
註冊:2003-10-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-02 22:19:13 IP:218.171.xxx.xxx 未訂閱
請問各位大大 我看書寫4~7和40~43都是跟檔案大小有關 以為都要改我就改了但只能用realone player放 我看別人寫的文章說4~7不要改我跟著做成功了 為什麼4~7不能改呢?我也不知 我只知道4~7是包含第4個byte到檔案結尾的長度 而40~43是從第44byte到檔案結尾的長度 為什麼只要改40~43我就不知了 請問大大你知道要用那個指令可以直接放出來呢? 謝謝大大
mine
中階會員


發表:28
回覆:129
積分:56
註冊:2004-03-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-03 11:00:07 IP:61.221.xxx.xxx 未訂閱
[quote] 這是影音的範疇你怎麼還是在 vcl 問^^" 不管了 最近找到ms的一份資料 發覺我之前知所以不知所以然在這裡給提供給你參考 RIFF Header A RIFF file has an 8-byte RIFF header, identifying the file, and giving the residual length after the header (i.e. file_length - 8): struct {       char  id[4];          // identifier string = "RIFF"   DWORD len;            // remaining length after this header                 } riff_hdr;         The riff_hdr is immediately followed by a 4-byte data type identifier.  For .WAV files this is "WAVE" as follows: char wave_id[4];        // WAVE file identifier = "WAVE" RIFF Chunks         The entire remainder of the RIFF file is "chunks".  Each chunk has an 8-byte chunk header identifying the type of chunk, and giving the length in bytes of the data following the chunk header, as follows: struct {                // CHUNK 8-byte header    char  id[4];        // identifier, e.g. "fmt " or "data"    DWORD len;         // remaining chunk length after header                 } chunk_hdr;                                         // data bytes follow chunk header 所以並不是修正第4-7 而是第5-8這是RIFF的定義(在buffer裡由0開始計數所以才是4-7的Byte)其DWORD值並不是filesize -4 而是filesize-RIFF struct所以是filesize-8 因為RIFF Handle為8Byte大小 之前你修正了這部份因為數值計算上有出入造成windows無法辦識(這也是爆音的來由) 再則你問如何播放有提供三種方式給你參考 引用 MMsystem Unit sndPlaySound(filename;SND_SYNC ): BOOL;直接播檔 PlaySound(pszSound: PChar; hmod: HMODULE; fdwSound: DWORD): BOOL;直接 由記憶體播放 for delphi; playsound(Tstream.memory,0,SND_SYNC or SND_MEMORY); 引用 MPlayer Unit 或再經由Mediaplay去播(EX:mp1:TMediaplay) mp1.FileName:='yourfile'; mp1.open; mpl.play;這部份你再多看一下參考吧 --------------------------------------------- 搞不懂!搞不懂!永遠都搞不懂!! 發表人 -
dsp
一般會員


發表:14
回覆:23
積分:7
註冊:2003-10-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-07 21:57:59 IP:218.171.xxx.xxx 未訂閱
謝謝上面的大大
系統時間:2024-05-17 18:48:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!