Movatterモバイル変換


[0]ホーム

URL:


XDA Forums
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use analternative browser.

[BOOTANIMATION] Android Oreo Bootanimation Concept

Search This thread
By:

Aurey24

Senior Member
Sep 15, 2014
130
33
Ann arbor
It's many frames, and bordering on "sluggish" as-is. Bumping it up to 60FPS (and doubling the number of frames) might cause things to lock-up.

Dealing with full 9:16 frames is tricky, especially with with a large quantity. I think for what's being done in my setup, 30FPS is "max".

Can you tell the difference between 30FPS and 60FPS?
Yeah I was thinking the same thing, it's harder but takes time. Also yeah u can tell the difference, at least with this animation
 
  • Like
Reactions:androcraze
Dhruv_Agarwal

Dhruv_Agarwal

Senior Member
Dec 31, 2016
234
169
Moradabad
Hey@TechBurner, Can you make this boot animation for 480p device. My phone's resolution is 480X854....
 
Last edited:

Sobhan Bhuyan

Senior Member
One prob
 

Attachments

  • Screenshot_2017-08-27-07-56-56.png
    Screenshot_2017-08-27-07-56-56.png
    145.8 KB · Views: 459
Last edited:

M!kô Crunch

New member
May 21, 2018
3
1
@TechBurner would you please make an Oreo bootanimation for 480p? I tried to install the 780p but its too large...please i will wait for your update... Thanks in advance😊 by the way this is my email: johnmichaeltan38@gmail.com you can reply me in this email
 
androcraze

androcraze

Senior Member
Jan 11, 2013
2,254
1,665
@TechBurner would you please make an Oreo bootanimation for 480p? I tried to install the 780p but its too large...please i will wait for your update... Thanks in advance by the way this is my email:johnmichaeltan38@gmail.com you can reply me in this email

What model phone or screen resolution?

Check in this post, towards the bottom:
https://xdaforums.com/showpost.php?p=53563830&postcount=3

Please let me know if the 480p version works.
 
Last edited:

M!kô Crunch

New member
May 21, 2018
3
1
What model phone or screen resolution?

Check in this post, towards the bottom:
https://xdaforums.com/showpost.php?p=53563830&postcount=3

Please let me know if the 480p version works.
It works thanks alot [emoji16][emoji106]

Sent from my [device_name] usingXDA-Developers Legacy app
 
  • Like
Reactions:androcraze
Edw590

Edw590

Senior Member
Jan 4, 2017
68
13
Wow! A beautiful, gorgeous animation.

I'll give you some general pointers, based-on my experiences with animations on the N5:

- For full-screen animations, I recommend frames that do not exceed dimensions of 720x1280 pixels. My N5 (and many others) lock-up with anything larger than that. You simply scale it from 720x1280 to 1080x1920 in the desc.txt. Maybe I'm blind, but I really can't tell the difference between 1080x1920, and 720x1280 scaled-to 1080x1920 ***ON A 5-INCH SCREEN***.

- I've had issues when the number of frames in folders. For non-looping folders, I recommend not exceeding 199 frames; for looping folders, I try keeping that value under 100. There are animations that get away with many more frames in a folder, but those animations have very small frame sizes. For full-screen animations, keep a tight reign on frame counts.

- Keep the fame image sizes small. I try and target under 120KB per image, and much less if I can. You can save as JPG (and reduce quality), reduce the image sizes by scaling or cropping, or reduce the image palette (number of image colors).



I'll address your questions:

1. Smaller zip:

Scale the images: I scaled your animation from 1080x1920 to 720x1280, and the zip size decreased from 21MB to 12MB.

Optimize: I post-processed the scaled images further with "optipng" (in lossless mode), and it further reduced the total archive from 12MB to 10MB. Optipng looks at the palette, and determines how best to save the image.

Reduce the palette: Your images are RGB/24-bit. You could reduce the frames to 8-bit (256 colors), but you'll run into potential issues with banding of gradients. Optipng does essentially the same thing in a "nicer" way.

Scaling the images and optimizing them, while keeping them as PNG files is probably the best route.

2. Making part2 run on all devices:

Try reducing the number of frames in that folder, or shorten that segment of the animation. 227 frames is too many.

Your "part2" folder is the largest part of the animation. With the "c's" in the desc.txt, the last folder is the "close-out", or conclusion to the animation. The "c" identifiers tell the phone "do this until you hit this milestone, then do this". That last folder should be brief; I'm usually seeing it used after coming out of a long loop, with a quick transition from the loop to a logo of some type. The phone also expects it to be short, or it would stay on the loop longer. The 720p phone might be thinking "I'm not waiting for this final folder to complete; I'm ready to go to the lockscreen NOW". At 60 FPS and 212 frames, that's just under 4 seconds; perhaps that should be 2 seconds or so. Dunno. You'll have to play.

3. Making it run on 720p devices:

Could be solved by #2 above, or another solution. I'm looking at your desc.txt, and I don't think it's right.

Code:
1080 1920 60c 1 0 part0 #FFFFFF -1c 1 0 part1 #FFFFFF -1c 1 0 part2 #FFFFFF -1

Let's look at this.

First, get rid of the "#FFFFFF -1" on every line. You're running a full-screen animation, yet you're pulling-in a white background. Not needed, unless you're letter-boxing (cropping) the animation.

Your "loop" is folder "part1", yet you're not looping it. "c 1 0 part1" should be "c 0 0 part1". If there were "p's" instead of "c's", a "p 0 0 part1" would never get to the next folder; that "c" tells it to "continue looping until you hit the next event"

I think you're desc.txt should look like:
Code:
1080 1920 60c 1 0 part0c 0 0 part1c 1 0 part2

4. Porting it for 1440p devices:

All you need to do change the desc.txt line from "1080 1920 60" to "1440 2560 60". That's it. Either the 720x1280 or 1080x1920 frames will work fine. I'd still probably use the smaller 720p frames, but the 1080p frames will probably work. Again, I question whether anyone can tell the difference between 1440p frames and 1080p frames (scaled to 1440p) on a 6-inch screen.

5. Make the animations run at 30 fps:

Delete every other frame (odds or evens) in the animation, and change "1080 1920 60" to "1080 1920 30". Easy.;)

Some things to look at:

- Your loop, "part1" is very short, considering it's probably the longest thing that folks will see while booting. I'd love to see more of the pizazz you have in folder "part2", frames 48-77, incorporated into folder "part1"

- In "part2" frames 257-274 are identical. That's 18 frames. Removes frames 258-274, and in the desc.txt, you can change the last line from "c 1 0 part2" to "c 1 17 part2"; that will run the frames through once, then hold the last frame for 17 frames duration. And you get to kill 17 frames.
Hi! Do you know what the -1's mean there?
 
androcraze

androcraze

Senior Member
Jan 11, 2013
2,254
1,665
Hi! Do you know what the -1's mean there?
It designates the position of a screen clock, if there is one; 1 pixel from the right. a positive value would indicate the value of the pixels from the left.

I've left it in animations "just because". If it were omitted, most people won't see a difference (unless running a clock on their boot animation, but who does that?).
 
  • Like
Reactions:Edw590
Edw590

Edw590

Senior Member
Jan 4, 2017
68
13
It designates the position of a screen clock, if there is one; 1 pixel from the right. a positive value would indicate the value of the pixels from the left.

I've left it in animations "just because". If it were omitted, most people won't see a difference (unless running a clock on their boot animation, but who does that?).
Thank you for the reply! But now I'm curious haha, how can I enable such clock? Or all I have to do is put a pixel value that shows it?
 
androcraze

androcraze

Senior Member
Jan 11, 2013
2,254
1,665
Thank you for the reply! But now I'm curious haha, how can I enable such clock? Or all I have to do is put a pixel value that shows it?
Good question, and I have another answer.

This link:

Specifies that the clock parameters are for WATCHES. I'm guessing that non-watch devices aren't capable.

Now that makes no sense, as the official android animations that were NEVER intended to run on watches still include the "-1" flags.

