tiny4412开机动画、开机界面的定制 【原创】

关键词:Android  linux 开机logo 开机动画 

平台信息:
内核:linux3.0.68 
系统:android/android5.1
平台:tiny4412

作者:庄泽彬(欢迎转载,请注明作者)

邮箱:[email protected]

摘要:最近晚上回到宿舍有点无聊,搞一下打发时间,如有不对之处欢迎指点。

一、

1、首先讲解一下如何修改Android系统的开机的第一幅logo

首先要让内核支持开机显示Logo:

make menuconfig选中这三项

2、首先我们要明白的一点就是:内核镜像无法存储图片格式的文件,只能将图片转化为数组,然后将数组编译进内核 所以按照相应的工具。

  2.1 sudo apt-get install netpbm 转化成ppm格式图片所需要的工具

  2.2 sudo  apt-get install imagemagick 将bmp格式的图片转化成png以及调整图片大小的工具。

  2.3 现在开始动手准备一张png格式的图片。 

0、convert -resize 800x480 logo.png logo-800-480.png       //根据屏幕的大小调整,我购买的开发板屏幕的大小为800*480

1、pngtopnm logo.png > logo_linux.pnm                      //转成pnm格式 

2、pnmquant 224 logo_linux.pnm > logo_linux_clut224_formal.pnm    //转成224格式的图片

3、pnmtoplainpnm logo_linux_clut224_formal.pnm > logo_linux_clut224.ppm   //转成ppm格式 放到

  2.4 我们在内核的make menuconfig当中添加一个选项当选中的时候才编译自己想要的图片进内核

     2.4.1 重命名转换之后的图片,cp logo_linux_clut224.ppm logo_zzb_clut224.ppm

   2.4.2 拷贝到对应的目录:cp /home/book/my_test/logo/logo-nexll/logo_zzb_clut224.ppm   /work/linux-3.0.86/drivers/video/logo   要根据自己的linux源码目录去拷贝.

   2.4.3 修改driver/video/logo/目录下的Makefile添加如下内容

    obj-$(CONFIG_LOGO_ZZB_CLUT224)          += logo_zzb_clut224.o

   2.4.4 修改driver/video/logo/目录下的Kconfig添加如下内核 

config LOGO_ZZB_CLUT224
        bool "ZhuangZeBin 224-color Linux logo"
        default n

    2.4.5 修改修改driver/video/logo/目录下的logo.c文件添加如下内容

70 #ifdef CONFIG_LOGO_ZZB_CLUT224
71                 /* Generic Linux logo */
72                 logo = &logo_zzb_clut224;
73 #endif

  2.4.6 修改修改vim include/linux/linux_logo.h文件添加如下内容

          extern const struct linux_logo logo_zzb_clut224;

  2.4.7 重新配置内核

  2.4.8 重新编译内核make zImage -j2

       2.4.9 实验结果:现在搞定了开机的第一幅图片

  

3、对于bmp格式的图片修改的方式跟上面的方式一样只是对图片的处理多了一步,在开始进行上面操作的时候先执行 convert logo.bmp logo_linux.png 将图片的格式进行转换,转换成png格式。后面的操作跟前面的一模一样。

附上一张对bmp图片图片处理之后tiny4412开发板显示的结果:

时间: 2024-10-13 04:05:41

tiny4412开机动画、开机界面的定制 【原创】的相关文章

Android系统的定制---定制系统开机动画

4.3定制Android平台系统 通常产品厂商在拿到Android源码后会在Android源码基础上进行定制修改,以匹配适应自己的产品,从本节开始,我们从最原始的Android源码系统里一步一步定制出自己的Android系统.本节主要内容包含:根据Android源码,添加新产品编译项,定制系统启动界面和文字,定制系统启动动画和声音,定制系统桌面. 4.3.1添加新产品编译项 Android系统的源代码是一个逻辑结构非常独立工程,在一套Android源码中可以编译出多个产品映像,在需要编译某一个产

