Roku Developer Program

Join our online forum to talk to Roku developers and fellow channel creators. Ask questions, share tips with the community, and find helpful resources.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Re: Beta Scene Graph Components

"EnTerr" wrote:
@menghao, @dacian_roman23 -
guys, seems to me you pinpointed another bug in SG. Can you please try and see what's the input from this:
? type(containerSize[0]), type(containerSize[0], 3), type(containerSize[0][0]), type(containerSize[0][0], 3)
in each of the two cases (i.e. the one that did not work and the one which works if you manually re-create)?

My prediction is at least one of the four types will differ. (And no, i could not guess what exactly that is, since no idea how exactly containerSize was created initially)


Hi EnTerr,

As far as I remember, when I had this problem, I also tried to print the type of the pushed vales, for both cases and they were arrays. You can see that in the previous posts of mine . I think something with the array reference(pointer) was messing things up, but i'm not sure, it's just a supposition
0 Kudos
menghao
Visitor

Re: Beta Scene Graph Components

"EnTerr" wrote:
@menghao, @dacian_roman23 -
guys, seems to me you pinpointed another bug in SG. Can you please try and see what's the input from this:
? type(containerSize[0]), type(containerSize[0], 3), type(containerSize[0][0]), type(containerSize[0][0], 3)
in each of the two cases (i.e. the one that did not work and the one which works if you manually re-create)?

My prediction is at least one of the four types will differ. (And no, i could not guess what exactly that is, since no idea how exactly containerSize was created initially)


Hi EnTerr,

In both cases, the results are same:
roArray roArray roInteger Integer

And btw, the containerSize was created like this
containerSize = []
0 Kudos

Re: Beta Scene Graph Components

In my case every item was printed as an array . You can see the results on the previous page. Although the type statement was without "3" parameter, the results are the same even if add that parameter when printing types ..
0 Kudos
menghao
Visitor

Re: Beta Scene Graph Components

"dacian_roman23" wrote:
In my case every item was printed as an array . You can see the results on the previous page. Although the type statement was without "3" parameter, the results are the same even if add that parameter when printing types ..


Hi dacian_roman23, EnTerr

I think the parameter "3" is just used to let type() return brightScript 3 types, otherwise, it will return types in brightScript 2.

In my case, the containerSize is an array which contains arrays, that is why containerSIze[0], containerSIze[1]... are type array. and inside containerSIze[0] is the actual width and height, which should be int as well, as containerSize[0][0] is type int.
So... still cant see anything wrong here
0 Kudos
EnTerr
Roku Guru

Re: Beta Scene Graph Components

"dacian_roman23" wrote:
In my case every item was printed as an array . You can see the results on the previous page. Although the type statement was without "3" parameter, the results are the same even if add that parameter when printing types ..
I had a good reason to ask for with and without ", 3" param. If your code prints "roArray roArray roArray roArray" on what i asked, EXACTLY AS I ASKED IT - then you are feeding wrong data to SG and it should object. Last two should have been some kind of number...

"menghao" wrote:
In both cases, the results are same:
roArray         roArray         roInteger       Integer 
If in BOTH your cases (working and not working - as verified by error in console) you got this same output... well, then the explanation i had in mind did not pan out 🙂
0 Kudos
anilk1797
Visitor

Re: Beta Scene Graph Components

Hi,

Im working on a roku app using scene graph component. I am facing many issues like...

1. During video buffering i want to pause video. Im using this code but not working.
 video.control = "pause"


2. During video buffering a blank screen is displaying. I want to show last video image instead of blank screen.

3. I want to show dialog box to check internet connection on splash screen.

4. Is this possible to use BrightScript component like "roImageCanvas" or "roListScreen" in scene graph component?

Since Im working first time on brightscript so i don't know does roku supports this type of job or not.

Please suggest any ideas to fix the above issues.

Thank you
0 Kudos
anilk1797
Visitor

Re: Beta Scene Graph Components

"anilk1797" wrote:
Hi,

Im working on a roku app using scene graph component. I am facing many issues like...

1. During video buffering i want to pause video. Im using this code but not working.
 
video.control = "pause"


2. During video buffering a blank screen is displaying. I want to show last video image instead of blank screen.

3. I want to show dialog box to check internet connection on splash screen.

4. Is this possible to use BrightScript component like "roImageCanvas" or "roListScreen" in scene graph component?

Since Im working first time on brightscript so i don't know does roku supports this type of job or not.

Please suggest any ideas to fix the above issues.

Thank you


Is Scene Graph Components of Roku only developed for fun? Im not getting any reply from the roku forums. What a helll!  :cry:
0 Kudos

Re: Beta Scene Graph Components

"anilk1797" wrote:
"anilk1797" wrote:
Hi,

Im working on a roku app using scene graph component. I am facing many issues like...

1. During video buffering i want to pause video. Im using this code but not working.
 
video.control = "pause"


2. During video buffering a blank screen is displaying. I want to show last video image instead of blank screen.

3. I want to show dialog box to check internet connection on splash screen.

4. Is this possible to use BrightScript component like "roImageCanvas" or "roListScreen" in scene graph component?

Since Im working first time on brightscript so i don't know does roku supports this type of job or not.

Please suggest any ideas to fix the above issues.

Thank you


Is Scene Graph Components of Roku only developed for fun? Im not getting any reply from the roku forums. What a helll!  :cry:


