campbellwang
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
01:08 PM
Re: HTTP Live Streaming Now Available For Developers
"RokuMarkn" wrote:
campbellwang, from the logs it looks like you may be setting the StreamFormat to "mp4" rather than "hls". Can you check that, and if you think that's not the issue, please post or PM me the code you're using to create your VideoScreen.
--Mark
Okay, I will need to get back to you tomorrow then. Thanks
CDNOne.com | CDNTwo.com
PRIZM
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
03:03 PM
Re: HTTP Live Streaming Now Available For Developers
i will try this Mark I will let you know in a min...
"RokuMarkn" wrote:
campbellwang, from the logs it looks like you may be setting the StreamFormat to "mp4" rather than "hls". Can you check that, and if you think that's not the issue, please post or PM me the code you're using to create your VideoScreen.
--Mark
PRIZM
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
03:10 PM
Re: HTTP Live Streaming Now Available For Developers
Tried like this <streamFormat>mp4</streamFormat> and still got the progress bar starting to load then back to springboard,. Hmmm...
PRIZM
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
03:11 PM
Re: HTTP Live Streaming Now Available For Developers
Oops Sorry <streamFormat>hls</streamFormat>
"PRIZM" wrote:
Tried like this <streamFormat>mp4</streamFormat> and still got the progress bar starting to load then back to springboard,. Hmmm...
PRIZM
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
03:15 PM
Re: HTTP Live Streaming Now Available For Developers
This is my appVideoScreen.brs that I am using:
Function showVideoScreen(episode As Object)
if type(episode) <> "roAssociativeArray" then
print "invalid data passed to showVideoScreen"
return -1
endif
port = CreateObject("roMessagePort")
screen = CreateObject("roVideoScreen")
screen.SetMessagePort(port)
screen.Show()
screen.SetContent(episode)
screen.Show()
'Uncomment his line to dump the contents of the episode to be played
'PrintAA(episode)
while true
msg = wait(0, port)
if type(msg) = "roVideoScreenEvent" then
print "showHomeScreen | msg = "; msg.getMessage() " | index = "; msg.GetIndex()
if msg.isScreenClosed()
print "Screen closed"
exit while
elseif msg.isRequestFailed()
print "Video request failure: "; msg.GetIndex(); " " msg.GetData()
elseif msg.isStatusMessage()
print "Video status: "; msg.GetIndex(); " " msg.GetData()
elseif msg.isButtonPressed()
print "Button pressed: "; msg.GetIndex(); " " msg.GetData()
else
print "Unexpected event type: "; msg.GetType()
end if
else
print "Unexpected message class: "; type(msg)
end if
end while
End Function
Function showVideoScreen(episode As Object)
if type(episode) <> "roAssociativeArray" then
print "invalid data passed to showVideoScreen"
return -1
endif
port = CreateObject("roMessagePort")
screen = CreateObject("roVideoScreen")
screen.SetMessagePort(port)
screen.Show()
screen.SetContent(episode)
screen.Show()
'Uncomment his line to dump the contents of the episode to be played
'PrintAA(episode)
while true
msg = wait(0, port)
if type(msg) = "roVideoScreenEvent" then
print "showHomeScreen | msg = "; msg.getMessage() " | index = "; msg.GetIndex()
if msg.isScreenClosed()
print "Screen closed"
exit while
elseif msg.isRequestFailed()
print "Video request failure: "; msg.GetIndex(); " " msg.GetData()
elseif msg.isStatusMessage()
print "Video status: "; msg.GetIndex(); " " msg.GetData()
elseif msg.isButtonPressed()
print "Button pressed: "; msg.GetIndex(); " " msg.GetData()
else
print "Unexpected event type: "; msg.GetType()
end if
else
print "Unexpected message class: "; type(msg)
end if
end while
End Function