定制android系统的开机动画

动画分为: [1]kernel启动的画面 使用gimp工具将一张png格式的图片,制作为ppm格式,进行保存.文件名为logo_linux_clut224.ppm. 最后将ppm图片复制到kernelSrc/driver/video/logo/下. "图像"-->"模式"-->索引-->224 "文件"-->"export As" -->"文件类型"-->ppm [2]a

开机logo以及两种修改开机动画方法

Android开机画面总共有三屏 一.第一屏:开机logo 1.选张png格式的图片,在Linux任意下执行(安装工具): sudo apt-get install pnmtoplainpm 2.在所要定制logo的pngtopnm logo.png目录执行(转换成pnm格式): pngtopnm logo.png > logo_linux.pnm 3.再执行(转化成224的pnm图片): pnmquant 224 logo_linux.pnm > logo_linux_clut224_for

kernel logo到开机动画之间闪现黑屏(android 5.X)

在BootAnimation开始绘图之前,会先做一次clear screen的动作,避免出现前面的图干扰到BootAnimation的显示. 通过check main_log先确认播放开机动画是哪个function,在对应function删除clear screen的动作的对应代码. /frameworks/base/cmds/bootanimation/BootAnimation.cpp 450bool BootAnimation::android() 451{ 452 initTexture

开机动画 看图学Android---Android 开发实例教程五

Android实例图解教程目录 http://blog.csdn.net/wyx100/article/details/45061407 在<开发一个新的android界面.界面跳转 看图学Android---Android 开发实例教程三.四>基础完成开机动画,开机界面的图片,在5.5秒内逐渐消失,显示主界面. 只修改StartActivity.java中代码以下部分 StartActivity.java源代码 package com.example.helloword; import an

Android5.1开机LOGO与开机动画【转】

本文转载自:http://blog.csdn.net/u014770862/article/details/52624627 android5.1中,开机LOGO部分和之前版本的并不相同,主要区别在于Android LOGO显示部分.此博客所讲之处若有错误,敬请原谅,谢谢! 开机LOGO一般有两种:静态的和动态的,android开机时共有三种LOGO(5.1之前可能算是4种吧). 1. uboot显示 2. kernel显示 3. android开机动画 一般情况下将前两幅图做成一样的,第三个就

Android 开机动画修改

Android系统的手机开机动画自己可以定制,具体做法: Eclipse>DDMS视图下找到system>media>bootanimation.zip part0 part1两个文件夹分别是两个阶段的动画,有些手机只有part0文件,里面放的全是图片(帧动画替换) desc.txt内容:480 800 20 p 1 5 part0 480: 图片宽度 800: 图片高度 最好是手机屏幕大小适配 p:       标识符 1:     动画循环次数 5:     阶段切换时间间隔 par

设置安卓开机动画、开机logo

我们要改动的是system>media目录下的bootanimation.zip(手机开机动画)这个文件 先来讲讲这个文件结构:该zip解压后得到两个文件, 第一个文件夹存放了开机时播放的图片(图为佳域G3原厂的动画图片包),见下图: 图片编号001,002,.......010这些是用来控制图片播放顺序的 .第二个 desc. txt的文本文档存放的数据和文字用来控制播放图片的速度(帧速)和播放方式,见下图: 下面讲解这些文字数据的含义:720表示图片像素宽为720像素点 1280表示图片高为

android开机动画启动流程

从android的Surface Flinger服务启动分析知道,开机动画是在SurfaceFlinger实例通过调用startBootAnim()启动的. 下面我们就一起学习BootAnim是如何启动和结束的,我精读代码前都喜欢先描出框架图,以此图为基础再去研读会达到事半功倍的效果.好吧,直接上图. 内核起来后会启动第一个进程,即init进程. init进程会根据init.rc配置启动surfaceflinger进程. service surfaceflinger /system/bin/su