首页 > 代码库 > charing animation

charing animation

 

FHD : full high definition,1920 x 1080,全高清

 

 

logo.bin

     1 0000000: 8816 8858 130d 3000 6c6f 676f 0000 0000  ...X..0.logo....                                                                                              
     2 0000010: 0000 0000 0000 0000 0000 0000 0000 0000  ................
     3 0000020: 0000 0000 0000 0000 ffff ffff ffff ffff  ................
     4 0000030: 8916 8958 0002 0000 0100 0000 0000 0000  ...X............
     5 0000040: 0000 0000 1000 0000 0000 0000 0000 0000  ................
     6 0000050: ffff ffff ffff ffff ffff ffff ffff ffff  ................
     7 0000060: ffff ffff ffff ffff ffff ffff ffff ffff  ................
     8 0000070: ffff ffff ffff ffff ffff ffff ffff ffff  ................
     9 0000080: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    10 0000090: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    11 00000a0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    12 00000b0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    13 00000c0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    14 00000d0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    15 00000e0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    16 00000f0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    17 0000100: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    18 0000110: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    19 0000120: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    20 0000130: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    21 0000140: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    22 0000150: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    23 0000160: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    24 0000170: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    25 0000180: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    26 0000190: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    27 00001a0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    28 00001b0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    29 00001c0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    30 00001d0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    31 00001e0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    32 00001f0: ffff ffff ffff ffff ffff ffff ffff ffff  ................
    33 0000200: 3900 0000 130d 3000 ec00 0000 5e71 0000  9.....0.....^q..
    34 0000210: 3aa6 0c00 3558 0d00 b0d1 0e00 72d5 0e00  :...5X......r...
    35 0000220: 9cd6 0e00 1cda 0e00 86de 0e00 3ee1 0e00  ............>...
    36 0000230: 38e5 0e00 ece9 0e00 11ec 0e00 24f1 0e00  8...........$...
    37 0000240: eff5 0e00 85fb 0e00 8716 0f00 6833 0f00  ............h3..
    38 0000250: 4e50 0f00 3d6a 0f00 2182 0f00 7399 0f00  NP..=j..!...s...
    39 0000260: 2eb3 0f00 4ccf 0f00 f2eb 0f00 dd07 1000  ....L...........
    40 0000270: 51a3 1000 3e43 1100 62e3 1100 2d7e 1200  Q...>C..b...-~..
    41 0000280: 1c16 1300 e4ac 1300 8f46 1400 4ae4 1400  .........F..J...
    42 0000290: 7d83 1500 3b22 1600 2daa 1600 5fac 1600  }...;"..-..._...
    43 00002a0: 0d48 1700 0cbb 1700 a127 1b00 55dd 1d00  .H.........U...
    .....................................................................
    .....................................................................
    .....................................................................
196847 0300ee0: 4551 1445 5114 4551 1445 5114 4551 1445 EQ.EQ.EQ.EQ.EQ.E
196848 0300ef0: 5114 4551 1445 5114 4551 1445 5114 4551 Q.EQ.EQ.EQ.EQ.EQ
196849 0300f00: 1445 5114 4551 1445 5114 4539 9a7f 0167 .EQ.EQ.EQ.E9...g
196850 0300f10: 0c47 cf00 0000 0000 0000 0000 0000 0000 .G..............
196851 0300f20: 0a

 

0x200 = 00000039,代表這個 logo.bin 由39 個圖片組成。

0x204 = 00300d13,代表這個 logo.bin 的 length,

0x300F20 代表 logo.bin 的 bytes size

但為什麼 300d13 和 300f20 不一致呢?

是否是因為加了其它資訊?

0x300F20 - 0x300d13 = 0x20D 

待解決?

 

待續!

 

 


 

關機充電動畫如以下4張,

特地將會變動的水波紋獨立出來看較易理解。

 

 

技术分享

 

技术分享

 

技术分享

技术分享

 

 

 

 

下面是在描述 畫數字及電池容量圖案的 LCM 上的啟始點。

 

130 #if defined(FHD) || defined(CU_FHD) || defined(CMCC_FHD) || defined(CT_FHD) || defined(CMCC_LTE_FHD) || defined(CT_LTE_FHD) || defined(CU_LTE_FHD)
131         // fhd 1080*1920
132         
133         // battery capacity rectangle
134         #define CAPACITY_LEFT                (387) // battery capacity center
135         #define CAPACITY_TOP                 (802)
136         #define CAPACITY_RIGHT               (691)
137         #define CAPACITY_BOTTOM              (1292)
138 
139         // first number rectangle
140         #define NUMBER_LEFT                  (351+84) // number
141         #define NUMBER_TOP                   (479)
142         #define NUMBER_RIGHT                 (435+84)
143         #define NUMBER_BOTTOM                (600)
144 
145         // %  rectangle
146         #define PERCENT_LEFT                 (519+84) // percent number_left + 2*number_width
147         #define PERCENT_TOP                  (479)
148         #define PERCENT_RIGHT                (627+84)
149         #define PERCENT_BOTTOM               (600)
150 
151         // top animation part
152         // youchihwang
153         #define TOP_ANIMATION_LEFT           (387) // top animation
154         #define TOP_ANIMATION_TOP            (100)
155         #define TOP_ANIMATION_RIGHT          (691)
156         #define TOP_ANIMATION_BOTTOM         (152)

 

 

 

 

 

