• How to use Roku with Wowza Media Server

    Here are the basic instructions to create a private channel on a Roku box to stream video from Wowza Media Server to the Roku.

    Consult the documentation that comes with the Roku Software Development Kit for more information including supported video formats.

    Initial Setup
    Install the latest version of Wowza Media Server 3.
    If still on version 2 it is probably best to run with the latest patch. The latest version 2 patch can be found on the bottom half of the Production builds page

    The Roku supports the Apple HTTP Live Streaming protocol. To get started follow the one of the following tutorials to setup a video on demand or live stream for playback on an iOS device (iPhone, iPad, iPod touch).

    How to publish and play a video on demand file

    How to publish and play a live stream (RTMP based encoder)

    How to publish and play a live stream (RTSP/RTP based encoder)

    How to publish and play a live stream (MPEG-TS based encoder)

    How to publish and play a live stream (native RTP encoder with SDP file)

    How to re-stream video from an IP camera (RTSP/RTP re-streaming)

    You may also need to configure your stream as a multi-bitrate stream as outlined here Adding Multi-bitrate Audio-only Rendition to iOS Streams (AppStore 64Kbps)

    Those experiencing playback problems with Wowza Media Server 3 should look at this article, http://www.wowza.com/forums/content.php?331 to switch back to using absolute paths for iOS playlists. This has been fixed in recent Roku firmware updates.

    Basic Instructions
    1. Buy a Roku and get it up and going and associated with an online Roku account.
    2. In your online account, sign up for the developer program and download and install the Software Development Kit.
    3. Open the documents/RokuDvp-ChannelPackagingAndPublishing.pdf that comes with the Roku SDK and follow the instructions in the Packaging Applications chapter to setup a DevID and Password (you will need to use the password for packaging).
    4. Unzip the examples/zips/simplevideoplayer.zip example and edit the simplevideoplayer/appMain.brs file and make the following changes:
      1. Comment out the lines (line 167):
        Code:
        'urls = ["http://video.ted.com/talks/podcast/CraigVenter_2008_480.mp4"]
        'qualities = ["HD"]
        'StreamFormat = "mp4"
        'title = "Craig Venter Synthetic Life"
      2. Uncomment and modify the lines (line 184):
        Code:
        ' Big Buck Bunny test stream from Wowza
        urls = ["http://184.72.239.149/vod/smil:BigBuckBunny.smil/playlist.m3u8"]
        qualities = ["SD"]
        streamformat = "hls"
        title = "Big Buck Bunny"
        Note: To play your own content, change the urls value to the playlist URL to your content.
    5. Zip up the contents of the simplevideoplayer folder. I got this wrong the first time. Be sure to zip up the contents of this folder and not the folder itself. You will be uploading and registering this zip archive as your player application to the Roku box.
    6. Follow the instructions in the Package Utility of the documents/RokuDvp-ChannelPackagingAndPublishing.pdf guide to upload your package to the Roku.
    7. There should be a prompt on your Roku box to run your application. It should just work. Once you get it working you can read more on how to setup a private channel and make it accessible to folks to subscribe.


    Comments 3 Comments
    1. saljaran -
      I have set up Wowza as described and have been using it for moble streaming for several months. I can stream to mobile devices such as the iPhone, Androids, ect. But, following the directions for Roku, I cannot get the private channel to work. On the instructions, you say to uncomment the following:

      ' Big Buck Bunny test stream from Wowza
      urls = ["http://184.72.239.149/vod/smil:BigBuckBunny.smil/playlist.m3u8"]
      qualities = ["SD"]
      streamformat = "hls"
      title = "Big Buck Bunny"

      However, the Url is a on-demand link and I am trying to stream a live video stream using Wirecast to encode (same system that streams our iPhone live stream). For the URL I have tried:

      http://myserver.edu:1935/iphone_live/gmu/playlist.m3u8

      and

      http://myserver.edu:1935/iphone_live.../playlist.m3u8

      (server name changed for security)

      Are these correct? If so, what else could be the issue. I have read your instructions and the Roku Encoder Guide

      Any direction is appreciated.
    1. xyfeng -
      Hi Charlie,
      Thank you for posting this tutorial, when I followed it, it doesn't work, it took me a while to figure it out the problem.
      under a, comment out the lines(167)
      'urls = ["http://video.ted.com/talks/podcast/CraigVenter_2008_480.mp4"]
      'qualities = ["HD"]
      'StreamFormat = "mp4"
      'title = "Craig Venter Synthetic Life"
      'srt = "http://dotsub.com/media/f65605d0-c4f6-4f13-a685-c6b96fba03d0/c/eng/srt"

      should not comment the srt, it is used somewhere else; otherwise, it will not launch the stream.

      Thanks.

      xy
    1. charlie -
      Thanks a ton!

      I updated the instrutions. Please, let me know if they are now correct.

      Charlie