替换开机画面

一、修改linux 内核启动logo

系统环境:ubuntu 10.04 +x86
    $ sudo apt-get install netpbm
    $ pngtopnm loongson.png > loongson.pnm
    说明:用来转换的图片必须为 png 格式,否则会有如下提示:
    pngtopnm: input file not a PNG file
    $ pnmquant 224 loongson.pnm > loongson224.pnm
    pnmcolormap: making histogram…
    pnmcolormap: 5854 colors found
    pnmcolormap: choosing 224 colors…
    pnmremap: 222 colors found in colormap
    注意:此处 pnmquant 必须输出到另一个不同名的文件,否则会出现如下错误提示
    eg:$ pnmquant 224 loongson.pnm > loongson.pnm
    pnmcolormap: EOF / read error reading magic number
    pnmcolormap failed, rc=256
    $ pnmtoplainpnm loongson224.pnm > loongson224.ppm
    然后用转换好的 loongson224.ppm 替换 kernel
    /drivers/video/logo/logo_linux_clut224.ppm(最好先做好备份)
    ,然后删除同一目
    录下的 logo_linux_clut224.c 文件,重新编译内核即可
    $ cd /home/work/kenrel/linux26_3210/drivers/video/logo
    $ mv logo_linux_clut224.ppm{,-bk}
    $ cp /home/loongson/Dowload/loongson224.ppm ./
    $ mv loongson224.ppm logo_linux_clut224.ppm
    $ rm logo_linux_clut224.c
    $ cd ///
    $ make menuconfig  //在内核里面选上logo 支持
    Device Drivers  --->
    [*] Graphics support  --->
    [*] Bootup logo  --->
    [*]   Standard black and white Linux logo
    [*]   Standard 16-color Linux logo
    [*]   Standard 224-color Linux logo
    $ make


二、修改android的initlogo.rle

查看代码可发现,在system/core/init/init.c [load_565rle_image] --> logo.c中 ,显示完毕initlogo.rle之后作了 unlink 操作。该操作对于android 默认的只读型system.img 是没问题,, 但对于自定义的yaffs 或者 ubi形式的可读写型的system.img时就有问题了。会造成将initlogo.rle删除,下次启动时读取不到该文件。可以通过注释掉logo.c的load_565rle_image()中的unlink(fn)语句来规避该问题。

 

另外,对于制作开机logo,替换机器人,需要制作和显示屏幕分辨率相同大小的图片。

如下所示:

 

 

1. 制作当前屏幕像素的图片(模拟器默认为320*480)

 使用PS制作一张320*480的图片,保存时选“保存为 Web 所用格式”,然后在弹开的窗口上,“预设”项选择“PNG-24”,保存为android_logo.png

 注:好像只支持png-24,其他格式生成的rle文件显示不正常,有兴趣大家可以再验证一下。

 

2. 将图片转换为raw格式

 使用linux下的ImageMagick自带的convert命令,进行raw格式转换,命令为:

  convert -depth 8 android_logo.png rgb:android_logo.raw

 注:ubuntu 10.04 默认已经安装ImgageMagick工具,如果当前系统没有安装,可以执行下面的命令安装:

  sudo apt-get install imagemagick

 

3. 将raw格式转化为rle文件

 需要用到android编译后的rgb2565工具,在android/out/host/linux-x86/bin目录下(android为当前源码所在目录),转换命令如下:

 rgb2565 -rle < android_logo.raw > initlogo.rle

到目前为止,启动需要显示的图像已经做好了,就是initlogo.rle,注意文件名必须是这个,如果想改文件名,需要修改android/system/core/init/init.h中的宏:

 #define INIT_IMAGE_FILE "/initlogo.rle" 


三、修改开机动画(boot animation)

Android开机动画有两种修改方法,android 2.0及之后,使用bootanimation程序显示开机画面,如需修改开机画面,不用修改代码,只需按格式要求做bootanimation.zip包,放在系统的/system/media目录中,或/data/local目录中即可,两个目录下都存在时,优先使用/data/local下的。android 2.0之前,则需要修改源码。

 开机画面主要是由一个zip格式的压缩包bootanimation.zip组成,压缩包里面包含数张png格式的图片,还有一个desc.txt的文本文档,开机时按desc.txt里面的指令,屏幕上会按文件名称顺序连续的播放一张张的图片,就像播放原始的胶带影片一样,形成动画。
(1)动画图片制作。由于缺少横屏动画的源文件,本例采取的是使用屏幕录像软件录制android模拟器中的横屏开机动画(如屏幕录像专家V2011),然后在媒体播放器中捕获每一帧(如KMPlayer),保存为PNG格式(JPG也可以)的图片。这两个软件的使用方法比较简单,可参考网上的使用说明。  根据个人喜好,如果替换成别的动画方法也类似,如用flash制作好自己想要的动画,按帧导出,然后按数字顺序给文件编号就可以了。           
图片按照数字编号后统一放在一个文件夹下,本例中为part0。如下图:

android平台默认竖屏扫描图片,所以在这里需要把图片顺时针旋转一次。                                                                                                     

(2)动画属性描述文件。desc.txt是一个保存形式为ANSI格式的文件,用于设置这个动画像素(大小),帧数,闪烁次数,文件夹名称等。内容如下:
480 427 30
p 1 0 part0
p 0 0 part1

480 427 30  ---这里的480代表图片的像素(大小)宽度,427代表图片的像素(大小)高度,30代表帧数;
 p 1 0 part0 ---这里的p代表标志符,1代表循环次数为1次,0代表阶段间隔时间为0,part0代表对应的文件夹名,为第一阶段动画图片目录;
 p 0 0 part1---这里的p代表标志符,0代表本阶段无限循环,0代表阶段间隔时间为0,part1代表对应的文件夹名,为第二阶段动画图片目录;

阶段切换间隔时间:单位是一个帧的持续时间,比如帧数是30,那么帧的持续时间就是1秒/30 = 33.3毫秒。阶段切换间隔时间期间开机动画进程进入休眠,把CPU时间让给初始化系统使用。也就是间隔长启动会快,但会影响动画效果。
    part0和part1文件夹内包含的是两个动画的系列图片,图片为PNG格式。系列图片文件的加载刷新按文件名的名称排序。必须注意的是,在属性描述完成后要有换行符(回车跳入下一行),已确保指令都已完成。