Maybe it was a planned feature for phones that never came to fruition.

EDIT: I'm seeing reference to a "clock_font.png" file that would contain clock fonts/glyphs. I've never seen or played with such a file. My guess is that you'd have to play with an existing png file.
 
  • Like
Reactions:Edw590
Edw590

Edw590

Senior Member
Jan 4, 2017
68
13
Good question, and I have another answer.

This link:

Specifies that the clock parameters are for WATCHES. I'm guessing that non-watch devices aren't capable.

Now that makes no sense, as the official android animations that were NEVER intended to run on watches still include the "-1" flags.

Maybe it was a planned feature for phones that never came to fruition.

EDIT: I'm seeing reference to a "clock_font.png" file that would contain clock fonts/glyphs. I've never seen or played with such a file. My guess is that you'd have to play with an existing png file.
Wow, thank you!!! A complete and official tutorial on this!!! I'll be playing with this hahaha. I'll have the clock show up and the percentage too!! Really cool to be able to have dynamic stuff on this!!!

Btw, here are the 2 pictures the page speaks about (love Google, especially putting words with quotes, which usually helps a lot haha):https://android.googlesource.com/pl...e/+/refs/heads/master/core/res/assets/images/.
 
Edw590

Edw590

Senior Member
Jan 4, 2017
68
13
Here a little research of mine on some things regarding that document in case it might be interesting for anyone (who didn't already know).

When each thing was introduced:
- p type
--> Thu Oct 01 03:14:30 2009 -0700 (
https://android.googlesource.com/platform/frameworks/base/+/a8826d67097b12cf9d6b14a7e32c0862f17b189a). Before this, no idea how it was called (doesn't matter much either, I guess - 2009 xD).
- c type --> Tue Jun 19 17:38:43 2012 -0700 (https://android.googlesource.com/platform/frameworks/base/+/d3782b26b2026e60a8e0d4b967a156369f2a46f8)
- f type --> Mon Oct 19 14:33:17 2020 +0200 (https://android.googlesource.com/platform/frameworks/base/+/eafcb9978615149b116ce695374d849cff011c1e)

- Clock --> Mon Mar 07 16:15:31 2016 -0800 (https://android.googlesource.com/platform/frameworks/base/+/a704b7d3444d218fe3b3f977fd242d2cd626058e). Note: it's an older version, on which you can only give the Y coordinate. If you want more recent, good look for yourself xD. The newest version doesn't seem to work here on Oreo 8.1. So I'll not be using it (want to support from Android 4.0.3 to the newest versions).

- Progress --> Mon Jan 11 13:56:21 2021 +0000 (https://android.googlesource.com/platform/frameworks/base/+/bbb00e78ef87e45ffb25b9347c648a04fac00b6e). Seems to have been an introduction on Pixel 5 with Android 11 (video from XDA): [in the end]. To enable the percentage, just write a 1 on [PROGRESS]. Example: "1080 1920 30 1". That's according with their code. They'll check an integer, and if it's not zero, the progress will be displayed. If you put a character should work too (a character is more or less an integer), no idea of some word. Just put a 1 and it will work (if it's supported).

From the code,all seems to be backward compatible. So If you put something on the file that it's not supported on your phone, it should still work but with some old behavior (like any letter different than c type will default to p - except if f is available on your device), or completely ignore (like the progress thing and clock coordinates).

Additional notes:

- Put the 2 PNGs I linked above in the main folder. If you put them in each part folder, they'll be like frames and will be played on the animation (I did this, so I guess more people might haha) - and from their code, the files will actually be loaded from the main ZIP folder.

- A note that will be useful in my case for my app to dynamically adjust the resolution of the pictures based on the phone's screen resolution: you can have multiple spaces on all the lines. You can have for example "1080 1920 30 " and it will work (just checked and it does work on all lines, as I've put 10 spaces for each component - and it should, from the code). So in the app, I can just replace the spaces with numbers if I need to change the component values (don't need to create infinite ZIPs for various phones then). Really thank you for the link you provided up there@androcraze!!

- If you want to make an animation to play after the device boot is finished, put something like this in the last line:
The phone will always play all c type animations, but the infinite p type will be interrupted. So next animation is a c type, which always is to be played.

- Always put a blank line at the end of the file... In my phone, the last folder wasn't playing because I removed the last blank line (??? wtf).

Mentioned video:
 
Last edited:
  • Like
Reactions:androcraze

Top Liked Posts

  • There are no posts matching your filters.
  • 12
    Hello Guys , I was very excited by android 8.0 and i also love oreos!
    So long story short , I made this bootanimation for my device that looks like Android Oreo boot animation.

    I tested this on my Moto G4 plus and my friend tested it on Nexus 5 and it worked great for him.
    I dont have any other device to try so i want you guys to give it a go and let me know how it works!

    So the problem is that i am not very good at making bootanimation , i know how to design but with the bootanimations i am new. So i thought you guys could help me with the animation and how to make it run smoothly on all devices.
    I dont know much about the desc file also i just tried to make one using the default android bootanim and it worked.

    These are the things that i need help with
    1. Making the size of the zip small
    2. Making such that part2 runs full even if the device is fully booted , i did that for the 1080p one and it worked but not for the 720p one.
    3. Making the bootanimation for 720p devices , i have resized it and it plays also but the point 2. is not working. i.e. the part2 sometimes plays fully sometimes doesnt.
    4. Porting it for 1440p devices, I will give the resources (the png files and the zip) and if someone can port it , it would be awesome!:)
    5. Make the animations run at 30 fps .Right now i make the animations at 20fps and run them at 60 to make them look smooth.

    It would be really helpful if you guys can help me with the process and i will credit you in the video and at the end of this thread also:)
    Cheers
    Here is the Video :https://youtu.be/fNCT-oiepCw
    0pxoPG1.jpg


    Download :

    1080p :http://www.mediafire.com/file/9f5z9ffp1a7b4m5/bootanimation.zip
    720p :http://www.mediafire.com/file/vo74la7eamfg41w/bootanimation.zip

    Let me know what you guys think of the Bootanimation any Suggestions are welcome.
    6
    Wow! A beautiful, gorgeous animation.

    I'll give you some general pointers, based-on my experiences with animations on the N5:

    - For full-screen animations, I recommend frames that do not exceed dimensions of 720x1280 pixels. My N5 (and many others) lock-up with anything larger than that. You simply scale it from 720x1280 to 1080x1920 in the desc.txt. Maybe I'm blind, but I really can't tell the difference between 1080x1920, and 720x1280 scaled-to 1080x1920 ***ON A 5-INCH SCREEN***.

    - I've had issues when the number of frames in folders. For non-looping folders, I recommend not exceeding 199 frames; for looping folders, I try keeping that value under 100. There are animations that get away with many more frames in a folder, but those animations have very small frame sizes. For full-screen animations, keep a tight reign on frame counts.

    - Keep the fame image sizes small. I try and target under 120KB per image, and much less if I can. You can save as JPG (and reduce quality), reduce the image sizes by scaling or cropping, or reduce the image palette (number of image colors).

    These are the things that i need help with
    1. Making the size of the zip small
    2. Making such that part2 runs full even if the device is fully booted , i did that for the 1080p one and it worked but not for the 720p one.
    3. Making the bootanimation for 720p devices , i have resized it and it plays also but the point 2. is not working. i.e. the part2 sometimes plays fully sometimes doesnt.
    4. Porting it for 1440p devices, I will give the resources (the png files and the zip) and if someone can port it , it would be awesome!:)
    5. Make the animations run at 30 fps .Right now i make the animations at 20fps and run them at 60 to make them look smooth.

    I'll address your questions:

    1. Smaller zip:

    Scale the images: I scaled your animation from 1080x1920 to 720x1280, and the zip size decreased from 21MB to 12MB.

    Optimize: I post-processed the scaled images further with "optipng" (in lossless mode), and it further reduced the total archive from 12MB to 10MB. Optipng looks at the palette, and determines how best to save the image.

    Reduce the palette: Your images are RGB/24-bit. You could reduce the frames to 8-bit (256 colors), but you'll run into potential issues with banding of gradients. Optipng does essentially the same thing in a "nicer" way.

    Scaling the images and optimizing them, while keeping them as PNG files is probably the best route.

    2. Making part2 run on all devices:

    Try reducing the number of frames in that folder, or shorten that segment of the animation. 227 frames is too many.

    Your "part2" folder is the largest part of the animation. With the "c's" in the desc.txt, the last folder is the "close-out", or conclusion to the animation. The "c" identifiers tell the phone "do this until you hit this milestone, then do this". That last folder should be brief; I'm usually seeing it used after coming out of a long loop, with a quick transition from the loop to a logo of some type. The phone also expects it to be short, or it would stay on the loop longer. The 720p phone might be thinking "I'm not waiting for this final folder to complete; I'm ready to go to the lockscreen NOW". At 60 FPS and 212 frames, that's just under 4 seconds; perhaps that should be 2 seconds or so. Dunno. You'll have to play.

    3. Making it run on 720p devices:

    Could be solved by #2 above, or another solution. I'm looking at your desc.txt, and I don't think it's right.

    Code:
    1080 1920 60c 1 0 part0 #FFFFFF -1c 1 0 part1 #FFFFFF -1c 1 0 part2 #FFFFFF -1

    Let's look at this.

    First, get rid of the "#FFFFFF -1" on every line. You're running a full-screen animation, yet you're pulling-in a white background. Not needed, unless you're letter-boxing (cropping) the animation.

    Your "loop" is folder "part1", yet you're not looping it. "c 1 0 part1" should be "c 0 0 part1". If there were "p's" instead of "c's", a "p 0 0 part1" would never get to the next folder; that "c" tells it to "continue looping until you hit the next event"

    I think you're desc.txt should look like:
    Code:
    1080 1920 60c 1 0 part0c 0 0 part1c 1 0 part2

    4. Porting it for 1440p devices:

    All you need to do change the desc.txt line from "1080 1920 60" to "1440 2560 60". That's it. Either the 720x1280 or 1080x1920 frames will work fine. I'd still probably use the smaller 720p frames, but the 1080p frames will probably work. Again, I question whether anyone can tell the difference between 1440p frames and 1080p frames (scaled to 1440p) on a 6-inch screen.

    5. Make the animations run at 30 fps:

    Delete every other frame (odds or evens) in the animation, and change "1080 1920 60" to "1080 1920 30". Easy.;)

    Some things to look at:

    - Your loop, "part1" is very short, considering it's probably the longest thing that folks will see while booting. I'd love to see more of the pizazz you have in folder "part2", frames 48-77, incorporated into folder "part1"

    - In "part2" frames 257-274 are identical. That's 18 frames. Removes frames 258-274, and in the desc.txt, you can change the last line from "c 1 0 part2" to "c 1 17 part2"; that will run the frames through once, then hold the last frame for 17 frames duration. And you get to kill 17 frames.
    4
    I've tweaked the animation a bit. It's staged, with a definite loop; the Google logo will now appear right before the lock screen.

    Let me know what you think:

    http://www.mediafire.com/file/93nbk...-30fps-Androcraze-bootanimation-flashable.zip
    2
    I ported it for us but idk how long u guy's ROM takes to boot, this is my first time lol it's amazing what Google can do if u know what to look for, go easy on me and try it if u want:

    https://drive.google.com/file/d/0B2IvRFYpm8ziMmdhYnZheWN0YlE/view?usp=drivesdk
    2
    Woah guys no, u don't flash the zip, use a root file explorer or whatever to install the animation. U simply
    download the bootanimation.zip copy it

    goto /system/media

    Make sure the system is mounted as rw

    find the original animation and rename it to boot animation.zip.bak

    Paste the downloaded bootanimation.zip there

    Change the permissions to 644 rw-r-r
    Your the beeeeeeest.;)

[8]ページ先頭

©2009-2025 Movatter.jp