Forum Discussion

dabulls312's avatar
dabulls312
Visitor
10 years ago

Hide "Retrieving" Screen

Hi all,

I'm new to developing and am working on an intro level channel that will be playing a live stream. I've included a splash screen in the manifest file that shows up for approximately 3 seconds before the stream begins playing. In between the splash screen and the stream, I get the loading bar that is labelled "retrieving".

Is there any way to remove or hide the "retrieving" screen? I would imagine it's just a matter of keeping the splash screen up there while the stream is loading, but I have no idea on how to go about this.

Below is the basic code. Thanks in advance.

Sub RunUserInterface()
screenFacade = CreateObject("roPosterScreen")
screenFacade.show()

port = CreateObject("roMessagePort")
videoScreen = CreateObject("roVideoScreen")
videoScreen.setMessagePort(port)
videoScreen.SetPositionNotificationPeriod(10)

videoclip = {}
videoclip.StreamUrls = ["URL.m3u8"]
videoclip.StreamFormat = "hls"
videoclip.ContentType = "movie"
videoclip.title = "MOVIE"
videoclip.StreamBitrates = [0]
videoclip.playstart = 0
videoclip.StreamQualities = ["SD"]
videoclip.SwitchingStrategy = "full-adaptation"
videoScreen.SetContent(videoclip)

videoScreen.show()
nowpos = 0
while true
msg = wait(0, port)
if type(msg) = "roVideoScreenEvent"
if msg.isScreenClosed() then 'ScreenClosed event'
print "Closing video screen"
exit while
else if msg.isPlaybackPosition() then
nowpos = msg.GetIndex()
print nowpos
else if msg.isRequestFailed()
print "play failed: "; msg.GetMessage()
else if msg.isFullResult()
print "isFullResult"
else if msg.isPartialResult()
print "isPartialResult, nowpos = ";nowpos
else if msg.isStreamStarted()
print "isStreamStarted"
else
print "Unknown event: "; msg.GetType(); " msg: "; msg.GetMessage()
end if
else
print "Event: ";type(msg)
print msg.GetInfo()
end if
end while

print "Exiting app"
screenFacade.showMessage("")
sleep(25)
End Sub

4 Replies

  • "dabulls312" wrote:
    Anyone?

    You can't do this with roVideoScreen. Use roVideoPlayer instead.

    Here's a trivial example:

    Sub Main ()
    ' Common port used by roImageCanvas and roVideoPlayer
    port = CreateObject ("roMessagePort")

    ' Create roImageCanvas
    ui = CreateObject ("roImageCanvas")
    ui.SetMessagePort (port)
    ui.SetLayer (0, {Color: "#00000000"})
    ui.Show ()

    ' Create roVideoPlayer
    vi = CreateObject ("roVideoPlayer")
    vi.SetMessagePort (port)
    vi.SetContentList ([
    {
    StreamFormat: "mp4",
    Stream: {
    Url: "http://techslides.com/demos/sample-videos/small.mp4",
    Bitrate: 2000,
    Quality: False,
    StreamType: "mp4"
    }
    }
    ])
    vi.Play ()

    ' Event loop
    While True
    msg = Wait (0, port)
    ' Event handling goes here ...
    End While

    End Sub


    For more detail, see the Custom Video Player SDK example, http://sourceforge.net/projects/rokusdkexamples/files/customvideoplayer.zip/download
  • dabulls312,
    it is very annoying for roku developer that he can't experiment too much in case of their is predifine TEXT for some component. i have suffered lot in case of some component also.
    As per concern your query YOU CAN'T change or hide text for rovideoScreen.
    For this there is roVideoplayer-> here you can custom change your player as you want.
    and for placing your text or screen in case of retrieving you can use imagecanvas with it.
    😄 😄 😄 good luck:D 😄 😄