I open this up to the broader community for discussion: Where do you think custom bootanimations should be stored on Lollipop devices?
Android 5.0 introduces a new /oem partition, that allows for a /oem/media/bootanimation.zip file that seems to take precedence over a system/media/bootanimation.zip file (although I haven't checked AOSP source yet to confirm the exact logic). So far only AT&T+Motorola has utilized this functionality on the AT&T-branded Nexus 6, although I imagine many more OEMs will follow, given the added simplicity it provides.
Given this new option, I humbly suggest that the bootanimation community collectively decide to start placing their bootanimations in oem/media/ (via manual directions and flashable zips) for Lollipop devices, for a number of reasons:
- If a device has a pre-loaded /oem/media/bootanimation.zip, the current flashable zips and manual directions to place at /system/media/bootanimation.zip simply will not work (/oem takes precedence)
- Placing the animation on the /oem partition will persist through an OTA update, ROM update, etc.
- Placing the animation on the /oem partition preserves the ability to receive OTA updates, while placing on the /system partition causes Android 5.0+ updates to fail
Ideally, all flashable zips would contain an updater-script that is more thoughtful than all that I've seen to date; specifically testing for an /oem partition and reacting appropriately.
I haven't looked at source yet, but it's interesting to note that /oem/media/bootanimation.zip seems to supercede /system/media/bootanimation.zip (if /oem is present, then only /oem matters), however /oem/media/audio is additive (ringtones and notifications from both /oem and /system are available to the user).
there are only 2 places to boot a boot animation into.. 1st is /system/media/, but its temporary there, and will get replaced when you flash a rom. 2nd place is /data/local/, there it will not get replaced if you flash a rom.
DA6030 said:
I haven't looked at source yet, but it's interesting to note that /oem/media/bootanimation.zip seems to supercede /system/media/bootanimation.zip (if /oem is present, then only /oem matters), however /oem/media/audio is additive (ringtones and notifications from both /oem and /system are available to the user).
Click to expand...
Click to collapse
That's because audio is selected out of a picklist whereas you cannot choose a boot loader.
Its always been the case that boot animation in /data/local will take over /system/media.
rootSU said:
Its always been the case that boot animation in /data/local will take over /system/media.
Click to expand...
Click to collapse
D'oh, I had forgotten about /data/local. So, that means there are three locations now.
/oem/media is documented in the AT&T Nexus 6 thread, although I'm not sure anyone's checked source to see how it's implemented, nor tested to see where it falls in precedence to /data/local.
http://forum.xda-developers.com/showpost.php?p=56942290&postcount=11
And for reference, looking at the Shamu build.prop, it looks like the oem.prop items are imported explicitly into the build.prop, so the precedence there is clear.
DA6030 said:
D'oh, I had forgotten about /data/local. So, that means there are three locations now.
/oem/media is documented in the AT&T Nexus 6 thread, although I'm not sure anyone's checked source to see how it's implemented, nor tested to see where it falls in precedence to /data/local.
http://forum.xda-developers.com/showpost.php?p=56942290&postcount=11
And for reference, looking at the Shamu build.prop, it looks like the oem.prop items are imported explicitly into the build.prop, so the precedence there is clear.
Click to expand...
Click to collapse
you cant just add it there after manually. and theres another place to put the boot animation, but only when building a rom. i dont remember the location, but you can see it yourself, if you delete the boot animations from /system/media/ and /data/local it will appear. this one just says android
simms22 said:
you cant just add it there after manually. and theres another place to put the boot animation, but only when building a rom. i dont remember the location, but you can see it yourself, if you delete the boot animations from /system/media/ and /data/local it will appear. this one just says android
Click to expand...
Click to collapse
It used to be compiled into the frameworks I think.. Not sure if thats still the case.
Heads UP
Don't know if this is actually what caused my bootloop... but I figured I'd mention it here.
I was trying to get rid of the AT&T boot animation on my N6 and while i was renaming to .bak thought to myself, "why don't I just do my own?" Grabbed another one online, put it in /oem/media/ and bam. No boot.
The worst part is I can't fix it without full restore to stock, because I can't seem to access or even view the /oem/ folder at all through recovery. Is it only mounted after boot?
Don't kow if this means anything to y'all, but I figured someone would find this information interesting.
I have tried several times to make use of the /OEM partition with no success. Every time I reboot the contents disappear.
i tried /data/local to see if it still worked and it didnt work for me....
cmh714 said:
i tried /data/local to see if it still worked and it didnt work for me....
Click to expand...
Click to collapse
i just tried myself, you are right. not working here as well.
simms22 said:
you cant just add it there after manually. and theres another place to put the boot animation, but only when building a rom. i dont remember the location, but you can see it yourself, if you delete the boot animations from /system/media/ and /data/local it will appear. this one just says android
Click to expand...
Click to collapse
It is within framework-res.apk/assets/images/ . . there are two images.
android-logo-mask.png
android-logo-shine.PNG
The mask is a static image with partial transparency. The shine scrolls from left to right behind the mask in a loop, shinning through the mask transparency. It is actually a pretty cool way to do it and I know @rascarlo uses it in rastapop instead of the traditional bootanimation.zip
hlxanthus said:
I have tried several times to make use of the /OEM partition with no success. Every time I reboot the contents disappear.
Click to expand...
Click to collapse
I have also tried (only on stock Google builds), and had the same experience.
OEM partition unformatted on non-ATT devices
hlxanthus said:
I have tried several times to make use of the /OEM partition with no success. Every time I reboot the contents disappear.
Click to expand...
Click to collapse
I just realized that on my device (not AT&T-branded), the /oem partition has always been RAW. So, I flashed the oem.img partition from AT&T firmware (although "fastboot format ext4 oem" would probably be good enough) the partition is now formatted correctly, and now I can use it for storing personalized ringtones, bootanimations, etc. that persist through a factory reset.
DA6030 said:
I just realized that on my device (not AT&T-branded), the /oem partition has always been RAW. So, I flashed the oem.img partition from AT&T firmware (although "fastboot format ext4 oem" would probably be good enough) the partition is now formatted correctly, and now I can use it for storing personalized ringtones, bootanimations, etc. that persist through a factory reset.
Click to expand...
Click to collapse
Okay, I gotta ask. I haven't been able to find the OEM.IMG in any of my searches, just the contents found there. I wasn't aware of any att specific factory images . . got a link you can share? If you don't remember, could you upload the IMG?
hlxanthus said:
Okay, I gotta ask. I haven't been able to find the OEM.IMG in any of my searches, just the contents found there. I wasn't aware of any att specific factory images . . got a link you can share? If you don't remember, could you upload the IMG?
Click to expand...
Click to collapse
There are definitely firmware repositories other than the official Google Developers site. The one I'm thinking of hosts the full .zip file they apply using mfastboot at the factory, which includes the signed oem.img, as well as radio parameters (e.g., SIM lock/unlock for subsidized phones). I can't remember XDA's policy on linking to other sites, so I'll leave it to say that if I search for "Motorola Firmware" (incognito, to avoid personalized search results) it's the 3rd and 4th link right now. The specific file you're looking for is SHAMU_LMY47D_release-keys_subsidy-ATT_CFC.xml.zip. I want you to find it, so if that's not helpful, let me know.
DA6030 said:
There are definitely firmware repositories other than the official Google Developers site. The one I'm thinking of hosts the full .zip file they apply using mfastboot at the factory, which includes the signed oem.img, as well as radio parameters (e.g., SIM lock/unlock for subsidized phones). I can't remember XDA's policy on linking to other sites, so I'll leave it to say that if I search for "Motorola Firmware" (incognito, to avoid personalized search results) it's the 3rd and 4th link right now. The specific file you're looking for is SHAMU_LMY47D_release-keys_subsidy-ATT_CFC.xml.zip. I want you to find it, so if that's not helpful, let me know.
Click to expand...
Click to collapse
Found it, thanks!
Edit: for the record fastboot format didn't work on OEM as it won't work on raw partitions. Extracted and flashed it just as you suggested and now have the crazy att boot animation . . which I will be deleting right now. Thanks a bunch. I will likely post something soon for people who wish to do this themselves.
For those interested in this, here is the OEM.IMG. Once I play with it some more I will open a dedicated thread on how to make use of this partition.
As a little teaser, as expected you can place and set default ringtone, alarm and notification tones. Or add a bootanimation.zip. What I expected to work though did, adding user apps to it. Simply create a directory of /app within the oem partion and place your apps in there. It should be noted there is only about 50mb of space in there. I simply used a file manager to go to the /data/app and copy the desired app folder to the oem partition.(not sure you have to but I simply mirrored the file structure used there). In my case I added a copy of Root Explorer and Titanium Backup in there so they are present for all new rom installs.
Download - SHAMU_subsidy-ATT_OEM.zip
hlxanthus said:
Edit: for the record fastboot format didn't work on OEM as it won't work on raw partitions. Extracted and flashed it just as you suggested and now have the crazy att boot animation . . which I will be deleting right now. Thanks a bunch. I will likely post something soon for people who wish to do this themselves.
As a little teaser, as expected you can place and set default ringtone, alarm and notification tones. Or add a bootanimation.zip. What I expected to work though did, adding user apps to it. Simply create a directory of /app within the oem partion and place your apps in there. It should be noted there is only about 50mb of space in there. I simply used a file manager to go to the /data/app and copy the desired app folder to the oem partition.(not sure you have to but I simply mirrored the file structure used there). In my case I added a copy of Root Explorer and Titanium Backup in there so they are present for all new rom installs.
Click to expand...
Click to collapse
That's a great discovery! Would you consider submitting this as a feature request to Titanium Backup ("move app to oem partition")?
Such a pity the partition can't be formatted from fastboot. Did you try including all the option parameters (ext4 and size)? Do you think it could work from the terminal in recovery (and therefore flashable zip)?
DA6030 said:
That's a great discovery! Would you consider submitting this as a feature request to Titanium Backup ("move app to oem partition")?
Such a pity the partition can't be formatted from fastboot. Did you try including all the option parameters (ext4 and size)? Do you think it could work from the terminal in recovery (and therefore flashable zip)?
Click to expand...
Click to collapse
Alas, I tried just a few variables with fastboot format and gave up and just flashed the OEM.IMG. But fastboot did throw an error stating it could not use the format function on a RAW partition, so I don't know if there is some variable that may have worked.
Only real problem is now that I have it formated I can no longer really test what may or may not work. I can play with it some and see if OEM is accessible via recovery (it is not shown in twrp file manager, that I do know). I have a few shamu guys I can call upon to test, so if I think something might work I will give it a shot.
As for any official TiBu support I doubt it would be accepted, the partition is only 50mb so not a lot of room for stuff.
hlxanthus said:
I can play with it some and see if OEM is accessible via recovery (it is not shown in twrp file manager, that I do know). I have a few shamu guys I can call upon to test, so if I think something might work I will give it a shot.
Click to expand...
Click to collapse
Oh, really good point - TWRP support (at minimum ability to for AT&T customers to wipe the partition, but also file manager) is a way better idea. If your shamu guys are able to format /dev/block/platform/dw_mmc.0/by-name/oem from RAW to ext4 using the appropriate updater-script or recovery terminal command, that would be great to point that out to the TWRP team, to add support for format and file manager. Worst case, I would think TWRP could implement wipe (for AT&T customers) using a delete_recursive. And if format is entirely off the table, one could accomplish the same thing with a flashable zip that flashes the AT&T oem.img and then does a delete_recursive.
By the way, have you tried the format commands in any of fastboot, updater-script or recovery terminal to format your ext4 partition back to RAW?
Related
Everything needs to go in /sdcard/andboot
FILES YOU NEED:
the nbh flashed to your phone
an sd card with the andboot folder at the top level
an androidinstall.tar file plopped into the andboot folder
thats it
then just hold down volume up or dpad center or the middle of your touchscreen when booting and go through the menu to choose where to put things and then install the system. (for those without a dpad, pretend the touchscreen is a giant dpad)
if you're doing it with haret, extract basefiles to your sd, plop the androidinstall.tar into the same folder, and boot, hold down volume up (camera on kaiser/polaris) just like the nand people (but don't pick nand to store the files, it won't work)
---------
all the files
basefiles for the haret folks out there
Grab the nbh files for your device. Only difference between eclair and non-eclair is that eclair is set up to use the newer hw3d driver, non-eclair is set to use the older one (for donut/cupcake)
These do not use rootfs. They remove it completely and free up that extra space in your nand for a bigger, cleaner system.
They also have my new menu-based installer! Yay! Just hold-down volume-up or dpad center or the middle of your touchscreen
THIS WON'T WORK WITH ANY OF THE OLDER SYSTEMS! THE SYSTEM MUST INCORPORATE THE APPROPRIATE FILES FROM ROOTFS (and the rom cooks will let you know when theirs is ready)
The first system to use this is based on eclair 2.1 with working sleep and audio
Here's my tattoo system for this method
FYI Craig & I spent a lot of time on these!!!
How to create a build
How to make your build work with this
So it actually isn't that hard.
Extract your sqsh to a folder somewhere, so you have, say /android/system
Mount/extract whichever rootfs worked best with your system somewhere else, say /android/rootfs
Code:
cp -a /android/rootfs/init.etc/* /android/system/etc
cp /android/rootfs/lib/donut/* /android/system/lib
cp /android/rootfs/lib/modules/* /android/system/lib/modules
cp /android/rootfs/lib/hw/* /android/system/lib/hw
cp /android/rootfs/init.cfg/init.donut.rc /android/system/sysinit.rc
You'll need to modify the sysinit.rc a bit, as in the rootfs some things are commented out that shouldn't be, and it references a few things in /bin or /etc that aren't there anymore.
Also, don't forget to uncomment the line near the top of sysinit.rc that creates a symlink from /system/etc to /etc
Once you are done, just do this to create the installer:
Code:
cd /android
tar cvf androidinstall.tar system
Soon, I may upload some packs for making the process easier, with updated sysinit.rc's for each system type. If I have time, we'll see...
Note, you can update the contents of the .tar file from windows/izarc/winrar/etc and it'll still work. you don't need to keep messing about with linux anymore if you don't want to
How to update things
How to create an update pack
Since not everyone gets things right the first time, and we keep getting updates, the rootfs made it easy to install updates without downloading the whole system again.
Well now anyone can create an update pack
just create a tar file called androidupdate.tar, make sure it has everything in a /system folder with whatever files you want, drop it into /sdcard/andboot and reboot holding down volume-up (camera on kaiser/polaris). Choose the update option and you should be good to go.
If things get wonky when you try to boot up, give the fix permissions option a shot in the installer, if it still fails, try wiping the dalvik cache, that can fix things up too.
About the installer
I ripped it off from here, but put about 6 or 7 solid hours into getting it to fit and react with the keys/screen
May be new
rootfs
may be new
better eclair support
---
with android development this fast for "yomama so old" phone, who knows what future holds?
sshark said:
May be new
rootfs
may be new
better eclair support
---
with android development this fast for "yomama so old" phone, who knows what future holds?
Click to expand...
Click to collapse
whats a rootfs hahaha
Might be something called "Code Name Ginger"....or our tame racing car driver, we call the Stig.
nabicat said:
Might be something called "Code Name Ginger"....or our tame racing car driver, we call the Stig.
Click to expand...
Click to collapse
what the..... that was random
Holy cow.. like there's nothing even in this thread and it's already filling up..
I think I know what it is..
Vilord ported Dalvik from 2.5 which now includes native support for HW accel for MSM7500..
jesus.
Do we still need to have three partitions on the card? Or would one FAT32 partition be sufficient?
@vilord:
is everything needed for the rootfsless nbh in the git? I would like to test this with ´my kaiser
This works for Polaris? Really thanks!
the bootenv git should have everything needed for this. I haven't tested on my polaris yet, but it should "just work" on polaris and kaiser as long as martin's method to drop the active key into /proc works on all hardware.
What happens to the .conf files?
What about /media ?
Thanks for all of your efforts
conf files are no longer used from the sd card.
If the cook put things in the right places, there should be a /system/etc/userinit.conf that gets parsed during android boot, but it is up to the cook to not screw that up.
This way is a lot cleaner, but it does a LOT less handholding for lazy cooks.
the upside is that it is *very* easy for anybody to fix a broken androidinstall by just piecing together what needs to change into an androidupdate.tar
/media is still used if it is on your SD card, but there's enough space and things are fast enough that media files should be included in /system now
This is a HUGE development for rom devs.
I will be honest in saying I've been having a hard time not hitting the 90MB cap with my next Warm Donut release.
Infact, I spent 4 hours yesterday de-odexing and compressing the classes.dex back into the jars and apks to save space.
With this new method this gives us ALOT more space. I applaud you for doing this. It breaks alot of the current builds but at the same time gives us a ton more flexibility for future.
And what I really like from this is it removes the confusion and headaches on configuration, giving the power to the ROM dev to include the necessary settings.
Question though. Different phones (Vogue, Polaris, Kaiser) may require different configurations. In the past it was a simple "just use this conf with this phone"
Thanks again
so when running from haret - getting an error about looking for a system file, I have all the files in andboot folder, any ideas on what I'm missing.
Know what would be really nice? In the setup, the ability to change LCD_Density and resolution.
This would eliminate the confusion users may have in editing the build.prop and rom files to change these values.
I guess the ROM devs could distribute separate files/tars for each res/density but that gets redundant if you know what I mean.
I'm using haret, but I dont see any option to choose to install not to nand, i get into the installer and it says install system so i click that but then it just goes through installation and fails. How do i choose to install to sd card?
Is it possible? Seems like it should be an easy task...
for the default browser? i dont believe there is a way. But i could be wrong.
Maybe it could be done by editing the database (I would suppose it's defined there), but what part about the default /sdcard/Download is not working for you?
Gunthy` said:
Maybe it could be done by editing the database (I would suppose it's defined there), but what part about the default /sdcard/Download is not working for you?
Click to expand...
Click to collapse
I flash the CM nightlies and when I download them I constantly have to move them from the download folder to the root of the SD card so that I can flash them in recovery. Sometimes I forget to move it and I enter recovery and then clear cache and dalvik-cache and then realize that I forgot to move the file so I waste a lot of time booting back up again!
Ok, so here is a bit of a preamble to stop flaming and unnecessary posts in this thread. This thread is not about changing bootdown animation for that go here.
Also do not do this if you don't understand what this all means, i am not responsible for your device, or anything else.
To the post:
I flashed back to stock last night to help everyone who wants to be able to use custom bootanimations (those like most other android phones can.) By placing a bootanimation.zip into /system/media and it should play when you boot. However as most of you know their is a proprietary format (QMG) getting called. Since I do not want to pay Quram and I also want custom bootanimations it leaves me with one choice, make it call the bootanimation.zip IN STEAD of the bootsamsung(loop).qmg. This is where what I am trying is different then other attempts I have read. Most other attempts try to break the QMG, why not just go around it and call what you want anyway.
The goodies:
I can get a custom bootanimation (specifically this one here) to play on my phone. Should work for any custom bootanimation.zip as long as it is built properly. Try to find one for our resolution or it will be tiny, but whatever I'm sure you can fix that right. You are in development forum anyways. There is a weird delay between the black and white VIBRANT screen and the animation playing but since it is progress and on the stock rom (rooted of course) I am going to post what I did, and others can come in and help. ALRIGHT!
What to do:
Open up your command prompt and cd to the directory with your adb i.e. cd C:\adb\. Also place the bootanimation.zip (C:\adb\bootanimation.zip)
Then run this below in your command prompt window.
Code:
1. adb push bootanimation.zip /sdcard/bootanimation.zip
2. adb shell
3. su (NOTE: Allow root access on actual phone)
4. mount -o remount,rw /dev/block/st19 /system (NOTE: This just allows read/write access on /system)
5. busybox cp /sdcard/bootanimation.zip /system/media/bootanimation.zip
6. cd /system/bin/
7. mv playlogo playlogoBKP
8. mv playlogos1 playlogos1BKP
9. busybox cp bootanimation playlogo
10. busybox cp bootanimation2nd playlogos1
Now go ahead and reboot and enjoy your own custom bootanimation.zip
Also when done playing around you might want to revert everything back, cause I do not know if there are other repercusions of doing this. Although none I have noticed.
Video Evidence. (Because I am not a recognized member of this forum)
Replacing the bootanimation sounds and bootdown is not something covered by this thread as it is super easy, just go here.
Q. Well it seems like you figured everything out already Zaduma, what do we need with a thinktank thread about this?
A. There is a delay that lasts between 3-5 seconds between VIBRANT Screen and actual animation playing. Let's get rid of this.
Updates (not reflected above.) -- I will try to keep this updated with important information so you can just jump in.
We might be able to remove the lag if we can edit the init.rc, it calls playlogos1 only, which pretty much means that playlogo, bootanimation, and bootanimation2nd are useless files, of course unless you rename them playlogos1. The problem with this is that playlogos1 is called like this.
Code:
service playlogos1 /system/bin/playlogos1
user root
oneshot
But bootanimation should be called like this (as we know from AOSP builds and from bootanimation2nd, which i think is probably samsungs first attempt to put proprietary QMG in opening)
Code:
service bootanim /system/bin/bootanimation(2nd)
user graphics
group graphics
disabled
oneshot
I am not 100% sure of why being called from user graphics (most likely a root access user, or the disabled line would have anything to do with anything, but they are there.)
Also something I have seemed to find conclusive, if you run /system/bin/bootanimation it plays the animation almost instantly, but if you run /system/bin/bootanimation2nd it plays after a bit of a delay. So after renaming bootanimation to playlogos1 I noticed no change at actual boot time. I really feel like being able to update init.rc might hold some key, this is just a hunch I'm kinda figuring out what I can as I go.
I can confirm that this does indeed work, and the lag is annoying is the lag from the bootanimation & bootanimation2nd?
camalot said:
I can confirm that this does indeed work, and the lag is annoying is the lag from the bootanimation & bootanimation2nd?
Click to expand...
Click to collapse
+1 confirmed working, plays for maybe two seconds, then displays home screen.
EDIT: in a logcat i noticed "Unable to open zip '/data/local/bootanimation.zip': No such file or directory" I tried placing the bootanimation.zip into the /data/local folder, but am still getting the lag between the white vibrant and the animation....
Edit2: I tried editing the pngs in the zip file. I wanted to know at want frame the animation was playing and what frame is was stopping at. so i just painted the frame number on top of the picture, rezipped/pushed/copied/rebooted, and now all i get is the white vibrant, followed by pure black screen for a few seconds, then the lock/home screen.........not sure if there is a file size limit, or what...if i push the original bootanimation.zip i get the animation back......
d_bot said:
Edit2: I tried editing the pngs in the zip file. I wanted to know at want frame the animation was playing and what frame is was stopping at. so i just painted the frame number on top of the picture, rezipped/pushed/copied/rebooted, and now all i get is the white vibrant, followed by pure black screen for a few seconds, then the lock/home screen.........not sure if there is a file size limit, or what...if i push the original bootanimation.zip i get the animation back......
Click to expand...
Click to collapse
Here I got it working, trick is when you put it into an archive to put archive to store, so it doesn't compress the files. I have attached a custom "Haters" bootanimation with painted frame numbers. You might notice that the files are not jpg, that is just what i saved them as. It didn't seem to reveal to much to me. I don't think the problem is with the animation, I think it is when it gets called, not exactly sure of course.
Also about your log. When it looks for a bootanimation it checks /data/local first and if it finds nothing it goes to /system/media. I believe /data/local is a legacy command and for forward compatibility you should just get in the habit of using /system/media.
This lag is very puzzling, I am gonna try and pull the bootanimation / playlogo files off of other android phones or maybe android open source and see what happens...
For anyone who happens to want to look at what bootanimation / bootanimation2nd / playlogo / playlogos1 is remember they can be opened with 7zip and viewed as an archive. Inside them are 6 files 0, 1, 2, 3, 4, 5 (if memory serves). It all looks arbitrary to me however, just a bunch of random junk.
Awesome Dude, This is definitily progress in the right direction. Thank you, and all the Devs for their hard work.
zaduma said:
Here I got it working, trick is when you put it into an archive to put archive to store, so it doesn't compress the files. I have attached a custom "Haters" bootanimation with painted frame numbers. You might notice that the files are not jpg, that is just what i saved them as. It didn't seem to reveal to much to me. I don't think the problem is with the animation, I think it is when it gets called, not exactly sure of course.
Also about your log. When it looks for a bootanimation it checks /data/local first and if it finds nothing it goes to /system/media. I believe /data/local is a legacy command and for forward compatibility you should just get in the habit of using /system/media.
This lag is very puzzling, I am gonna try and pull the bootanimation / playlogo files off of other android phones or maybe android open source and see what happens...
For anyone who happens to want to look at what bootanimation / bootanimation2nd / playlogo / playlogos1 is remember they can be opened with 7zip and viewed as an archive. Inside them are 6 files 0, 1, 2, 3, 4, 5 (if memory serves). It all looks arbitrary to me however, just a bunch of random junk.
Click to expand...
Click to collapse
AFAIK, i don't remember seeing the "bootanimation", "bootanimation2nd", "playlogo" and "playlogos1" on any AOSP builds. I think those may be a SGS thing. Also, the /data/local/ i believe is used because it is writable by user, if i remember correctly, and would not require root to put a file there. But I could be wrong about that.
Why did you rename the bootanimation & bootanimation2nd as playlogo and playlogos1? does that tell it to load the /system/media/bootanimation.zip?
edit: ok, I was wrong... bootanimation is there, but not bootanimation2nd and not playlogo / playlogos1
i think editing the init.rc properly could do this how it is in aosp. the following is in our init.rc. These are the two that stick out to me. you see the 1st one is commented out.
Code:
#service bootanim /system/bin/bootanimation2nd
# user graphics
# group graphics
# disabled
# oneshot
Code:
service playlogos1 /system/bin/playlogos1
user root
oneshot
It looks like this in an aosp rom.
Code:
service bootanim /system/bin/bootanimation
user graphics
group graphics
disabled
oneshot
Jr33 said:
i think editing the init.rc properly could do this how it is in aosp. the following is in our init.rc. These are the two that stick out to me. you see the 1st one is commented out.
Click to expand...
Click to collapse
Exactly what has to be done. That requires a kernal edit tho if I'm not mistaken as init.rc get reloaded every time the phone is restarted.
it works but disable my lag fix , there's a way i can do its w/o removing the lag fix?
Designgears at the captivate forum says he and a coworker got it working on the cappy. He didn't give details but he's including it in his next incarnation of his ever popular rom for the captivate.
Its good to see that this has been figured out. Here as well. I can't wait to try it
Sent from my SAMSUNG-SGH-I897 using Tapatalk
Samsung I hate you. Edited so that people don't get silly ideas.
Trying to look through the AOSP. I can confirm that there is only bootanimation. I'm going to probably end up compiling some of it from source, it would be nice to know exactly what is happening in playlogos1, it might be just calling the animation but I find it unlikely.
Also if anyone can send me information about how to edit the initrd I would be very thankful. I guess I can just rename whatever file I want to playlogos1 but then it doesn't have the full set of options Running into problems trying to compile android from source, fricken a.
End of the day I need to figure out how to edit init.rc and have the changes be saved, because obviously it gets overwritten when you turn your phone off/on.
xalucardx said:
it works but disable my lag fix , there's a way i can do its w/o removing the lag fix?
Click to expand...
Click to collapse
I don't know. If you are running any of eugene's roms edit playlogosnow and not playlogos1, because he is running a custom set of commands there and calling playlogosnow at the end.
Also: OP updated.
Edit:
Dani897 said:
Designgears at the captivate forum says he and a coworker got it working on the cappy. He didn't give details but he's including it in his next incarnation of his ever popular rom for the captivate.
Its good to see that this has been figured out. Here as well. I can't wait to try it
Sent from my SAMSUNG-SGH-I897 using Tapatalk
Click to expand...
Click to collapse
I'd love to see where you read this, I searched that thread and there is talk about only playing the logos through playlogos instead of using it as a place to launch lagfix's since custom kernels now support userscripts...
Just ran
Code:
cd /system/bin
ls -l playlogos1
which revealed that root.shell owned the file and it's permissions were set to -rwxr-xr-x-
so i went ahead and
Code:
mv playlogos1 playlogos1BKP
cp bootanimation playlogos1
ls -l playlogos1
which revealed that root owned bootanimation so now i ran
Code:
chown root.shell playlogos1
to fix ownership and made sure permissions were set for this owner
Code:
chmod 755 playlogos1
Effect: nothing, don't bother.
All you need is playlogos1 removed from init.rc and uncomment bootanimation from there. Then on boot the phone will activate the bootanimation binary instead. I have no clue how to edit the initramfs to include the edited init.rc. I have ben looking all over for instructions or some script to split/repack. Maybe JAC could incorporate this into his release, but probably won't because I am sure there are many people that like the samsung bootanimation. I for one like it, I just wish it was in .zip format.
Sent from my SGH-T959 using XDA App
Jr33 said:
All you need is playlogos1 removed from init.rc and uncomment bootanimation from there. Then on boot the phone will activate the bootanimation binary instead. I have no clue how to edit the initramfs to include the edited init.rc. I have ben looking all over for instructions or some script to split/repack. Maybe JAC could incorporate this into his release, but probably won't because I am sure there are many people that like the samsung bootanimation. I for one like it, I just wish it was in .zip format.
Sent from my SGH-T959 using XDA App
Click to expand...
Click to collapse
Nah, i have done this. It reflashes init.rc at boot and at shutdown. Without repacking it, the changes won't last long enough to see boot time.
zaduma said:
Nah, i have done this. It reflashes init.rc at boot and at shutdown. Without repacking it, the changes won't last long enough to see boot time.
Click to expand...
Click to collapse
i know it re-flashes. you misread my post. it needs to repackaged in the initramfs to stick. you can edit the init.rc on the phone all you want but nothing will happen.
Bump. Any new progress on this?
Bringing this topic back to life hopefully!!!
Has anyone looked into this anymore? I've been playing with it for a couple days now and can get the first 45 or so of my 60 frames to play using the desc file included but replacing the text
"320 480 13p 0 0 animate"
with
"480 800 60
p 0 0 animate"
(480 800 - screen resolution... 60 - frames/sec... p - ???... 0 - # of times to repeat... 0 - # of frames to pause after last frame... animate - folder png's located in)
It seems as if I'm limited to a certain amount of TIME not frames... Like the phone breaks the boot sequence into 2 separate time slots... one for T-Mobile sequence and one of Galaxy-S sequence... not a restriction on frames like the bootdown sequence has. I played with changing the frame-rate (the 13 and the 60) to different variations including 1, 30, 60, 80. I got further along in my animation with each variation, but it seemed as if it hit a time restraint wall and it hard stopped the animation.
Also, another reason I think it is alloting 2 separate time slots is that the Droid boot animation file contains 2 separate folders "part0" and "part1" with png files in both, and their desc.txt file contains text calling both folders out?? Could that have something to do with our animation pausing 3-5sec?? Is it looking for another animation call? Do we need more than one boot sequence?
It's late here and I'm not going to play with it any more tonight, but I'll skim more of the surface tomorrow. I'm no pro at this stuff as this is my first android and phone development is completely new to me, so don't poke too hard. If this is old news and someone has figured it out, a nice 'how-to' would be greatly appreciated!
One last thing... I failed to make a backup of my original stock bootanimation.zip file... would it be too much to ask someone to post one or send me a copy so I can revert without nandroid restoring??
ndhr3d said:
It's late here and I'm not going to play with it any more tonight, but I'll skim more of the surface tomorrow. I'm no pro at this stuff as this is my first android and phone development is completely new to me, so don't poke too hard. If this is old news and someone has figured it out, a nice 'how-to' would be greatly appreciated!
One last thing... I failed to make a backup of my original stock bootanimation.zip file... would it be too much to ask someone to post one or send me a copy so I can revert without nandroid restoring??
Click to expand...
Click to collapse
I realize you said it was late, but did you mean the stock .qmg file?
I have edited the init.rc and can run the bootanimation binary. The problem is, it never stops. Does anyone know how the AOSP boot animation is supposed to be halted? I have to adb shell into the phone and kill the bootanimation process.
If you want to mess with it, check out my kernel. You can run a script to replace init.rc at bootup before Android's init app loads up.
Babyface1249 said:
I realize you said it was late, but did you mean the stock .qmg file?
Click to expand...
Click to collapse
Whichever was what the phone was calling before I started destroying everything!
The cmd code included creating BKP files of the playlogo and playlogos1 files, but both of those I've overridden. Not sure if I need those to bring back the original boot sequence.
ttabbal; said:
Does anyone know how the AOSP boot animation is supposed to be halted?
Click to expand...
Click to collapse
I know nothing about android development other than the few things I've been able to modify by swapping out png files or flashing with recovery... I wish I had enough time in my day to learn about it all. The one thing I remember from the Droid forum I read was that a 0 in the desc file after the p means 'infinite loops'... maybe simply change that to a 1 and see if it plays through only once??
Reference to that infinite: http://www.machackpc.com/featured/how-to-changecreate-your-boot-animation-for-droid/
If you got it all to work and play the entire loop with no 3-5sec delay prior, that is fantastic! Otherwise I guess I could Nandroid back... luckily I was smart enough to create a backup before starting to mess around in my system files!
I started a thread on SDX right after the Epic came out with the manual way to get your beloved ringtones back and then some and promised to make it a flashable zip... naturally I feel the need to share this with both communities, so here you go!
Updated with FroYo Sounds:
http://dl.dropbox.com/u/1628974/epic-nexus-moment_sounds_froyo_signed.zip
Enjoy
No link
send it from maldito's phone aka (SolarSystemGalaxy)
You need to copy the text and take the space out. See my note about not being able to post links...
gremlyn1 said:
I started a thread on SDX right after the Epic came out with the manual way to get your beloved ringtones back and then some and promised to make it a flashable zip... naturally I feel the need to share this with both communities, so here you go!
**Technical Difficulties - Can't post to an outside link yet...**
http ://dl.dropbox.com/u/1628974/signed_epic-nexus-moment_sounds.zip
Enjoy
Click to expand...
Click to collapse
Sent from my SPH-D700 using XDA App
brizzle1986 said:
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
Did you forget to type something?
I'm now able to post links, YAY!, so I have fixed the first post so that you don't have to copy/paste/edit to get to download!
Thank you much
Ever since I installed this, ring tone selection crashes android system and I have to reboot. Usually happens after 2nd or 3rd selection. Amy ideas why/how to fix? Haven't checked logs yet
Just wanted to stop by and say thanks - Gremlyn1, I've included this collection in SyndicateROM "Fully Loaded".
k0nane said:
Just wanted to stop by and say thanks - Gremlyn1, I've included this collection in SyndicateROM "Fully Loaded".
Click to expand...
Click to collapse
Great
atkailash said:
Ever since I installed this, ring tone selection crashes android system and I have to reboot. Usually happens after 2nd or 3rd selection. Amy ideas why/how to fix? Haven't checked logs yet
Click to expand...
Click to collapse
No idea why at all, unless for some reason the files didn't copy over... have you tried flashing again? The script doesn't do anything except remove the old sound files and add the new ones.
Updated this with new FroYo sounds (some Samsung ui sounds). The .zip is not yet CWM3 compatible, that will come soon. If you have changed the TW_Battery_caution.ogg to TW_Battery_caution.ogg.bak or removed it, etc., then you just need to remove that file. This zip includes a TW_Battery_caution.ogg.bak already, as it got included when I pulled the sounds from my phone.
I took the liberty of updating this package.
Changes:
CWM Script now properly erases all sound files in /system/media/audio prior to copying.
Deleted Ding.ogg and Noisy_One.ogg from Ringtones as they are identical to Noises1.ogg.
Edited title tag of Noises1.ogg from Noisey One to Noisy One.
http://www.multiupload.com/Z1D5N4CRVI
Isira said:
I took the liberty of updating this package.
Changes:
CWM Script now properly erases all sound files in /system/media/audio prior to copying.
Deleted Ding.ogg and Noisy_One.ogg from Ringtones as they are identical to Noises1.ogg.
Edited title tag of Noises1.ogg from Noisey One to Noisy One.
http://www.multiupload.com/Z1D5N4CRVI
Click to expand...
Click to collapse
any chance of converting it from amend --> edify?
for those of you who use CWM3 and want this on your phone.
Extract contents of zip to C:\
Open CMD prompt
Browse to ADB folder
adb push C:\epic-nexus-moment_sounds_froyo_signed\system /sdcard/system
adb shell
#su
#remount rw
#cp -r /sdcard/system/media /system
edit: I flashed your zip on my epic (went back to old CWM and RFS) and it removed the system sound when you click icons and the dialpad sound
blu9987 said:
edit: I flashed your zip on my epic (went back to old CWM and RFS) and it removed the system sound when you click icons and the dialpad sound
Click to expand...
Click to collapse
Dialpad and clicking sounds still work here. Make sure your system volume is not set to 0.
This would be awesome if it was made Edify Scrpitagible.. yes.. scriptigible. I just dropped it via root explorer into the /system/ folder
I'm a newbie to flashing with the Epic.... already bricked my wife's phone once. =)
I upgraded to EH17 using Odin and apparently that messed up all her ringtones and notification sounds. I wanted to know if there was a way I could flash this file using CWM 3.1.0.1. I get an error msg saying that amend scripting is not supported.
etienne97 said:
I'm a newbie to flashing with the Epic.... already bricked my wife's phone once. =)
I upgraded to EH17 using Odin and apparently that messed up all her ringtones and notification sounds. I wanted to know if there was a way I could flash this file using CWM 3.1.0.1. I get an error msg saying that amend scripting is not supported.
Click to expand...
Click to collapse
Take the files out with 7 zip and open a zip file (from a theme!! don't use the srf zip or any other "rom" zips they wipe data) you know works on cwm3. Make a backup and delete all the folders inside besides META-INF then take your old zip and copy the files over to the new zip, of course without the META-INF. Just to clarify you want the new zips META-INF folder only!
Cd's or tapes?
Noob here ....I' am unable to find a zip file which is not a rom file...i wanted to follow the above mentioned procedure of modifying the zip file for using it on CWM3x. Can you tell me which is teh appropriate zip file which i can use for modification so that i can restore the default ringtones of EPIC 4G.
I flashed the legendary rom and saw that many ringtones have been taken off...i want to have stock ringtones back on my system
Grab a flashable theme zip and use that.....
Just make sure inside that zip once you delete out the "theme" contents you leave the META-INF file/folder...
Then make a folder of you own in called
/system
Then inside /system make one called
/media
then inside /system/media/ make one called
/audio
Then place the appropriate folders containing either
/alarms
/notifications
/ringtones
/ui
inside that /audio directory....
Close it up and flash it...
If that is too much for you to follow... Just use this zip I'm providing below..
Blank Flashable
Just open it with WinRaR or WinZip and you will see all the folders in place exactly as I described... Place your contents in the appropriate folders and flash..
followed exactly as mentioned above, downloaded the zip file, opened it and copied the tones as suggested and flashed my phone....the tones did not turn up in the list but i ended up loosing facebook, gmail and couple of other apps !....what could have gone wrong ?
yaji63 said:
followed exactly as mentioned above, downloaded the zip file, opened it and copied the tones as suggested and flashed my phone....the tones did not turn up in the list but i ended up loosing facebook, gmail and couple of other apps !....what could have gone wrong ?
Click to expand...
Click to collapse
Not sure... There is nothing there in that "Blank Flashable" except for the META-INF file with your standard install scripts and then I created the folders & path to the media/audio/
Not to sure what you could have done to cause FB, GMail and others to be lost as a result of that zip file...
BTW, you did make a Nandroid Backup before flashing as normal rule of thumb correct?
FYI, any other devs, etc... willing to verify the zip I posted has nothing to do with erasing/removing those apps described by the member please feel free to do so...
Hi all,
My question is aimed to head deep into the Android OS and the flashing process itself. I know that if I flash my phone with a new ROM that system files are replaced and also some other files too. My question is how is this done? Is there an exact order in which the files have to be replaced, and are they "just" overwritten or are they deleted first and then the new ones put in place?
Forgive me if this question has already been answered. I really tried my best to find answers on Google and in here.
Thanks in advance for any enlightening comment.
Open up an update-script and your dilemma will be solved
Sent from my GT-I9000 using Tapatalk
Essentially, like the previous reply mentioned the android OS is heavily partitioned, but has a lot of sneaky mount points to hide this fact.
Really all a CWM flashable zip does is follow a script, easily readable in the zip, to copy files throughout the OS partition.
If you look in the zip you'll see a few things, the biggest thing here is the /System folder. It contains the entirety of the system partition that makes your ROM /Your ROM/. Also you'll see boot.img which is the kernel (and CWM). A modem.bin file is also present, but to my understanding is only flashed if one is not currently present.
When looking at CM9's zip, you'll see an updater.sh. This is the shell script that's run on using CWMs install function.
It's process checks a few environment things and installs (copys over /system) based on this.
Check out the script, it's really interesting.
Thanks to all of you
I will have a look inside a script then.