制作android开机logo

来源:互联网 发布:算法 复杂度 编辑:程序博客网 时间:2024/04/28 02:11

在定制产品时,常需要制作logo

logo开机时共分两部分:

准备图片

1)、(内核部分)第一阶段静态显示,要求一张png格式图片(满足机器要求分辨率),单张图片不大于100kb。静态显示时间5秒左右。

2)、(android部分)第二阶段静态显示,要求一张png格式图片(满足机器要求分辨率),单张图片不大于100kb。静态显示时间15-20秒左右。

3)、(android部分)第三阶段动态显示,要求多张png格式图片(满足机器要求分辨率),单张图片不大于100kb,动态显示时间15s秒左右。(总大小小于4M,越小越好)

一、内核部分。

android系统默认为小企鹅。如需修改:

1.替换内核小企鹅

根据在bootup logo里面配置的选项,替换掉drivers\video\logo\下面的logo_linux_clut224.ppm

或者其他的.ppm文件,同时删除logo_linux_clut224.c 。使用附件脚本png2ppm.sh ,放入虚拟机,在同一个目录下存放logo.png(你想转换的),然后敲入./png2ppm.sh 即可生成logo.ppm,再重命名为logo_linux_clut224.ppm即可用,

若原来没有安装netpbm工具,使用sudo apt-get install netpbm 命令安装

        ---Bootup logo                                                                 

          [ ]   Standard black and whiteLinux logo                                       

           [ ]     Standard16-color Linux logo                                             

           [*]  Standard 224-color Linux logo                                             

           [ ]  224-color Macintosh Linux logo                                            

           []   16-color SuperH Linux logo  

二.android部分

1、替换android_小字

1、首先需要一个适合自己屏幕的png文件,可以自己制作或者网上下载,例如名称为log.png
2、使用ImageMagick自带的convert命令,进行raw格式转换
    命令 $ convert -depth 8 log.png rgb:log.raw
   将获得一个叫做log.raw的文件
3、来到目录platform\build\tools\rgb2565,编译android自带的rgb2565工具(如果没编译过),使用:$ gcc -O2 -Wall -Wno-unused-parameter -o rgb2565 to565.c
4、将log.raw文件拷贝到rgb2565可执行程序目录下,即platform\build\tools\rgb2565

5、对raw文件进行格式转换:$ ./rgb2565 -rle <logo.raw > initlogo.rle生成initlog.rle文件

然后将initlogo.rle复制到out/target/product/sdkDemo/root目录下。

make firmware---->ok!

2.替换android闪光动画

vendor\....\sdkDemo\bootanimation.zip

或者替换out\target\product\sdkDemo\system\media\bootanimation.zip

 

替换图片

里面part0 ,part1两部分动画,一般part0顺序播放一遍,part1循环播放直到系统启动完毕

根据需要放入png格式图片,播放顺序按字母顺序,图片最好按序号命名。最后将bootanimation打包成.zip包

方法:

进入bootanimation目录

执行:  zip -0 -r ../bootanimation.zip ./*

linux 命令使用 -0 指定压缩等级为最低等级 stored ,即只归档不压缩,否则可能由于包格式问题引起动画显示为黑屏

将生成.zip放入out\target\product\sdkDemo\system\media\即可

 

bootanimation.zip解压后,有一个desc.txt文件

其内容分析如下:

480 272 20     //表示480*272分辨率,这个可以根据机器自己设定;每秒钟播放20张图片

p 1 0 part0  

p 0 0 part1

 总体说明: 480 为宽度, 427 为高度, 30 为帧数,即每秒播放动画 30  
部分说明:第一项 p 为标志符,第二项为循环次数 1 为只播放 1 次,0为无限循环,第三项为两次循环之间间隔的帧数,第四项为对应的目录名



下面就简单介绍一下initlog.rle文件的制作步骤: