Homebrew [RELEASE] BootAnim9 - Custom boot animations for your 3DS!

Status
Not open for further replies.

zes

Well-Known Member
Newcomer
Joined
Mar 26, 2016
Messages
46
Trophies
0
Age
54
XP
112
Country
United States
Take an image into any random video editor and make it last however long you want, render at 30fps, convert at 30

It'd be pretty easy to support an image coming in, ex. use ImageMagick:

Code:
convert 3ds_holdstart.psd -flatten -channel BGR -separate -channel RGB -combine -rotate 90 bottom_anim.rgb

Then you just need to append the output to itself for however many frames you want -- ex. if you are doing 15 FPS, and want 3 seconds, you'll need 45 of them:

Unix:
Code:
for i in {1..45};do cat bottom_anim.rgb >> bottom_anim;done
rm bottom_anim.rgb

Windows (double-up the percents for use in .bat):
Code:
for /l %x in (1, 1, 45) do copy /b bottom_anim.rgb bottom_anim.frame.%x
copy /b bottom_anim.frame.* bottom_anim
del *.frame.*
del bottom_anim.rgb

I use a static image for my bottom screen (instructions to hold 'start' for options, gets to my ctrbootmanager9) for 3 seconds, top is an animated 3ds logo for same 3 seconds.
 

Docmudkipz

Novice
Member
Joined
Mar 16, 2016
Messages
327
Trophies
0
Location
Staring at my computer case's window
XP
307
Country
United States
It'd be pretty easy to support an image coming in, ex. use ImageMagick:

Code:
convert 3ds_holdstart.psd -flatten -channel BGR -separate -channel RGB -combine -rotate 90 bottom_anim.rgb

Then you just need to append the output to itself for however many frames you want -- ex. if you are doing 15 FPS, and want 3 seconds, you'll need 45 of them:

Unix:
Code:
for i in {1..45};do cat bottom_anim.rgb >> bottom_anim;done
rm bottom_anim.rgb

Windows (double-up the percents for use in .bat):
Code:
for /l %x in (1, 1, 45) do copy /b bottom_anim.rgb bottom_anim.frame.%x
copy /b bottom_anim.frame.* bottom_anim
del *.frame.*
del bottom_anim.rgb

I use a static image for my bottom screen (instructions to hold 'start' for options, gets to my ctrbootmanager9) for 3 seconds, top is an animated 3ds logo for same 3 seconds.
I take that back, I'm blind. Other than that, zes you are a man.
 
Last edited by Docmudkipz,

K0nr4d

Active Member
Newcomer
Joined
Mar 13, 2016
Messages
28
Trophies
0
Age
24
XP
99
Country
Gambia, The
Kinda late but run
Code:
 ffmpeg -i <input>
and double check the fps. The only thing outside of the sd card at this point in the payload that would slow it down is an improper framerate. Send the file to me if it still gives you trouble and I can see what I can do
I think I may have found what causes the slow animation speed. When I remove the animation for the top screen which is a simple image which I edited to an video it runs perfectly with the full speed. I don't know why this happens but at least I know now where I have to troubleshoot now. I will let you know if I found out what's wrong. :)
 

Docmudkipz

Novice
Member
Joined
Mar 16, 2016
Messages
327
Trophies
0
Location
Staring at my computer case's window
XP
307
Country
United States
I think I may have found what causes the slow animation speed. When I remove the animation for the top screen which is a simple image which I edited to an video it runs perfectly with the full speed. I don't know why this happens but at least I know now where I have to troubleshoot now. I will let you know if I found out what's wrong. :)
Oh, so you had both screens, that explains it completely. Might be fixed in a later update
 

pbanj

The "friendly" neighborhood sandwich
Member
Joined
Dec 29, 2014
Messages
2,759
Trophies
1
Location
in a ziploc
Website
pbanjin.space
XP
1,695
Country
United States
I think I may have found what causes the slow animation speed. When I remove the animation for the top screen which is a simple image which I edited to an video it runs perfectly with the full speed. I don't know why this happens but at least I know now where I have to troubleshoot now. I will let you know if I found out what's wrong. :)
That's why, if using top and bottom u need to keep the fps low.
 

zes

Well-Known Member
Newcomer
Joined
Mar 26, 2016
Messages
46
Trophies
0
Age
54
XP
112
Country
United States
Oh, so you had both screens, that explains it completely. Might be fixed in a later update

