WOWZA + RTMP to play on Multiple Devices?

夏期劇場 picture 夏期劇場 · Jul 28, 2013 · Viewed 12.5k times · Source

I'm still a newbie to Wowza/Streaming but when i setup everything (RHEL + Wirecast), i can somehow stream-out/broadcast from my home pc to EC2 Server.

As i followed according to Wowza Live-Streaming Tutorial, i used RTMP and after that all i got FOR PUBLIC (Viewer) side are:

  • rtsp://xx.xx.xx.xx:1935/live/myStream
  • http://xx.xx.xx.xx:1935/live/myStream/playlist.m3u8

That means, i can ONLY PLAY via Flash and iOS.
But on Androids and Windows Phones, there is NO FLASH supported.

Now my very basic questions are (may be i'm missing out something, but):

  • When i stream RTMP, do i only get two such above stream types?
    • Only, rtsp://....... and http://........m3u8 ?
  • So how about other stream types?
    • Like, .mp4 .mov etc .. via HTTP ?

Since i am on this topic, please let me add an additional question.

  • ON WOWZA, WHAT IS THE BEST WAY TO GO FOR REALTIME STREAMING + MULTIPLE DEVICES FOR WEB? (Should i even still be using RTMP)?
  • DOES HTTP-LIVE-STREAMING COVERS ALL WEB PLAYBACK DEVICES?

Thank you so much!

Answer

rshmelev picture rshmelev · Aug 9, 2013

You can read this documentation: https://www.wowza.com/docs/how-to-set-up-live-streaming-using-an-rtmp-based-encoder

It explains that:

  1. flash needs RTMP links
  2. iOS needs http links, .playlist.m3u8 in particular
  3. rtsp links may be used by quicktime or old android devices (or blackberry probably)
  4. when you publish live stream (via RTMP via Flash Media Live encoder for example) then you're able to play it via RTMP, RTSP, cupertino (Apple HLS), smooth (MS Silverlight), sanjose (Adobe HTTP)
  5. .mp4, .mov are not "types" + we're talking about live streaming, right?
  6. for VOD streaming use this doc: https://www.wowza.com/docs/how-to-set-up-video-on-demand-streaming

Answering your questions:

  1. to support all devices, you can use Flash Media Live Encoder + Wowza Transcoder Addon, so you'll get different stream bitrates as output that any device will be able to play (because codec is H264 and AAC)
  2. Http live streaming - depends on what you mean. ...playlist.m3u8 is Apple HLS format, flash will not play it. but http streaming is ..playlist.m3u8, manifest.f4m (Adobe HTTP, OSMF plays it), Manifest (MS Silverlight smooth streaming).

For live streaming IMO you should use RTMP for Flash and HLS for modern Android and iOS. Also you can detect old (<3.0) Android devices and give them rtsp links.