"RokuMarkn" wrote:
You say it "does not stream". Does that mean it fails to play at all, or just that it buffers for a long time before playing? What if you just use the simplevideoplayer example and put your URL in there? I did that and the video starts in about 2-4 seconds. If it still takes a long time for you it may be related to your local network conditions.
--Mark
"NewManLiving" wrote:
Tried it on your server. Took an average of 7 seconds, 12 - 15 at times on my box
---- AA ----
stream: (assocarr)...
url: http://guitar.objects.cdn.dream.io/VIDEOS/CCRyderB.m4v
streamformat: mp4
------------
"RokuChris" wrote:"NewManLiving" wrote:
Tried it on your server. Took an average of 7 seconds, 12 - 15 at times on my box
Similar results here. I'm seeing it consistently take 7-10s on Roku 3 with a wired connection. Maybe if you share exactly what your content-meta-data looks like that could provide a hint.
I am using CrossFTP would this be the correct information below?
Thanks for your help! I have the permission set to Full for myself and public set to Read only_____________________________
Constant Headers Constant Headers
ETag "eecf2f4b096937e587c68a869f591949-7"
__complete__ {ETag="eecf2f4b096937e587c68a869f591949-7", Date=Mon Apr 13 08:51:00 EDT 2015, Content-Length=106037735, x-amz-meta-crossftp-original-file-date-iso8601=2015-04-08T12:49:01.000Z, Last-Modified=Fri Apr 10 12:13:02 EDT 2015, Content-Type=video/x-m4v, Accept-Ranges=bytes, Server=Apache}
Date Mon Apr 13 08:51:00 EDT 2015
Content-Length 106037735
__service__ {}
Last-Modified Fri Apr 10 12:13:02 EDT 2015
__user__ {crossftp-original-file-date-iso8601=2015-04-08T12:49:01.000Z}
Modifiable Headers Modifiable Headers
crossftp-original-file-date-iso8601 2015-04-08T12:49:01.000Z
Content-Type video/x-m4v
________________________---- AA ----
stream: (assocarr)...
url: http://guitar.objects.cdn.dream.io/VIDEOS/CCRyderB.m4v
streamformat: mp4
------------
Sub Main()
hideL = -1
backL = 0
helloL = 1
videoL = 2
promptL = 3
messageL = 4
playerRect = { x: 50, y: 120, w: 630, h:452 }
punchRect = playerRect
back = { Color:"#FFFFFFFF", CompositionMode:"Source"}
hello ={
Text:"Press Ok To Start Movie, Back To Exit"
TextAttrs:{Color:"#FFCCCCCC", Font:"Medium",
HAlign:"HCenter", VAlign:"VCenter",
Direction:"LeftToRight"}
TargetRect:{x:100 + 630 + 10,y: 120 + 30,w:500,h:60}
}
prompt ={
Text: "TIME TO LOAD: " + " 0 " + "SECONDS "
TextAttrs:{Color:"#FFCCCCCC", Font:"Medium",
HAlign:"HCenter", VAlign:"VCenter",
Direction:"LeftToRight"}
TargetRect:{x:100 + 630 + 10,y: 120 + 30 + 60,w:500,h:60}
}
message ={
Text: "Video Player Is Stopped"
TextAttrs:{Color:"#FFCCCCCC", Font:"Medium",
HAlign:"HCenter", VAlign:"VCenter",
Direction:"LeftToRight"}
TargetRect:{x:0,y: 120 + 452 + 20,w:1280,h:60}
}
video = {
Color: "#00000000"
TargetRect: punchRect
CompositionMode: "Source" }
content = {
Stream: {
url: "http://guitar.objects.cdn.dream.io/VIDEOS/CCRyderB.m4v"
bitrate: 128
quality: True
contentId: "video"
}
StreamFormat: "mp4"
SwitchingStrategy: "full-adaptation"
}
timer = CreateObject( "roTimeSpan" )
canvas = CreateObject( "roImageCanvas" )
port = CreateObject( "roMessagePort" )
canvas.SetMessagePort(port)
VPlayer = CreateObject( "roVideoPlayer" )
VPlayer.SetMessagePort( port )
VPlayer.SetDestinationRect( playerRect )
VPlayer.AddContent( content )
canvas.SetLayer( backL , back )
canvas.SetLayer( videoL, video )
canvas.SetLayer( helloL, hello )
canvas.SetLayer( promptL, prompt )
canvas.SetLayer( messageL, message )
canvas.Show()
while(true)
msg = wait(0,port)
if type(msg) = "roImageCanvasEvent" then
if (msg.isRemoteKeyPressed()) then
i = msg.GetIndex()
if (i = 0) then
VPlayer.Stop()
canvas.close()
else if i = 6
VPlayer.Stop()
prompt.Text = "TIME TO LOAD: " + " 0 " + "SECONDS "
canvas.SetLayer( promptL, prompt )
canvas.Show()
sleep( 200 )
timer.Mark()
VPlayer.Play()
end if
else if (msg.isScreenClosed()) then
print "Closed"
return
end if
else if type(msg) = "roVideoPlayerEvent" then
message.Text = msg.GetIndex().ToStr() + " " + msg.GetMessage()
canvas.SetLayer( messageL, message )
canvas.Show()
if msg.GetMessage() = "start of play"
prompt.Text = "TIME TO LOAD: " + timer.TotalSeconds().ToStr() + " SECONDS"
canvas.SetLayer( promptL, prompt )
canvas.Show()
else
prompt.Text = "LOADING: " + timer.TotalSeconds().ToStr() + " SECONDS"
canvas.SetLayer( promptL, prompt )
canvas.Show()
end if
end if
end while
End Sub
"NewManLiving" wrote:
Try this. Just copy into a brs file and sideload it. With your CDN it took much longer than my amazon, but not exceeding 15 seconds on average. With My CDN it took most of the time 2 seconds. So with your CDN + DSL possibly may be the problem, although I did get 4 second times. Just change the URL to my CDN to compare.
'******************************************************
'** RokuChannelMaker Template
'** 2014
'** Copyright (c) 2014 RokuChannelMaker.com All Rights Reserved.
'******************************************************
Sub Main()
'initialize theme attributes like titles, logos and overhang color
initTheme()
'prepare the screen for display and get ready to begin
screen=preShowHomeScreen("", "")
if screen=invalid then
print "unexpected error in preShowHomeScreen"
return
end if
'set to go, time to get started
showHomeScreen(screen)
End Sub
'*************************************************************
'** Set the configurable theme attributes for the application
'**
'** Configure the custom overhang and Logo attributes
'** Theme attributes affect the branding of the application
'** and are artwork, colors and offsets specific to the app
'*************************************************************
Sub initTheme()
app = CreateObject("roAppManager")
theme = CreateObject("roAssociativeArray")
theme.OverhangOffsetSD_X = "72"
theme.OverhangOffsetSD_Y = "48"
theme.OverhangSliceSD = "pkg:/images/Overhang_Background_SD.png"
theme.OverhangLogoSD = "pkg:/images/Overhang_Logo_SD.png"
theme.BackgroundColor = "#ffffff"
theme.OverhangOffsetHD_X = "128"
theme.OverhangOffsetHD_Y = "70"
theme.OverhangSliceHD = "pkg:/images/Overhang_Background_HD.png"
theme.OverhangLogoHD = "pkg:/images/Overhang_Logo_HD.png"
app.SetTheme(theme)
End Sub
"Komag" wrote:
sideload is just the term for loading your channel onto your Roku as a developer, for testing, it's what you're already doing
' Put My main on top - include all my code of course
Sub Main()
End Sub
' Your main changed to some other name . When finished just delete my main above and change the name back to main
Sub Main2()
'initialize theme attributes like titles, logos and overhang color
initTheme()
End Sub