【說明】
Header: unsigned char 4Byte (所有的鈴聲都是一樣的header)
Values: 4c 33 35 26 -->"L35&"
Tempo Value: unsigned char 2Byte 拍子,由1或2或3或4加空格構成,缺省為2,
Values: 32 20 -->"2 "
Musical Data:nByte 二進制數據
Delimiter: unsigned char 2 Byte 分隔符 values: 26 26 -->"&&"
Checksum: 2Byte 對Musical Data進行的校驗和,兩個字節。方法為對Musical Data中的數據從前往后對每個字符進行異或運算,運算的結果假設其十六進制的表示為XY,那Checksum的第一個字節的十六進制形式為3Y,第二個字節的十六進制形式為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 (用戶數據頭)
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 (網絡代碼)
Otb-bmp:otb格式,
<OTA Bitmap> ::= <header> <image-data > [ <palette > ]
<header> ::= <infofield >[extfield]<width><height ><depth>
infofield 8bit 圖片信息區具體表示如下:
Bit Info Field , description
7 分割標志 1:分割圖片(后面還有)0:否
6 壓縮標志 1:壓縮 0:沒有壓縮
5 擴展調色板 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 圖片信息區具體表示如下:
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: 圖片的深度,灰度值或者顏色數。
Image-Data:圖片點陣
,當圖片的大小為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就設置為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數據 長度
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 //總條數 (same as all segrments)
Concatenation-Sequence Number Byte //當前序列號
// End of Concatenation header IE
// End of User Data Header
TDD-Data = //TDD_DATA 數據 二進制流
普通圖片
(同鈴聲格式)
SIEMENS
普通鈴聲格式
【格式】
<Identifier><Version><DataSize><ReferenceID><ActPacketNumber><NumberOfPackets><ObjectSize> <ObjectType><ObjectName><Data>
---------------------------------------------------------------------------------------------------------------------------------
【說明】
Identifier: ASCII 5 byte 標識。設為”//SEO”(注意大小寫)(SEQ stands for Siemens Exchange OBject)
Version: unsigned char 版本號。設為1
DataSize: unsigned int 2 byte 數據大小。每個包里可mid數據的大小,對于同一mid的不同包的該值相同,最后一個包里實際剩余數據大小不足時,添0補足
最大值為:140-22-Length(objname)-Leng(objType) in Byte
ReferenceID:unsigned long 4字節 序列號。可自行設定,對同一首mid的不同包的該值相同
ActPacketNumber:unsigned int 2字節當前包是第幾包。從1開始計數
NumberOfPackets:unsigned int 2字節 總包數。
ObjectSize:unsigned long 4字節mid的大小。The total of the dataobject in Byte
ObjectType:string 1Byte+x (x>0) 類型為mid。。第一字節為長度,因為類型為”mid”所以第一字節為3,第二至第四字節為”mid”
ObjectNam string 1byte+y mid的名稱,包括擴展名。長度不定。第一個字節為長度。如歌曲為”甜蜜蜜.mid”,則ObjectName的長度為10,第一個字節為10。第二至十個字節為” 甜蜜蜜.mid”
Resulting size: 22 Byte +x+y
Data:mid數據。從mid文件中拆分出來的數據。
普通圖片
【格式】
<Identifier><Version><DataSize><ReferenceID><ActPacketNumber><NumberOfPackets><ObjectSize> <ObjectType><ObjectName><Data>
-------------------------------------------------------------------------------------------------------------------------------------
【說明】
Identifier: ASCII 5 byte 標識。設為”//SEO”(注意大小寫)(SEQ stands for Siemens Exchange OBject)
Version: unsigned char 1 byte 版本號。設為1
DataSize: unsigned int 2 byte 數據大小。每個包里可bmp數據的大小,對于的不同包的該值相同,最后一個包里實際剩余數據大小不足時,添0補足
最大值為:140-22-Length(objname)-Leng(objType) in Byte
ReferenceID:unsigned long 4字節 序列號??勺孕性O定,對同一副圖片的不同包的該值相同
ActPacketNumber:unsigned int 2字節當前包是第幾包。從1開始計數
NumberOfPackets:unsigned int 2字節 總包數。
ObjectSize:unsigned long 4字節mid的大小。The total of the dataobject in Byte
ObjectType:string 1Byte+x (x>0) 類型為bmp。。第一字節為長度,因為類型為”bmp”所以第一字節為3,第二至第四字節為”bmp”
ObjectName string 1byte+y mid的名稱,包括擴展名。長度不定。第一個字節為長度。如歌曲為”1234.bmp”,則ObjectName的長度為8,第一個字節為8。第二至十個字節為”1234.bmp”
Resulting size: 22 Byte +x+y
Data:mid數據。從bmp文件中拆分出來的數據。
新聞熱點
疑難解答