Are you using double buffering? What does your memory look like prior to playing the video?
Some things I would try, don't know if they would help but:
1 - you say you use one roscreen and then create an rovideoplayer after a selection is made
Try creating the rovideoplayer when you create the roScreen at the start of your program,
Grabbing the crucial memory that you need at the beginning may change how it is allocated
later on. This of course depends on how the firmware manages memory. You don't need
to show it . just do not punch the 'proverbial' hole until a selection is made. Or use my nemesis:
set the windows redraw flag to true
2 - Try hooking in an roSystemLog component. This requires you to adhere to the rules set forth
In the documentation. But it may pick up other information that is not sent to you in any of the
component events. Set all the flags on and you just might pick up something additional during video execution
I use it in my application and it has added some additional information
3 - In roVideoPlayer isStatusMessage event make sure you examine every message that comes in by
adding an 'else' after all 'known' messages. This is where I find that my most helpful error messages
come in. The documentation is not updated on this and more messages than the standard
if "startup progress", else if "start of play", else if "end of stream", else if "playback stopped", else
(yes there is an else) and it can be an HTTP error. In my application one is sent that is not
recorded in the isRequestFailed. As a matter of fact, the error message that comes in during the
is RequestFailed is not even related to what actually happened. But the "HTTP" error that comes in
via the isStatusMessage is right on the money. Also my roSystemLogEvent picks up the correct error
message
Like I said, some things you can at least try
My Channels: 2D API Framework Presentation: https://owner.roku.com/add/2M9LCVC
Updated: 11-11-2015 - Completed Keyboard interface
The Joel Channel ( Final Beta )