Amino supports the ability to customize the boot animation screen via our online device management platform (Engage) and can be applied on a group basis (so you can create different groups of STBs to implement different boot animations if required)
How to create a compliant Boot Animation
First, there is a need to create the boot animation files following Google's guidelines.
To customize the boot animation, you should be a Google device partner and have access to their resources, you can then access and modify the "reference bootanimation.zip" with the following:
- Unzip bootanimation.zip.
- Add new top level folders. These folders represent sections of the boot animation. Each folder has a series of PNGs arranged alphabetically. Each folder can have at most 120 frames.
Warning: Putting more than 120 into the folder can cause reboot loop crashes!
- Edit desc.txt. The format is as follows:
- The first line represents the width and height in pixels followed by the frames per second: 1080 720 30. You should keep this number at 30 but modify the size to match the size of your device, if desired.
- Each next line represents a section of the boot animation:
c 1 0 part1
- The first letter is “c” or “p”. “c” means play until complete, which only matters for a loop. “p” means play once.
- The second number is how many times to play the animation. This must be > 0 for any partner-added folders: only 1 animation can be marked as “0” (infinite loop).
- The third number is how many milliseconds to pause between sections. Usually this is 0.
- The fourth argument is the name of the folder in the zip.
- Re-zip the file: however, be careful not to compress the files. We are only using the zip as a concatenation method:
zip ../bootanimation.zip * -0 -r
- (optional) Add the bootanimation.zip to
- (optional) You can test out the boot animation from the shell by calling bootanimation.
- Partners may add up to 240 frames to the animation, split into at least two folders of max 120 frames each. The sections may play more than once but cannot be battery-marked to loop infinitely
How to use Engage to push the customized animation
Two Engage parameters are used to push a new boot Animation to devices. Similar to boot screens, the animation should be hosted on a web server that is accessible from the STB:
boot.animation.url = URL linking to the boot animation zip file.
boot.animation.md5 = this is the md5 checksum of the zip file.
You can test locally by pushing the files straight onto the STB using the Android Development Bridge (ADB) commands below:
$ adb push <bootanimation.zip>
$ adb shell