linjc 发表于 2014-10-21 16:30:22

制作开机LOGO及开机动画

本帖最后由 linjc 于 2015-11-4 10:26 编辑

一、制作开机LOGO
1.找一张图片,分辨率为:1920×1080,这里以linuxlogo.png为例;
2.转换格式,用以下命令(如工具未安装可用以下指令安装:sudo apt-get install netpbm):
pngtopnm linuxlogo.png > linuxlogo.pnm
pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm
pnmtoplainpnm linuxlogo224.pnm > logo_linux_clut224.ppm
3.把刚刚做好的logo_linux_clut224.ppm替换掉SDK中以下文件:
kernel/drivers/video/logo/logo_linux_clut224.ppm
重新编译内核,把生成的kernel.img烧进板子即可。
注意:如果你的boot.img中包含了kernel,记得重新烧一个没有kernel的boot.img,或者重新编译boot.img哦!
二、制作开机动画
我们平时看到的开机动画其实是由若干张图片组成的,在开机的时候轮流播放,看起来就像是动态的啦!如果,你有兴趣自己做一个漂亮的动画,当然是没问题的,但如果不会处理图片,又想玩一下,怎么办呢?其实随便找几张图片就好啦!;P(我就是这样,呵呵!)
1.找15张图片(不一定要15张的,但最好是1080P的),按顺序命名,如10001.png、10002.png、1003.png。
2.把命名好的图片放到一个文件夹中,我这里命名为:part0
3.创建一个文档,名字为:desc.txt
4.在创建的文档中写入以下内容:
1920 1080 15
p 0 0 part0
这里简单说明一下:
1920 1080 15 //其实就是你图片的分辨率啦,15是指每秒播放帧数,这个受到机器的影响,一般开机CPU满负荷运行,开始的一段时间播放帧数会低于设定帧数,所以前一段的动画的设计需要考虑到这一点。(这里多谢网友maoguodong的纠正)
p 0 0 part0 //p代表标志符,0代表无限循环,0代表阶段间隔时间为0,part0代表对应的文件夹名
如果你想把开机动画分成两个阶段,可以分成两个文件夹存放,如命名为part1,然后在文档可以这样写:
1920 1080 15
p 1 0 part0
p 0 0 part1
这样,运行的时候会循环一次part0文件夹下的动画,再无限循环part1下的动画。
5.压缩:选中图片文件夹part0和desc.txt(提醒一下:windows下打包前将图片文件夹中的Thumbs.db删除),然后右键选择WINRAR的"添加到压缩文件"进入自定义压缩文件设置:压缩文件格式选择:ZIP,压缩方式选择:存储,名字为bootanimation.zip,然后点击确定即可。
6.放入系统,加入编译:
找一个确定会编译到的mk文件,比如device/rockchip/rk3288/rk3288.mk,把bootanimation.zip入进该文件所在目录中,在该文件添加以下语句:
PRODUCT_COPY_FILES += device/rockchip/rk3288/bootanimation.zip:system/media/bootanimation.zip
7.重新编译上层,把生成的固件烧入板子即可。

本人是初学者,在这里只是把自己玩过的东西做下笔记,顺便给大家共享一下,呵呵!
如有不对的地方,欢迎提出来!

暴走的阿Sai 发表于 2014-10-21 16:55:36

制作开机LOGO,只要是Linux都能实现,在Firefly上Ubuntu和Android系统都可以。开机动画就只能是Android了

leung先森 发表于 2014-10-21 17:35:45

学习了!!!这样可以定制自己喜欢的开机动画

buzzq 发表于 2014-10-22 21:16:18

mark 学习一下

zhoumushui 发表于 2014-10-23 10:30:42

{:2_31:}赞,之前都是用在线PS转图片格式的,没想到还可以用命令,学习了。

linjc 发表于 2014-10-23 10:40:56

zhoumushui 发表于 2014-10-23 10:30
赞,之前都是用在线PS转图片格式的,没想到还可以用命令,学习了。

把指令写成一个脚本更方便平时使用哦!:lol

schlin2999 发表于 2015-3-30 14:30:53

先烧了kernel.img,开机画面没变,再烧了boot.img,进不了系统。

linjc 发表于 2015-3-30 15:38:59

schlin2999 发表于 2015-3-30 14:30
先烧了kernel.img,开机画面没变,再烧了boot.img,进不了系统。

试一下把resource.img也烧一下吧,你的boot.img是多大的?

carlinluo 发表于 2015-3-30 18:35:14

linjc 发表于 2015-3-30 15:38
试一下把resource.img也烧一下吧,你的boot.img是多大的?

resource 里的logo.bmp firefly没有用到,这个是uboot logo,默认的貌似没有打开。

schlin2999 发表于 2015-3-31 11:13:07

更新了一下源码包,重新编译后再烧写整个镜,开机画面出来了,但一直处在动画状态
页: [1] 2 3 4 5 6 7 8 9
查看完整版本: 制作开机LOGO及开机动画