鈴聲圖片格式
Motorola
普通鈴聲格式
【格式】
<Header><Tempo Value><Musical Data><Delimiter><Checksum>
【說明】
Header: unsigned char 4Byte (所有的鈴聲都是一樣的header)
Values: 4c 33 35 26 -->"L35"
Tempo Value: unsigned char 2Byte 拍子,由1或2或3或4加空格構(gòu)成,缺省為2,
Values: 32 20 -->"2 "
Musical Data:nByte 二進制數(shù)據(jù)
Delimiter: unsigned char 2 Byte 分隔符 values: 26 26 -->""
Checksum:
2Byte 對Musical Data進行的校驗和,兩個字節(jié)。方法為對Musical
Data中的數(shù)據(jù)從前往后對每個字符進行異或運算,運算的結(jié)果假設(shè)其十六進制的表示為XY,那Checksum的第一個字節(jié)的十六進制形式為3Y,第二個
字節(jié)的十六進制形式為3X。
計算方式:
Step1: Calculate one byte XOR sum of the all the bytes of the musical data starting after
the space in the tempo value(not including space) till the (not inclusive of ). Let
us say this is XY.
Step 2: Separate X and Y into two bytes X0 and 0Y.
Step 3: Take 0Y and add hex 30. This becomes 3Y. Call this byte 1.
Step 4: Take X0 and shift right by 4 bits. This becomes 0X.
Step 5: Add hex 30 to 0X. This becomes 3X. Call this byte 2.
Step 6: Two byte checksum is <byte 2><byte1>
NOKIA
普通鈴聲格式
普通圖片(Operator Logo)
【格式】
<command><otb_bmp >
【說明】
<command> = <UDH><IEI><IEIL><IED>< MCC> < MNC>
UDHI IEI IEIL IED MCC MNC
06H 05H 04H 1582H 0000H 64F0 00
以上適用于china moblie
UDHI: byte length of user-data header define: 06H (用戶數(shù)據(jù)頭)
IEI: byte Information Element Identifier define; 05h (IE info )
IEIL: byte length of IEI data define: 04h (IE長度)
IED: unsinge int 2 bytes , octets 4 5 define: 5506--> 1582H - destination port
IED: unsinge int 2 bytes , octets 6 7 define: 0000 - originator port
MCC: (Mobile
Country Code), octets 14 and 15, little-endian BCD, filled with F16',
460 -> 64 F0, For ChinaNotice: To see the logo on the phone's screen,
octets 8 and 9 must be defined with the settings of the current
operator. (國家代碼)
MNC: Mobile Network Code) coding, little-endian BCD, filled with F16', 00->00, For ChinaMobile is 00, China CUGSM is 01 (網(wǎng)絡(luò)代碼)
Otb-bmp:otb格式,
<OTA Bitmap> ::= <header> <image-data > [ <palette > ]
<header> ::= <infofield >[extfield]<width><height ><depth>
infofield 8bit 圖片信息區(qū)具體表示如下:
Bit Info Field , description
7 分割標志 1:分割圖片(后面還有)0:否
6 壓縮標志 1:壓縮 0:沒有壓縮
5 擴展調(diào)色板 1:使用 0:沒有使用
4 Max size of icon 1:16bit ,0:8bit
3 Number of animated icons, msb
2 Number of animated icons
1 Number of animated icons
0 Number of animated icons,lst
Extended infofield 8bit 圖片信息區(qū)具體表示如下:
Bit ExtField , description
7 分割標志 1:分割圖片(后面還有)0:否
6 Bmp版本
5 Bmp版本
4 Bmp
3 保留
2 保留
1 保留
0 保留
Width: 圖片的寬度。對于Operator Log Width =72 48H
Height: 圖片的高度。 對于Operator Log Heigth=14 04H
Depth: 圖片的深度,灰度值或者顏色數(shù)。
Image-Data:圖片點陣
,當(dāng)圖片的大小為72X14時候,每一個byte就表示8個點,一行有72個點,因此每行需要9bytes,由于是14行,因此需要的大小是9X14=126bytes。每一個bit,1表示黑色,0表示白色。
Alcatel
普通鈴聲格式
【格式】
<Tp-UDL><TP-UDHL>
<TDD-IEI><TDD-Length><TDD-Name-Length><TDD-Name><TDD-Data_Type><TDD-Data-Length>
< Concatenation -IEI >< Concatenation-Length >< Concatenation-Reference Number >]
< Concatenation-Maximum Number >< Concatenation-Sequence Number >
<TDD-Data>
【說明】
TP-UDL Byte //短信長度 user data length max:-140
TP-UDHL Byte //短信頭長度 user data head length
-----------------------------------------------------------------------------------------------------------------
TDD-IEI Byte //阿爾卡特 sms標示 =80 type ”download”
TDD-Length Byte // IE Length of the TDD_Header ----end of IE
TDD-Name-Length Byte //Title/name length 標頭名字長度
TDD-Name unsigned char [TDD-Name-Length] //標頭名稱 {字符 }
TDD-Data-Type Byte //TDD_Data_Type
注釋: Bit 7:
0: cannot be forwarded
1: can be forwared using EMS
如果兼容EMS就設(shè)置為1
Bit 4-6 unused
Bit 0-2
000:iMelody melody
001:iAlcatel Melody
010:MSEQ melody
011:VOX melody
100: Alcatel Picture
101:Alcatel animation
110:sms template
111.unused
TDD-Data-Length = unsigned int 2 byte //TDD_data數(shù)據(jù) 長度
Byte 1: MSB
Byte 2: LSB
// End of TDD header IE
// Start of Concatenation header IE //以下只是用于坼分短信
Concatenation-IEI Byte //IEI=00
Concatenation-Length Byte //IEDL=03
Concatenation-Reference Number Byte // 序列號??(same as all segrments)125
Concatenation-Maximum Number Byte //總條數(shù) (same as all segrments)
Concatenation-Sequence Number Byte //當(dāng)前序列號
// End of Concatenation header IE
// End of User Data Header
TDD-Data = //TDD_DATA 數(shù)據(jù) 二進制流
普通圖片
(同鈴聲格式)
SIEMENS
普通鈴聲格式
【格式】
<Identifier><Version><DataSize><ReferenceID><ActPacketNumber><NumberOfPackets><ObjectSize> <ObjectType><ObjectName><Data>
---------------------------------------------------------------------------------------------------------------------------------
【說明】
Identifier: ASCII 5 byte 標識。設(shè)為”//SEO”(注意大小寫)(SEQ stands for Siemens Exchange OBject)
Version: unsigned char 版本號。設(shè)為1
DataSize: unsigned int 2 byte 數(shù)據(jù)大小。每個包里可mid數(shù)據(jù)的大小,對于同一mid的不同包的該值相同,最后一個包里實際剩余數(shù)據(jù)大小不足時,添0補足
最大值為:140-22-Length(objname)-Leng(objType) in Byte
ReferenceID:unsigned long 4字節(jié) 序列號。可自行設(shè)定,對同一首mid的不同包的該值相同
ActPacketNumber:unsigned int 2字節(jié)當(dāng)前包是第幾包。從1開始計數(shù)
NumberOfPackets:unsigned int 2字節(jié) 總包數(shù)。
ObjectSize:unsigned long 4字節(jié)mid的大小。The total of the dataobject in Byte
ObjectType:string 1Byte+x (x>0) 類型為mid。。第一字節(jié)為長度,因為類型為”mid”所以第一字節(jié)為3,第二至第四字節(jié)為”mid”
ObjectNam string 1byte+y mid的名稱,包括擴展名。長度不定。第一個字節(jié)為長度。如歌曲為”甜蜜蜜.mid”,則ObjectName的長度為10,第一個字節(jié)為10。第二至十個字節(jié)為” 甜蜜蜜.mid”
Resulting size: 22 Byte +x+y
Data:mid數(shù)據(jù)。從mid文件中拆分出來的數(shù)據(jù)。
普通圖片
【格式】
<Identifier><Version><DataSize><ReferenceID><ActPacketNumber><NumberOfPackets><ObjectSize> <ObjectType><ObjectName><Data>
-------------------------------------------------------------------------------------------------------------------------------------
【說明】
Identifier: ASCII 5 byte 標識。設(shè)為”//SEO”(注意大小寫)(SEQ stands for Siemens Exchange OBject)
Version: unsigned char 1 byte 版本號。設(shè)為1
DataSize: unsigned int 2 byte 數(shù)據(jù)大小。每個包里可bmp數(shù)據(jù)的大小,對于的不同包的該值相同,最后一個包里實際剩余數(shù)據(jù)大小不足時,添0補足
最大值為:140-22-Length(objname)-Leng(objType) in Byte
ReferenceID:unsigned long 4字節(jié) 序列號。可自行設(shè)定,對同一副圖片的不同包的該值相同
ActPacketNumber:unsigned int 2字節(jié)當(dāng)前包是第幾包。從1開始計數(shù)
NumberOfPackets:unsigned int 2字節(jié) 總包數(shù)。
ObjectSize:unsigned long 4字節(jié)mid的大小。The total of the dataobject in Byte
ObjectType:string 1Byte+x (x>0) 類型為bmp。。第一字節(jié)為長度,因為類型為”bmp”所以第一字節(jié)為3,第二至第四字節(jié)為”bmp”
ObjectName string 1byte+y mid的名稱,包括擴展名。長度不定。第一個字節(jié)為長度。如歌曲為”1234.bmp”,則ObjectName的長度為8,第一個字節(jié)為8。第二至十個字節(jié)為”1234.bmp”
Resulting size: 22 Byte +x+y
Data:mid數(shù)據(jù)。從bmp文件中拆分出來的數(shù)據(jù)。