Here is the bright script support reference for scene graph : https://sdkdocs.roku.com/display/sdkdoc/Scene+Graph+BrightScript+Support . From this link it seems that you can't change the background while buffering https://sdkdocs.roku.com/display/sdkdoc/Video . I don't think that you can have an option dialog in the splash screen, but you can try to make your own component that extends node or group, add a poster image, and then just use the dialog component. I can't tell what's wrong with the pause state, but you can post here the whole code.Also try to add your video component in your main scene xml, and see after that if the pause control pauses your video.Also have a look at their examples using the video component, maybe you can figure it out from there.
0 Kudos

Re: Beta Scene Graph Components

Hi again, 

Can anyone explain  why the itemContentChanged gets called two times for the same item  ? 
I'm sure that the items are created only once, but somehow this methods gets triggered two times .

Here is a sample output from debugger. I don't think this is the normal behavior. 

BrightScript Debugger> 
Current Function:
021:  function itemContentChanged() as void
022:      m.itemData = m.top.itemContent.data
023:  
024:*     stop
025:      if m.itemData.count() > 0 
026:          if m.itemData.contentType <> m.sgConstants.MENU_ROW_TILE_CONTENT_TYPE 
027:              if m.itemData.contentType = m.sgConstants.GO_TO_PROGRAM_TILE_CONTENT_TYPE
028:                  setGoToProgramTileAttributes()
STOP (runtime error &hf7) in pkg:/components/RowList/RowListItem.brs(24)
024:     stop
Backtrace:
#0  Function itemcontentchanged() As Void
   file/line: pkg:/components/RowList/RowListItem.brs(25)
Local Variables:
global           rotINTERFACE:ifGlobal
m                roAssociativeArray refcnt=3 count:16

BrightScript Debugger> ? m.itemData
<Component: roAssociativeArray> =
{
    contenttype: menu
    id: browse
    text: Shows
}

BrightScript Debugger> c

Current Function:
021:  function itemContentChanged() as void
022:      m.itemData = m.top.itemContent.data
023:  
024:*     stop
025:      if m.itemData.count() > 0 
026:          if m.itemData.contentType <> m.sgConstants.MENU_ROW_TILE_CONTENT_TYPE 
027:              if m.itemData.contentType = m.sgConstants.GO_TO_PROGRAM_TILE_CONTENT_TYPE
028:                  setGoToProgramTileAttributes()
STOP (runtime error &hf7) in pkg:/components/RowList/RowListItem.brs(24)
024:     stop
Backtrace:
#0  Function itemcontentchanged() As Void
   file/line: pkg:/components/RowList/RowListItem.brs(25)
Local Variables:
global           rotINTERFACE:ifGlobal
m                roAssociativeArray refcnt=3 count:16

BrightScript Debugger> ? m.itemData     
<Component: roAssociativeArray> =
{
    contenttype: menu
    id: browse
    text: Shows
}

BrightScript Debugger> 


Debugging  the SimpleRowList example shows exactly the same problem.Here is the output for the SimpleRowList example 
Current Function:
013:    function itemContentChanged() as void
014:*     stop
015:      itemData = m.top.itemContent
016:      m.itemImage.uri = itemData.posterUrl
017:      m.itemText.text = itemData.labelText
018:    end function
STOP (runtime error &hf7) in pkg:/components/SimpleRowListItem.xml(14)
014:     stop
Backtrace:
#0  Function itemcontentchanged() As Void
   file/line: pkg:/components/SimpleRowListItem.xml(15)
Local Variables:
global           rotINTERFACE:ifGlobal
m                roAssociativeArray refcnt=3 count:4
itemdata         <uninitialized>

BrightScript Debugger> s     
015:     itemData = m.top.itemContent

BrightScript Debugger> ? itemData 
<Component: roSGNode> =
{
    metadata: <Component: roContentMetadata>
    change: <Component: roAssociativeArray>
    focusable: false
    focusedChild: <Component: roInvalid>
    id: 
    labelText: This is item 1
    posterUrl: http://rokudev.roku.com/rokudev/samples/images/Landscape_1.jpg
}

BrightScript Debugger> c
Inside init
Leaving init

Current Function:
013:    function itemContentChanged() as void
014:*     stop
015:      itemData = m.top.itemContent
016:      m.itemImage.uri = itemData.posterUrl
017:      m.itemText.text = itemData.labelText
018:    end function
STOP (runtime error &hf7) in pkg:/components/SimpleRowListItem.xml(14)
014:     stop
Backtrace:
#0  Function itemcontentchanged() As Void
   file/line: pkg:/components/SimpleRowListItem.xml(15)
Local Variables:
global           rotINTERFACE:ifGlobal
m                roAssociativeArray refcnt=3 count:4
itemdata         <uninitialized>

BrightScript Debugger> s
015:     itemData = m.top.itemContent

BrightScript Debugger> ? itemData
<Component: roSGNode> =
{
    metadata: <Component: roContentMetadata>
    change: <Component: roAssociativeArray>
    focusable: false
    focusedChild: <Component: roInvalid>
    id: 
    labelText: This is item 1
    posterUrl: http://rokudev.roku.com/rokudev/samples/images/Landscape_1.jpg
}

BrightScript Debugger> 

0 Kudos

Re: Beta Scene Graph Components

Anyone else who had problems with the video player in 7.5 firmware ? When I try to play a video,  I can only hear the audio but  the screen is purple. 
0 Kudos