iOS 360 Video - Random Black screen when using seek()

  • Hello again,

    I'm working on a project, where I have 1 long video file (5 minutes), and I'm basically using the seek() method of the video player to "change" locations, enable hotspots etc.
    This ensures that It's quick, and the user only has to load the video once up front.

    I'm using KRPANO 1.19 Pre release 2

    Code is below.

    The issue is this:
    On iOS, when seeking the video (via user clicks etc), after a few location changes (i.e. after a few seek() calls) the screen goes completely BLACK. The audio still plays (since I'm using the .mp3 hack for iOS), but the video doesn't play. No normal way to replicate. Sometimes it happens with 2 location changes (seek()) or other times with about 10.

    It seems it's some type of rendering bug with WebGL?
    Im on an iPhone 6, so it's quite fast and performance isn't too bad.

    The video file is only 720 x 360 pixels, so again, nothing too crazy.

    Thoughts / Help?

    Code
    <action name="playScene">
            plugin[video].play();                 if(%1 == scene1,
                plugin[video].seek(349);            set(hotspot[hotspot1].visible, true);        );
            if(%1 == scene2,             plugin[video].seek(160);            set(hotspot[hotspot2].visible, true);        );
            if(%1 == scene3,            plugin[video].seek(172);            set(hotspot[hotspot3].visible, true);        );
  • Hi,

    that's unfortunately an iOS bug, from krpano side everything is okay - the video is right, the seeking is right, the rendering is right, but iOS is sometimes only giving black videos frames when trying to upload the video frame to the WebGL texture...

    Best regards,
    Klaus

  • THanks for replying Klaus,

    Sorry for the delayed reply, but I was just wondering if there is any javascript event to know when this happens?


    E.g. I know that the native <canvas> element has events such as "onerror", "oninvalid", "onratechange" (the list goes on). So I'm curious if there is anything that gets fired when this weird IOS error occurs?

    Thanks again!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!