Roku Developer Program

Developers and content creators—a complete solution for growing an audience directly.
cancel
Showing results for 
Search instead for 
Did you mean: 
sonnykr
Level 7

[Solved] Secondary splash screen (transition issue)

Hi All,

In my app, I use a secondary splash screen, which is launched right after the roku default splash screen. The secondary splash screen does a bunch of API calls before launching the app.

What happens right now is, the roku default splash screen will show up, and there is almost 500ms-1sec delay (black screen) before loading the secondary (my custom) splash screen. I am loading the custom splash screen immediately when brightscript code starts executing. Still I see a black screen in between them. Is there a way to make this transition seemless?

Thanks.
0 Kudos
15 Replies
TheEndless
Level 7

Re: Secondary splash screen (transition issue)

I believe you'll find that this behavior is limited to the Roku 1, Roku 2, and Roku LT devices. It doesn't happen on the previous generation Rokus, the streaming stick, the Roku 3, or the Roku TV. I haven't found any way to prevent it.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
sonnykr
Level 7

Re: Secondary splash screen (transition issue)

I get this behavior on Roku 3
0 Kudos
TheEndless
Level 7

Re: Secondary splash screen (transition issue)

"sonnykr" wrote:
I get this behavior on Roku 3

Are you using an roImageCanvas or an roScreen for your splash? If the latter, then there's no way to avoid the black screen flash. It happens anytime you instantiate an roScreen. roImageCanvas is probably the better option for a splash screen, and behaves as I described above.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
squirreltown
Level 8

Re: Secondary splash screen (transition issue)

"TheEndless" wrote:
"sonnykr" wrote:
I get this behavior on Roku 3

Are you using an roImageCanvas or an roScreen for your splash? If the latter, then there's no way to avoid the black screen flash. It happens anytime you instantiate an roScreen. roImageCanvas is probably the better option for a splash screen, and behaves as I described above.


Right. But if you have a roScreen-based app, you're going to get a black screen whenever you create it so the canvas splash doesn't help you, which is the reason I start with a plain black splash and fade up whatever I'm going to - its the only way to "hide" the issue.
Kinetics Screensavers
0 Kudos
belltown
Level 7

Re: Secondary splash screen (transition issue)

I haven't seen this behavior, at least on my Roku 2XS. I do use an roScreen for most of the UI, although I start off by displaying an roImageCanvas as a facade layer immediately, while the channel is doing its initialization, before that first roScreen is displayed. There is no black-screen-ness or flashing or any sign whatsoever of the transition between the Roku system splash screen, and the display of the same splash screen in my channel:


Sub Main ()
facade = CreateObject ("roImageCanvas")
If CreateObject ("roDeviceInfo").GetDisplayMode () <> "480i"
facade.SetLayer (0, {Url: "pkg:/images/ChannelSplashHD-1280x720.jpg"})
Else
facade.SetLayer (0, {Url: "pkg:/images/ChannelSplashSD-720x480.jpg"})
EndIf
facade.Show ()

' Do lots of initialization stuff

' Display the main UI roScreen


There is a momentary black flash when the first roScreen is created after all the initialization code, but at least it doesn't interrupt the splash screen, which is what sonnykyr seemed to be concerned about.
https://github.com/belltown/
0 Kudos
squirreltown
Level 8

Re: Secondary splash screen (transition issue)

"belltown" wrote:
I haven't seen this behavior, at least on my Roku 2XS. ......
There is a momentary black flash when the first roScreen is created after all the initialization code, but at least it doesn't interrupt the splash screen, which is what sonnykyr seemed to be concerned about.


I have a 2XS also, and when I say black screen, I mean 10-20ms, it still bugs me and it should be fixed, because it makes me or the box look bad, and I don't want either.
Kinetics Screensavers
0 Kudos
belltown
Level 7

Re: Secondary splash screen (transition issue)

"squirreltown" wrote:
"belltown" wrote:
I haven't seen this behavior, at least on my Roku 2XS. ......
There is a momentary black flash when the first roScreen is created after all the initialization code, but at least it doesn't interrupt the splash screen, which is what sonnykyr seemed to be concerned about.


I have a 2XS also, and when I say black screen, I mean 10-20ms, it still bugs me and it should be fixed, because it makes me or the box look bad, and I don't want either.

I agree. It's almost imperceptible, but still looks rather tacky and makes the developer look less than professional. I get that same feeling every time I run the Amazon Instant Video Channel on my Roku2XS & SD TV. Whoever put that together didn't pay much attention to detail. The custom splash screen looks like it's supposed to be the same as the main splash screen, except with some "Loading ..." text displayed beneath the logo. The problem is that the custom splash image is slightly larger than the main splash image so there's a very noticeable, jarring-like transition between the two. Very tacky.
https://github.com/belltown/
0 Kudos
TheEndless
Level 7

Re: Secondary splash screen (transition issue)

"belltown" wrote:
I haven't seen this behavior, at least on my Roku 2XS.

As I said above, when using the roImageCanvas for your secondary splash screen, it only flashes to black for a split second on the Roku LT, Roku1, and Roku 2.

"squirreltown" wrote:
Right. But if you have a roScreen-based app, you're going to get a black screen whenever you create it so the canvas splash doesn't help you, which is the reason I start with a plain black splash and fade up whatever I'm going to - its the only way to "hide" the issue.

I think you missed the point. This splash screen is being displayed as the first screen of the app, so it doesn't need to be an roScreen. Display an roImageCanvas to avoid the flicker (except on the models noted above), then do a clunky fade to black on that splash screen to make a smooth transition into your roScreen based UI.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
squirreltown
Level 8

Re: Secondary splash screen (transition issue)

"TheEndless" wrote:

I think you missed the point. This splash screen is being displayed as the first screen of the app, so it doesn't need to be an roScreen. Display an roImageCanvas to avoid the flicker (except on the models noted above), then do a clunky fade to black on that splash screen to make a smooth transition into your roScreen based UI.


Well, I don't feel like i missed the point. Doing a dip to black is certainly an option, and if you like it thats fine. Personally it's one I've discarded. You are forced to fade in the roScreen if you don't want to see its underwear so I choose to get it over with early - for me its the best choice, but these are aesthetic work-arounds to deal with a bad technical situation.
Kinetics Screensavers
0 Kudos