RokuMarkn
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
03:57 PM
Re: HTTP Live Streaming Now Available For Developers
The important thing is what is in your episode object. You must set episode.StreamFormat = "hls".
For a working example using your URL, you can modify the SimpleVideoPlayer example like this:
1. Edit appMain.brs and change the line
videoclip.StreamFormat = "mp4"
to
videoclip.StreamFormat = "hls"
2. Change the line
urls = ["http://video.ted.com/talks/podcast/DanGilbert_2004_480.mp4"]
to
urls = ["http://iphoned5.akamai.com.edgesuite.net/mhbarron/nasatv/nasatv_all.m3u8"]
3. Rebuild the zip file and install it on your Roku box.
--Mark
For a working example using your URL, you can modify the SimpleVideoPlayer example like this:
1. Edit appMain.brs and change the line
videoclip.StreamFormat = "mp4"
to
videoclip.StreamFormat = "hls"
2. Change the line
urls = ["http://video.ted.com/talks/podcast/DanGilbert_2004_480.mp4"]
to
urls = ["http://iphoned5.akamai.com.edgesuite.net/mhbarron/nasatv/nasatv_all.m3u8"]
3. Rebuild the zip file and install it on your Roku box.
--Mark
PRIZM
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
04:11 PM
Re: HTTP Live Streaming Now Available For Developers
Im basing this off of the videoplayer example by using an XML would this still apply the same way or how would it be passed to the roVideoScreen object from the XML????
"RokuMarkn" wrote:
The important thing is what is in your episode object. You must set episode.StreamFormat = "hls".
For a working example using your URL, you can modify the SimpleVideoPlayer example like this:
1. Edit appMain.brs and change the line
videoclip.StreamFormat = "mp4"
to
videoclip.StreamFormat = "hls"
2. Change the line
urls = ["http://video.ted.com/talks/podcast/DanGilbert_2004_480.mp4"]
to
urls = ["http://iphoned5.akamai.com.edgesuite.net/mhbarron/nasatv/nasatv_all.m3u8"]
3. Rebuild the zip file and install it on your Roku box.
--Mark
Anonymous
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
04:18 PM
Re: HTTP Live Streaming Now Available For Developers
It would work the same way, but you've got to parse the XML, pull out the relevant fields and set up the roAssociativeArray for the video player.
"PRIZM" wrote:
Im basing this off of the videoplayer example by using an XML would this still apply the same way or how would it be passed to the roVideoScreen object from the XML????"RokuMarkn" wrote:
The important thing is what is in your episode object. You must set episode.StreamFormat = "hls".
For a working example using your URL, you can modify the SimpleVideoPlayer example like this:
1. Edit appMain.brs and change the line
videoclip.StreamFormat = "mp4"
to
videoclip.StreamFormat = "hls"
2. Change the line
urls = ["http://video.ted.com/talks/podcast/DanGilbert_2004_480.mp4"]
to
urls = ["http://iphoned5.akamai.com.edgesuite.net/mhbarron/nasatv/nasatv_all.m3u8"]
3. Rebuild the zip file and install it on your Roku box.
--Mark
PRIZM
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
04:23 PM
Re: HTTP Live Streaming Now Available For Developers
Could you show me by chance how thats done? Im a little lost on that one?
"RokuPatrick" wrote:
It would work the same way, but you've got to parse the XML, pull out the relevant fields and set up the roAssociativeArray for the video player."PRIZM" wrote:
Im basing this off of the videoplayer example by using an XML would this still apply the same way or how would it be passed to the roVideoScreen object from the XML????"RokuMarkn" wrote:
The important thing is what is in your episode object. You must set episode.StreamFormat = "hls".
For a working example using your URL, you can modify the SimpleVideoPlayer example like this:
1. Edit appMain.brs and change the line
videoclip.StreamFormat = "mp4"
to
videoclip.StreamFormat = "hls"
2. Change the line
urls = ["http://video.ted.com/talks/podcast/DanGilbert_2004_480.mp4"]
to
urls = ["http://iphoned5.akamai.com.edgesuite.net/mhbarron/nasatv/nasatv_all.m3u8"]
3. Rebuild the zip file and install it on your Roku box.
--Mark

RokuDaveW
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
04:30 PM
Re: HTTP Live Streaming Now Available For Developers
It looks like there's a bug in the videoplayer sample application. The StreamFormat should not be an array element in the XML. To work around this add the following line immediately before the call to SetContent() in appVideoScreen.brs.
To use the value that was passed in the XML data:
episode.StreamFormat = episode.StreamFormats[0]
--or--
To force it to use HLS for everything:
episode.StreamFormat = "hls"
I haven't had a chance verify this first hand, but code inspection seems to show what's wrong here. We'll fix this defect in the next release.
To use the value that was passed in the XML data:
episode.StreamFormat = episode.StreamFormats[0]
--or--
To force it to use HLS for everything:
episode.StreamFormat = "hls"
I haven't had a chance verify this first hand, but code inspection seems to show what's wrong here. We'll fix this defect in the next release.