I have a custom bootanim9 build at home I could post when I'm back in town -- built off some early version, tweaked to add a byte to 'config' file for duration in seconds. Makes it so you can display static images or shorter 'anims' (sits on last frame) until duration reached, without redundant data stored to & read from the SD card, and without needless refreshes on either screen. I'd guess if the original dev wanted that functionality he could add it quickly, though, maybe file a feature request on the github (took me a few minutes to add for myself personally, and I'm no great shakes at 3ds dev.)
 

RednaxelaNnamtra

Well-Known Member
Member
Joined
Dec 8, 2011
Messages
1,213
Trophies
1
XP
3,396
Country
Germany
I have a custom bootanim9 build at home I could post when I'm back in town -- built off some early version, tweaked to add a byte to 'config' file for duration in seconds. Makes it so you can display static images or shorter 'anims' (sits on last frame) until duration reached, without redundant data stored to & read from the SD card, and without needless refreshes on either screen. I'd guess if the original dev wanted that functionality he could add it quickly, though, maybe file a feature request on the github (took me a few minutes to add for myself personally, and I'm no great shakes at 3ds dev.)
If the animation has only 1 frame it should not affect the framerate, so it should be the same as a splash for one screen.
 

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
I have a custom bootanim9 build at home I could post when I'm back in town -- built off some early version, tweaked to add a byte to 'config' file for duration in seconds. Makes it so you can display static images or shorter 'anims' (sits on last frame) until duration reached, without redundant data stored to & read from the SD card, and without needless refreshes on either screen. I'd guess if the original dev wanted that functionality he could add it quickly, though, maybe file a feature request on the github (took me a few minutes to add for myself personally, and I'm no great shakes at 3ds dev.)
Right now I'm trying to get a plaintext framerate working but life's been tough with me, too much to study. But the main idea is to load 2 bytes off of 'config', get that thing atoi()'d and set the framerate to the data obtained.

The seconds thing is pretty easy as well, just set maxframes to framerate*number of seconds you want
 

MadMageKefka

Well-Known Member
Member
Joined
Apr 28, 2016
Messages
1,672
Trophies
0
Age
36
Location
World of ruin
XP
1,915
Country
United States
Any chance I could get some help? I've made some animations on my own and tested a few of the pre-made ones, and everything runs slower than it should. I have tested on both a 200GB micro sd, and a 16GB micro sd, both are class 10 80Mbps read speed / 15Mbps write speed sandisc cards. I have defragged the entire sd card and reformatted to 64 sized clusters. I am using release v0.5. I am converting from a 30 fps mp4 file ripped from a youtube video at 360p. I ONLY have a top-screen animation, no bottom screen. When I convert the mp4, I take the file "30" out of the config folder and put it in the same folder as the bat, along with the mp4. Then I drag the mp4 to the .bat and it creates the config file and the anim file, and the 30 file gets removed / renamed / whatever it does. I have ffmpeg installed and my path defined. No matter what I do though, the animations always run MUCH slower than they should. Am I doing something wrong? Did I miss something? I will include a link to the animation I made if anyone wants to test it out. Thanks in advance for any assistance.

http://en.file-upload.net/download-11526678/anim.zip.html
 

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
Any chance I could get some help? I've made some animations on my own and tested a few of the pre-made ones, and everything runs slower than it should. I have tested on both a 200GB micro sd, and a 16GB micro sd, both are class 10 80Mbps read speed / 15Mbps write speed sandisc cards. I have defragged the entire sd card and reformatted to 64 sized clusters. I am using release v0.5. I am converting from a 30 fps mp4 file ripped from a youtube video at 360p. I ONLY have a top-screen animation, no bottom screen. When I convert the mp4, I take the file "30" out of the config folder and put it in the same folder as the bat, along with the mp4. Then I drag the mp4 to the .bat and it creates the config file and the anim file, and the 30 file gets removed / renamed / whatever it does. I have ffmpeg installed and my path defined. No matter what I do though, the animations always run MUCH slower than they should. Am I doing something wrong? Did I miss something? I will include a link to the animation I made if anyone wants to test it out. Thanks in advance for any assistance.

http://en.file-upload.net/download-11526678/anim.zip.html

Try converting the mp4 to 15 fps in the script but taking the file 30 and use that one, should make it faster
 
  • Like
Reactions: MadMageKefka

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
Worked like a charm! Thanks so much. =)
You'll lose a couple of frames, but seeing that it works fine makes me happy. Maybe I'll add a small "Troubleshooting" section to address these issues

Is there a way to make the animation longer without using up boot time?
Nope, not at all. The thing that takes a long time to boot is the main FIRM, it's not a problem of the CFW (if you use a debugger, you'll see that most CFWs have done their job in a second or less, the FIRM running is what takes time)
 

Stack3r

Shizuo Heiwajima
Member
Joined
Jan 24, 2014
Messages
980
Trophies
0
Age
31
Location
Ikebukuro
XP
1,472
Okay gotcha, is there a way to make the animation longer so it doesnt just cut off and you have a black screen for a long time?
 

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
Okay gotcha, is there a way to make the animation longer so it doesnt just cut off and you have a black screen for a long time?
Well, there's an issue in that reasoning, because both BootAnim9 and most (if not all) public CFWs also clear the screens to black, so even if you modified BA9 not to do it (see here) the CFW will still do it, so it's not possible unless you're willing to maintain a lot of mods.
Even then, the firmware itself does it as well, so it's not a good idea overall.
 

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
Okay gotcha, is there a way to make the animation longer so it doesnt just cut off and you have a black screen for a long time?
Well, there's an issue in that reasoning, because both BootAnim9 and most (if not all) public CFWs also clear the screens to black, so even if you modded BA9 to not clear to black
 
Status
Not open for further replies.

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    AncientBoi @ AncientBoi: :O @SylverReZ just got banned in russia ! :ohnoes::ohnoes::rofl2: +2