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: 
jayseattle
Level 7

roSlideShow equivalent?

I know that roSlideShow is being deprecated.
https://sdkdocs.roku.com/display/sdkdoc/roSlideShow

Having a hard time finding an equivalent SceneGraph code chunk to display images from a CDN.

Any info appreciated!
0 Kudos
4 Replies
squirreltown
Level 8

Re: roSlideShow equivalent?

Can't help with the chunk, but if find you have to do it yourself, a slideshow seems like about the easiest thing you could choose to build with Scenegraph - relatively speaking.
Kinetics Screensavers
0 Kudos

Re: roSlideShow equivalent?

I am new to Scene Graph. I too am interested in how we can easily create a slideshow from CDN content. A looping picture frame. I tried using the FadeScreensaver as a channel, but the images do not show. I think it is expecting images within the app pkg:/ folder itself.
BRIGHTSCRIPT: ERROR: roSGNode.AddReplace: unknown failure: pkg:/components/ScreensaverFade.brs(7)

ScreensaverFade.brs Line 7:
m.BackgroundArt.uri = m.pictures[m.count]
0 Kudos
drew-man
Level 7

Re: roSlideShow equivalent?

Did you ever figure this out? I'm new to Roku and trying to do the same thing!
0 Kudos
norcaljohnny
Level 7

Re: roSlideShow equivalent?

"drew-man" wrote:
Did you ever figure this out? I'm new to Roku and trying to do the same thing!

Here is a simple slideshow I use. I use a timer to increment the item index every 6 seconds. I usually have a set of thumbnails underneath it that animates on itemFocused with a blurred fullscreen fading background but since I cant upload components and structures I shared a 1 doc component. Also you do need the standard content reader task to render the files.

<?xml version="1.0" encoding="utf-8" ?>
<component name="Slideshow" extends="Scene">
<children>

<Postergrid
id = "postergrid"
translation = "[ 0, 0 ]"
basePosterSize="[1280,720]"
useAtlas="false"
posterDisplayMode="scaleToFit"
itemSpacing="[0,0]"
numColumns="2"
numRows="1"
drawFocusFeedback = "false" />

<Timer
id="testTimer"
repeat="true"
duration="6" />

  </children>
<!-- BrightScript Portion -->
<script type="text/brightscript" >
<![CDATA[

function init()
m.top.setFocus(true)
m.testtimer = m.top.findNode("testTimer")
m.testtimer.ObserveField("fire","reanimateit")
m.postergrid = m.top.findNode("postergrid")
m.postergrid.observeField("itemFocused", "setposter")
m.postergridTask = createObject("roSGNode", "ContentReader")
m.postergridTask.contenturi = "http://yourXMLfileHere"
m.postergridTask.observeField("content", "showpostergrid")
m.postergridTask.control = "RUN"
end function

sub showpostergrid()
m.postergrid.content = m.postergridTask.content
m.postergrid.setFocus(true)
animateit()
end sub

sub animateit()
m.item = m.postergrid.itemFocused
m.testtimer.control = "start"
end sub

sub reanimateit()
m.item++
m.postergrid.animateToItem=m.item
end sub


]]>
</script>
<!-- End of BrightScript Portion -->
</component>
0 Kudos