(3)图片和desc.txt文档都准备好后,开始打包为bootanimation.zip(打包完成后应该打开压缩包就能看见desc.txt文件,注意不要多了一级bootanimatio目录)。选中图片文件夹part0和desc.txt(提醒一下:打包前将图片文件夹中的Thumbs.db删除),然后右键选择WINRAR的"添加到压缩文件"进入自定义压缩文件设置:压缩文件格式选择:ZIP,压缩方式选择:存储,然后点击确定即可。  


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 机顶盒的开机logo是指机顶盒开机时显示在电视屏幕上的品牌标识或者动画图标。机顶盒厂商通常会提供默认的开机logo,但用户也可以自行更换开机logo。 要替换机顶盒的开机logo,一般有以下几个步骤: 1. 确认机顶盒型号和厂商:不同的机顶盒厂商和型号可能有不同的开机logo更换方法,因此首先要确定自己的机顶盒型号和厂商。 2. 下载或制作新的开机logo:用户可以在互联网上搜索并下载适用于自己机顶盒的新开机logo,或者使用专业软件制作自己的开机logo。确保下载或制作的开机logo符合机顶盒的显示规格。 3. 连接电视和机顶盒:将机顶盒和电视通过HDMI线或AV线连接好,并确保机顶盒和电视都处于开机状态。 4. 进入机顶盒设置界面:通过遥控器上的菜单、设置或系统按键,进入机顶盒的设置界面。 5. 寻找开机logo设置选项:在机顶盒的设置界面中,找到类似于“开机设置”、“个性化设置”或者“LOGO设置”等选项,进入开机logo的设置界面。 6. 选择或导入新的开机logo:在开机logo设置界面中,选择“更换”、“导入”等选项,并找到存储新开机logo的位置,将其选中或导入。 7. 确认并保存更改:根据机顶盒的提示,确认更换开机logo的操作,并保存更改。 8. 重新启动机顶盒:完成更换开机logo的设置后,重新启动机顶盒,新的开机logo应该会显示在电视屏幕上。 需要注意的是,不同机顶盒可能具有不同的设置界面和菜单选项,更换开机logo的具体步骤可能会有所不同。如果遇到困难,建议查阅机顶盒的用户手册或者联系机顶盒厂商的客服获得更详细的指导。 ### 回答2: 机顶盒的开机logo是指在机顶盒开机时显示在屏幕上的品牌标志或欢迎画面替换机顶盒的开机logo其实是一个比较简单的操作。 首先,我们需要一台可以修改机顶盒系统的电脑或笔记本电脑,并安装相关的软件。一般来说,机顶盒厂商会提供相应的固件升级工具或者烧录软件,我们可以通过这些工具来修改机顶盒的开机logo。 其次,我们需要找到一个我们想要替换开机logo图片。这个图片可以是我们自己设计的,也可以从互联网上下载。无论是哪种方式,我们都需要确保图片的大小和分辨率与机顶盒显示的屏幕匹配,以免出现拉伸或者压缩的情况。 然后,我们将机顶盒连接到电脑上。有些机顶盒可以通过USB线直接连接到电脑,而有些机顶盒则需要通过串口线连接。具体的连接方式可以查看机顶盒的说明书或者询问厂商。 接下来,我们打开相应的固件升级工具或者烧录软件,将机顶盒识别并连接到电脑上。在软件的界面上会有相应的选项,我们需要选择替换开机logo的功能,并选择我们想要替换的图片。 最后,点击开始按钮,软件会开始将开机logo图片写入到机顶盒的系统中。这个过程可能需要一些时间,我们需要耐心等待。等到软件提示成功后,我们可以重新启动机顶盒,就能看到新的开机logo了。 需要注意的是,这个操作可能存在一定的风险,如果操作不当可能会导致机顶盒系统崩溃或者无法正常启动。所以,在进行这个操作之前,建议事先备份好机顶盒的系统固件,以免造成不必要的损失。 ### 回答3: 机顶盒替换开机logo是指用户可以自行更换机顶盒开机时显示的logo图标。一般来说,机顶盒的开机logo是由制造商提前设置好的,无法更改。但是有些机顶盒提供了自定义开机logo的功能,用户可以通过一些特定的操作或者设置来替换默认的logo。 具体操作方式可能有所不同,但通常可以通过以下步骤来实现: 1. 找到机顶盒设置菜单。这个通常是在机顶盒的主页或者设置页面上,可以通过遥控器操作来找到。 2. 在设置菜单中找到“个性化”或者“外观设置”等选项。不同机顶盒的名称可能有所不同,但一般会有类似的功能选项。 3. 进入个性化设置页面后,找到“开机logo”或者“启动画面”等选项。点击进入。 4. 在开机logo设置页面,通常会有默认的logo图标以及替换选项。 5. 用户可以通过U盘或者其他外部存储设备导入自己喜欢的logo图标。一般来说,机顶盒支持的logo格式有一定要求,需要使用特定的图片文件格式(如png、jpg等)和分辨率大小。 6. 选择替换选项后,按照操作提示将U盘或者存储设备连接到机顶盒,选择相应的logo图标进行导入。 7. 完成导入后,确认设置并保存。然后重新启动机顶盒,新的logo将会在开机时显示。 需要注意的是,机顶盒是否支持替换开机logo的功能主要取决于制造商的设计和软件支持。并且对于普通用户来说,替换开机logo可能需要一定的技术操作和了解。如果不确定如何操作或者机顶盒不支持该功能,建议咨询相关机顶盒品牌的技术支持或者专业人士的帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值