Ok, I’ve just begun to explore the development side of the Roku and I’m hitting a snag on my first attempt. I’m just trying to replace the video link in the simplevideoplayer with another link to an mp4 file hosted on the web. I’m not changing anything else in the appmain file. I’m just replacing the link and uploading the zip folder to the Roku, but the Play button does nothing. The UP button just brings up a “Retreving” message and seems to hang there. I’ve tried several link and none have worked yet.
The video itself plays fine for me. The first place to look for clues as to what’s going wrong is the debug console. Telnet to port 8085 of your Roku to access it.
Ug, that doesn’t sound good :? How do you discover the fps and other file attributes on a video file on the web? When I play it, I dont’ see any way to view the file properties. Yes, my newbiness is showing
So, I’m assuming that blip.tv must reformat these mp4 files in order to place them on their Roku channel. Seems odd but could be the case.
Thanks for the reply. Anyone else have any suggestions?
~Mark
Here’s what I get when I telnet into it. Says there’s an uninitialized variable at line 221. All I do is change the mp4 that simplevideoplayer points to. Why would that cause a variable error?
220: print "srt = ";srt
221: if srt <> invalid and srt <> “” then
222: videoclip.SubtitleUrl = srt
223: end if
224:
225: video.SetContent(videoclip)
226: video.show()
227:
228: lastSavedPos = 0
229: statusInterval = 10 'position must change by more than this number of s
econds before saving
230:
231: while true
232: msg = wait(0, video.GetMessagePort())
233: if type(msg) = “roVideoScreenEvent”
234: if msg.isScreenClosed() then 'ScreenClosed event
235: print “Closing video screen”
236: exit while
237: else if msg.isPlaybackPosition() then
238: nowpos = msg.GetIndex()
239: if nowpos > 10000
240:
241: end if
242: if nowpos > 0
243: if abs(nowpos - lastSavedPos) > statusInterval
244: lastSavedPos = nowpos
245: end if
246: end if
247: else if msg.isRequestFailed()
248: print "play failed: "; msg.GetMessage()
249: else
250: print "Unknown event: "; msg.GetType(); " msg: "; msg.GetMe
ssage()
251: endif
252: end if
253: end while
254: End Function
Use of uninitialized variable. (runtime error &he9) in …bVmMC/pkg:/source/appM
ain.brs(221)
221: if srt <> invalid and srt <> “” then
Backtrace:
Function displayvideo(args As ) As
file/line: /tmp/plugin/ICAA…bVmMC/pkg:/source/appMain.brs(221)
Function showspringboardscreen(item As ) As Boolean
file/line: /tmp/plugin/ICAA…bVmMC/pkg:/source/appMain.brs(137)
Function main(args As ) As
file/line: /tmp/plugin/ICAA…bVmMC/pkg:/source/appMain.brs(66)
it’s erroring on a line referring to the subtitles (srt file), try taking the reference to a subtitle for the video out of the code of that particular stream i.e.
'Swap the commented values below to play different video clips...
urls = ["http://video.ted.com/talks/podcast/CraigVenter_2008_480.mp4"]
qualities = ["HD"]
StreamFormat = "mp4"
title = "Craig Venter Synthetic Life"
srt = "file://pkg:/source/craigventer.srt"
remove the "srt = “file://pkg:/source/craigventer.srt” and see if that works then
I’m apparently not doing something correctly with my zipped folder that I’m uploading to Roku. I just realized that the changes I make to the appmain file aren’t showing up in the file when I Telnet in. I’ve been opening the appmain, making changes and saving. Then I drop it into my zipped folder which contains the source/images/etc. It seems like that might be working for me.
“agmark” wrote:
I’m apparently not doing something correctly with my zipped folder that I’m uploading to Roku. I just realized that the changes I make to the appmain file aren’t showing up in the file when I Telnet in. I’ve been opening the appmain, making changes and saving. Then I drop it into my zipped folder which contains the source/images/etc. It seems like that might be working for me.
Are you actually re-zipping the folder after you make your changes? From your description it sounds like you are just putting the appmain.brs into the folder without actually compressing it. That won’t work. If you’re using Windows, then in Windows Explorer go to the folder just above the ‘source’ directory where you’ve place appmain.brs (this directory should contain ‘source’, ‘images’, ‘manifest’ and ‘Makefile’), select all files (ctrl-a), then right-click over the selection and select Send To…>Compressed file or folder. You’ll end up with a .zip file in that directory that you can upload to the Roku. Make sure when you upload that you select the right zip file from the right directory.
The other thing to check is that your TV is configured as HD. If you’re using a TV set up as SD then you’ll need to change the line: qualities = [“HD”]
to qualities = [“SD”], or it won’t play.
Seem bizarre that I’m the only one having trouble with the simplevideoplayer from the SDK. I start from scratch with a working channel. Then I comment out the single
srt = “file://pkg:/source/craigventer.srt” line. Reload the channel and it won’t work. The file says to swap out the comments to play other videos. Won’t work for me.
“agmark” wrote:
Seem bizarre that I’m the only one having trouble with the simplevideoplayer from the SDK. I start from scratch with a working channel. Then I comment out the single
srt = “file://pkg:/source/craigventer.srt” line. Reload the channel and it won’t work. The file says to swap out the comments to play other videos. Won’t work for me.
Ok, here’s what I found. The simplevideoplayer app from the sdk is missing a line in the appMain file. It says you can uncomment any of the video links in the displayVideo () section. Only the first video is uncommented and it also includes a srt = line. In order to make any other video work, you need to add the line: srt = “”. At least that made it work for me and my test mp4 would play just fine. Before figuring this out, I think I tried deleting a few lines of code but didn’t seem to help.
I appreciate everyones comments while trying to figure this simple problem out. It’s a bummer when you get stuck on your first attempt at playing developer.
I do notice this when I telnet in. Is this anything to be concerned with?
Type args = roAssociativeArray
Type args.url = Invalid
showSpringboardScreen
“agmark” wrote:
How do you discover the fps and other file attributes on a video file on the web? When I play it, I dont’ see any way to view the file properties.
I’m not sure about your previous question - but to get information about a video file you can use the open source mediainfo program here: http://mediainfo.sourceforge.net/en
Given a choice I’d rather encode files that I know will 100% work, rather than take a chance that because nobody uses some format or encoding setting roku will remove it on a whim and break my content.
“agmark” wrote:
Ok, here’s what I found. The simplevideoplayer app from the sdk is missing a line in the appMain file. It says you can uncomment any of the video links in the displayVideo () section. Only the first video is uncommented and it also includes a srt = line. In order to make any other video work, you need to add the line: srt = “”. At least that made it work for me and my test mp4 would play just fine. Before figuring this out, I think I tried deleting a few lines of code but didn’t seem to help.
I appreciate everyones comments while trying to figure this simple problem out. It’s a bummer when you get stuck on your first attempt at playing developer.
I do notice this when I telnet in. Is this anything to be concerned with?
Type args = roAssociativeArray
Type args.url = Invalid
showSpringboardScreen
I’m getting the same error in my telnet session when trying to play the simplevideoplayer app. I didnt make any changes to the code and simply loaded it to the Roku2. When I play the app I get a screen like this:
Craig venter, Can we create new…
-play
-go back
I click on play and it looks like it tries to load a video then immediately jumps back to this screen.
Another question I have; is the Craig Venter screen supposed to be the first screen loaded when the app runs?
I’m getting the same error in my telnet session when trying to play the simplevideoplayer app. I didnt make any changes to the code and simply loaded it to the Roku2. When I play the app I get a screen like this:
Craig venter, Can we create new…
-play
-go back
I click on play and it looks like it tries to load a video then immediately jumps back to this screen.
Another question I have; is the Craig Venter screen supposed to be the first screen loaded when the app runs?
The first screen should be the one that has the ‘Play’ and ‘Go Back’ buttons that you described.
One thing that would account for the behavior you describe would be if your Roku were configured for an SD TV. The simplevideoplayer example app only has an HD stream defined for the Craig Venter podcast, which will not play on an SD-configured device. To fix this, change the lines that say: qualities = [“HD”] to qualities = [“SD”]. You may also be able to go into the Roku Settings screen and set your TV configuration to HD to test whether it plays.
I’m getting the same error in my telnet session when trying to play the simplevideoplayer app. I didnt make any changes to the code and simply loaded it to the Roku2. When I play the app I get a screen like this:
Craig venter, Can we create new…
-play
-go back
I click on play and it looks like it tries to load a video then immediately jumps back to this screen.
Another question I have; is the Craig Venter screen supposed to be the first screen loaded when the app runs?
The first screen should be the one that has the ‘Play’ and ‘Go Back’ buttons that you described.
One thing that would account for the behavior you describe would be if your Roku were configured for an SD TV. The simplevideoplayer example app only has an HD stream defined for the Craig Venter podcast, which will not play on an SD-configured device. To fix this, change the lines that say: qualities = [“HD”] to qualities = [“SD”]. You may also be able to go into the Roku Settings screen and set your TV configuration to HD to test whether it plays.
Thanks for this quick reply. I’ll certainly do this. Appreciate the help.
I’m getting the same error in my telnet session when trying to play the simplevideoplayer app. I didnt make any changes to the code and simply loaded it to the Roku2. When I play the app I get a screen like this:
Craig venter, Can we create new…
-play
-go back
I click on play and it looks like it tries to load a video then immediately jumps back to this screen.
Another question I have; is the Craig Venter screen supposed to be the first screen loaded when the app runs?
The first screen should be the one that has the ‘Play’ and ‘Go Back’ buttons that you described.
One thing that would account for the behavior you describe would be if your Roku were configured for an SD TV. The simplevideoplayer example app only has an HD stream defined for the Craig Venter podcast, which will not play on an SD-configured device. To fix this, change the lines that say: qualities = [“HD”] to qualities = [“SD”]. You may also be able to go into the Roku Settings screen and set your TV configuration to HD to test whether it plays.
Thanks for this quick reply. I’ll certainly do this. Appreciate the help.
Tom
.
This worked! Thanks.
Curiously, I’m still seeing this error in the telnet debugger:
Type args = roAssociativeArray
Type args.url = Invalid
showSpringboardScreen