2 Replies Latest reply on Jul 28, 2011 6:17 AM by JasonLin1234

    Streaming fault-tolerant

    JasonLin1234

      I'm making a player based on osmf 1.0 to play some streaming video segments.

      If one segment is unavailable, it would trow StreamNotFound event and pause, stop the stream.

      Is there anyway to just jump over the broken segment, and continue to play video please?

        • 1. Re: Streaming fault-tolerant
          Mykola3296 Level 2

          Hello!

           

          1) Are you using Serial element to play those segments?

           

          2) I was doing the error handling using proxy elements wrapping each video element  - like redefinig play, load and time traits + intercepting media errors.

          I've created a feature request here: http://bugs.adobe.com/jira/browse/FM-1197 but not sure the feature is released - so you may need to deal with high priority handlers and propagation stops to intercept media error there.

          So the basic logic in your proxy may be:

          1) On load request tell that you are loaded.

          2) On play request load underlying element and play it.

          3) If everything goes fine - just pass underlying elements trait data "up" using your traits.

          4) If error appears while loading (net connection is created) or playing (netStream.play(...)) - intercept it so it does not go "up" and tell that your element is complete using your time trait.

           

          Thus if you are using serial it should switch to next fragment, I guess

          1 person found this helpful
          • 2. Re: Streaming fault-tolerant
            JasonLin1234 Level 1

            Thank you for the quickly response!

             

            But my senario is a little bit different with yours.

            I'm playing one video element. It's a simple element, not a serial element.

            The source of the video is supplied by http streaming server. When the video is playing, player request video segment one by one from server.

            In this case, HTTPNetStream play the role of managing all the segments and index of them.

            If there is a broken segment in server, player would pause and stop the video.

             

            I think your suggestion is helpful, I will investigate if I can use similar approach to solve my problem.

            But until now, seems all the logic is maintained inside of HTTPNetStream.