The specific modification method of Android splash screen _android

Source: Internet
Author: User
Tags imagemagick

Make the boot logo
Method One:
DRIVERS/VIDEO/LOGO/LOGO_LINUX_CLUT224.PPM is the default startup logo image, convert your logo image (PNG format) to PPM format, replace this file, and delete logo_linux_ clut224.c logo_linux_clut224.o files, recompiling
Specific method: NETPBM
#pngtopnm logo_linux_clut224.png > LOGO_LINUX_CLUT224.PNM
#pnmquant 224 LOGO_LINUX_CLUT224.PNM > LOGO_LINUX_CLUT224.PNM
#pnmtoplainpnm LOGO_LINUX_CLUT224.PNM > logo_linux_clut224.ppm
Note: First convert PNG to PNM format, but the core logo only supports 224 colors, the color needs to be converted to 224 colors, and finally PNM into PPM, the filename must be logo_linux_clut224.ppm.
Method Two:
Use RedHat9.0 's own picture-editing Tool GIMP (other distributions are installed themselves).
1. Change the color number to 224 (select the image-> Mode-> index once in GIMP.) As shown in the following figure).
2. Resize: Wide height is small two pixel, otherwise do not show.
3. Save as the PPM format, select ASCII in the pop-up dialog box, and then copy to the logo folder to replace the original file, while deleting the logo_linux_clut224.c logo_linux_clut224.o file.

The Android system boot animation consists of two parts:
Startup display of ANDROID text;
Android light-emitting Animation.
This article said that the boot animation is the first, the following start the text!
1. Make the current screen pixel picture (emulator defaults to 320*480)
Use PS to make a picture of 320*480, save the "Save as Web format", and then on the pop-up window, "preset" to select "PNG-24", Save as Android_logo.png
Note: It seems that only support png-24, the other format generated RLE files are not normal, interested you can verify again.
2. Convert a picture to RAW format
Use the ImageMagick from Linux with the Convert command, RAW format conversion, the command is:
Convert-depth 8 Android_logo.png Rgb:android_logo.raw
Note: Ubuntu 10.04 has installed the Imgagemagick tool by default, and if the current system is not installed, you can perform the following command installation:
sudo apt-get install ImageMagick
3. Convert raw format to RLE file
Need to use the Android compiled rgb2565 tool, under the Android/out/host/linux-x86/bin directory (Android is the current source directory), the conversion commands are as follows:
Rgb2565-rle < Android_logo.raw > Initlogo.rle
So far, the boot need to display the image has been done, is Initlogo.rle, note that the filename must be this, if you want to change the file name, you need to modify the macro in Android/system/core/init/init.h:
#define Init_image_file "/initlogo.rle"
============================================================================================
The following need to add Initlogo.rle to the Android file system
4. Locate the Ramdisk.img file (android/out/target/product/generic/ramdisk.img), change the file name to Ramdisk.img.gz, and then extract it using the following command:
Gunzip ramdisk.img.gz
After decompression get ramdisk.img, maybe someone to ask, how the filename changed back? In fact, using file ramdisk.img to look at it, you know:
Before decompression: Ramdisk.img:gzip compressed data, from Unix
After decompression: Ramdisk.img:ASCII cpio archive (SVR4 with no CRC)
On the topic, or on the right thing.
5. Extract files using Cpio:
Create a new temp directory:
mkdir Temp
CD Temp
Cpio-i-F. /ramdisk.img
6. Export File list:
Cpio-i-t-f. /ramdisk.img > List
Note: The list is a text file that stores the ramdisk.img file structure, and we need to add the Initlogo.rle line to this file, and the modified file is as follows:
Data
Default.prop
Dev
Init
Init.goldfish.rc
Init.rc
Initlogo.rle
Proc
Sbin
sbin/adbd
Sys
System

7. Generate Ramdisk.img
Cpio-o-H newc-o ramdisk.img < list
Note: Generate ramdisk.img files According to the description of the list file
8. Cover the Ramdisk.img (ANDROID-SDK-WINDOWS/PLATFORMS/ANDROID-2.1/IMAGES/RAMDISK.IMG) under the SDK directory with ramdisk.img, preferably back up first.
9. Start the simulator, you can see our own to do the boot interface.

--------------------------------------------------------------------------------------------------------------- ---

Boot third screen (Android animation)
After the successful compilation in the Android source root directory generated out directory,
Modify the framework-res.apk in the Android\out\target\product\sdkdemo\system\framework directory
Open in winrar format, replace 2 pictures in Assets\images

Boot second screen (Android word)
1, select the 320*480 resolution of the picture
2, convert the diagram to RAW, with advanced Batch converter tool can
3, the virtual machine Android\out\host\linux-x86\bin directory implementation
./rgb2565-rle <android_logo.raw> Initlogo.rle
4, will Initlogo.rle placed under the android\out\target\product\sdkdemo\root can be
If it is not placed, then the source init is displayed. C Init.c.bak.
5, make firmware
6, all the heavy burn

Boot first screen (Linux penguin pattern)
1, choose a PNG format of the picture, under Linux implementation:
# PNGTOPNM logo.png > LOGO_LINUX.PNM
# pnmquant 224 LOGO_LINUX.PNM > LOGO_LINUX_CLUT224.PNM
# PNMTOPLAINPNM LOGO_LINUX_CLUT224.PNM > logo_linux_clut224.ppm
Copy the generated PPM to the Drivers\video\logo directory
If you want to modify the menu configuration, you can perform make menuconfig in the kernel directory
into device Drivers
into Graphics Support
Enter Bootop logo
Enter standard 224-clor Linux logo optional Add pictures

U-boot Boot Logo Production method

In the U-boot LCD display and LCD command line terminal, there is a logo in the upper left corner, if it is Atmel chip, there will be Atmel logo, Samsung is Denx logo.
Some netizens send emails saying they want to change their company's logo, and if it is their own play, change to their favorite logo also cool AH. So today I have done the experiment, the simple modification method is summarized as follows:

--------------------------------------------------------------------------------
The placement path of a picture

All boot logos are placed under the/tools/logos, you only need to be your team for the corresponding logo replacement is good.

For s3c2440, you just need to replace denx.bmp with the logo you want.

For Atmel Chip, it is said to display Atmel logo, so replace that logo can.

But the logo you have to replace must be the same size, format, or you will have the consequences of u-boot use of downtime restart.

Second, the size of the standard picture


Different logo corresponding to different sizes, here s3c2440 corresponds to the 160*96 resolution of the BMP picture.

Third, the picture of the conversion script


Before making a picture, please confirm that the NETPBM Toolkit is installed on your Linux host. If it's Ubuntu, you can install it directly with a new one, and if it's a different release, you can download source code compilation at the NETPBM home page.

Cut the picture you want into a 160*96 jpg image, and then use the following script to deal with it:

#!/bin/sh
#install NETPBM
JPEGTOPNM $ | Ppmquant 31 | PPMTOBMP-BPP 8 > $

How to: (Script name) (JPG image name to be processed) (output file name)

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.