Live streaming to Android devices not working (all other browsers are great)

Hi all,

I’m having a bunch of difficulty streaming to Android devices. On the client, I’m using JWPlayer. I’ve read the documentation here and it’s helped me get live streaming working pretty much everywhere exception Android - http://www.longtailvideo.com/support/jw-player/28856/using-apple-hls-streaming/. I’m not exactly sure what protocol to target on Wowza (or if it’s even enabled for me?) in order to get this to work with Android. I also probably need to make some adjustments to JWPlayer, so if anyone here has experience with handling both, I’d absolutely love some help. Here’s an excerpt of what my JavaScript looks like right now:

 jwplayer("insider_tv").setup({
      playlist: [{
        image: "/jwplayer/tv_overlay.png",
        sources: [{
          file: "rtmp://fi.stevefink.net:1935/live/fiStream"
        },{
          file: "http://fi.stevefink.net:1935/live/fiStream/playlist.m3u8"
        },{
          file: "rtsp://fi.stevefink.net:1935/live/fiStream"
        }]
      }],
      primary: "flash",
      skin: "roundster",
      width: "100%",
      aspectratio: "16:9"
    });

That works great for desktop browsers and for iPad and iPhone devices. Getting no playable sources found on Android as can be seen here: https://www.evernote.com/shard/s54/sh/5d4b5e38-b317-418e-b16f-a0ca0a8e90be/c7797a24f09f7e34b0d8e24e2425dcc0

Would anyone be able to help me figure out what I’d need to get done on the Wowza side of things + JWPlayer side of things to add Android to the list of devices that can get some love with our live stream?

Thanks for any and all help folks.

You can add rtsp fallback like this:

<div id='insider_tv'><a href='rtsp://fi.stevefink.net:1935/live/fiStream'>Insider TV</a></div>
 jwplayer("insider_tv").setup({
      playlist: [{
        image: "/jwplayer/tv_overlay.png",
        sources: [
       { file: "rtmp://fi.stevefink.net:1935/live/fiStream" },
       { file: "http://fi.stevefink.net:1935/live/fiStream/playlist.m3u8" },
        ],
      }],
      primary: "flash",
      skin: "roundster",
      width: "100%",
      aspectratio: "16:9"
      fallback: false
    });

The fallback: false part tells the javascript not to replace the contents of the div tag if it cannot render a player. This way your link is displayed instead.

Salvadore

Thanks for the update and glad I could help!

Salvadore

You can add rtsp fallback like this:

<div id='insider_tv'><a href='rtsp://fi.stevefink.net:1935/live/fiStream'>Insider TV</a></div>
 jwplayer("insider_tv").setup({
      playlist: [{
        image: "/jwplayer/tv_overlay.png",
        sources: [
       { file: "rtmp://fi.stevefink.net:1935/live/fiStream" },
       { file: "http://fi.stevefink.net:1935/live/fiStream/playlist.m3u8" },
        ],
      }],
      primary: "flash",
      skin: "roundster",
      width: "100%",
      aspectratio: "16:9"
      fallback: false
    });

The fallback: false part tells the javascript not to replace the contents of the div tag if it cannot render a player. This way your link is displayed instead.

Salvadore

Thank you for the help Salvador, this solution works great.