133         // battery capacity rectangle
134         #define CAPACITY_LEFT                (387) // battery capacity center
135         #define CAPACITY_TOP                 (802)
136         #define CAPACITY_RIGHT               (691)
137         #define CAPACITY_BOTTOM              (1292)

 

技术分享

 

 

 

 

 

139         // first number rectangle
140         #define NUMBER_LEFT                  (351+84) // number
141         #define NUMBER_TOP                   (479)
142         #define NUMBER_RIGHT                 (435+84)
143         #define NUMBER_BOTTOM                (600)

 

技术分享

 

 

 

 

 

145         // %  rectangle
146         #define PERCENT_LEFT                 (519+84) // percent number_left + 2*number_width
147         #define PERCENT_TOP                  (479)
148         #define PERCENT_RIGHT                (627+84)
149         #define PERCENT_BOTTOM               (600)

 

技术分享

 

 

 

 

 這是水波紋動畫的大小size,不是啟始點。

151         // top animation part
152         #define TOP_ANIMATION_LEFT           (387) // top animation                                                                                                
153         #define TOP_ANIMATION_TOP            (100)
154         #define TOP_ANIMATION_RIGHT          (691)
155         #define TOP_ANIMATION_BOTTOM         (152)

 

技术分享

 

 

linux_repo/vendor/mediatek/proprietary/external/libshowlogo/show_animation_common.c


66 /* 67 * Check logo.bin address if valid, and get logo related info 68 * 69 */ 70 int check_logo_index_valid(unsigned int index, void * logo_addr, LOGO_PARA_T * logo_info) 71 { 72 unsigned int *pinfo = (unsigned int*)logo_addr; 73 logo_info->logonum = pinfo[0]; 74 75 SLOGD("[show_animation_common: %s %d]logonum =%d, index =%d\n", __FUNCTION__,__LINE__,logo_info->logonum, index); 76 if (index >= logo_info->logonum) 77 { 78 SLOGE("[show_animation_common: %s %d]unsupported logo, index =%d\n", __FUNCTION__,__LINE__, index); 79 return CHECK_LOGO_BIN_ERROR; 80 81 } 82 // SLOGD("show_animation_common, pinfo[1]=%d, pinfo[2+index]=%d, pinfo[3+index]=%d, pinfo[3+index] - pinfo[2+index]= %d, pinfo[1] - pinfo[2+index] =%d \n", 83 // pinfo[1],pinfo[2+index],pinfo[3+index], pinfo[3+index] - pinfo[2+index],pinfo[1] - pinfo[2+index]); 84 85 if(index < logo_info->logonum - 1)

//
// ex:以第5張圖為例,
// logolen = pinfo[3+5] - pinfo[2+5]
// 以上算法是屬於相對的,
// 原先假設 pinfo[2+5] 是 picture 4 raw data 的 end address.
// 原先假設 pinfo[3+5] 是 picture 5 raw data 的 end address.
// 相減 為 picture 5 raw data 的長度,
// 但看了 90 行的code,推理 pinfo[2+5] 應是 picture 5 raw data 在 logo.bin 的相對啟始位置。
// 所以 pinfo[3+5] 則是 picture 5 raw data 在 logo.bin 的相對啟始位置。
//
86 logo_info->logolen = pinfo[3+index] - pinfo[2+index]; 87 else 88 logo_info->logolen = pinfo[1] - pinfo[2+index]; 89
//
// 取出 picture 的 raw data,
// logo_addr :logo.bin 在系統的啟始位置
// pinfo[2+index] :第 index 圖在 logo.bin 的相對啟始位置
// logo_addr + pinfo[2+index]:第 index 圖在整個系統的啟始位置 90 logo_info->inaddr = (unsigned int)logo_addr + pinfo[2+index]; 91 SLOGD("show_animation_common, in_addr=0x%08x, logolen=%d\n", 92 logo_info->inaddr, logo_info->logolen); 93 94 return CHECK_LOGO_BIN_OK; 95 }

 

 

 

繼續編輯

待續

 

charing animation