How to Deliver Live Streams Using Wowza GoCoder
February 7, 2018 by
Individuals and organizations all over the world have long used live streaming for large events—but did you know that you already have a mobile live-streaming device in your pocket? The Wowza GoCoder™ app can turn your mobile device into a live encoder for streaming video of live events, meetings, sports, performances, presentations and other activities.
Today, we’ll show you how to get your next mobile streaming event off the ground using Wowza GoCoder with Wowza Streaming Engine™ software.
Tools Used: Wowza Streaming Engine, Wowza GoCoder app for iOS
1. Setting Up the Streaming Server
To start streaming using Wowza GoCoder and Wowza Streaming Engine, you’ll need to do some initial setup on the streaming server.
If you’d like to follow along, first perform the following in Wowza Streaming Engine Manager:
- Create an application for live streaming.
- Find your IP address for Wowza.
- Create credentials for your live streaming in the Source Authentication section.
- Determine what stream name you’ll use for this tutorial.
2. Configuring Items on Wowza Streaming Engine
Now that you have those items, let’s get started working in Wowza Streaming Engine Manager.
For this tutorial, our Application name is freeman_live and our stream name is sample. Both items are lowercase.
Although it’s not required, a good best practice is to always use lowercase characters for your Wowza applications and stream names. And be sure not to include spaces when creating your Application and Stream Name. Not including spaces makes it much easier to troubleshoot technical issues with your Wowza streaming.
Your IP address for your Wowza instance can be found in Wowza Streaming Engine Manager as soon as you log in. For the purposes of this tutorial, I’ll keep my credentials a secret.
It’s always a great idea to confirm that your credentials are working for Source Authentication, and that your live streaming is working properly for your Wowza application. You can test this with Wowza GoCoder, or you can test it with another live streaming application or device.
3. Selecting Your Camera Shot
Download and install Wowza GoCoder on your iOS device. Open the application. You’ll notice several icons on your screen once you exit the start-up Help Screen.
For my source, I’m using a shot with my iPhone of our family pet and loving Bichon, Harley.
The item that looks like a lightning bolt turns your camera light on and off. The button next to it rotates your camera either toward you or your subject.
Next, let’s configure the Wowza Streaming Engine settings by clicking the Connect button. It’s the icon at the top that looks like the Wowza logo.
4. Adding Host, Application and Source Authentication Information
When this dialog appears, choose Wowza Streaming Engine. (You can also use the Wowza Streaming Cloud™ service for mobile live streaming—but for this tutorial, we’re using Wowza Streaming Engine.
Now, it’s time to input your Host, Application, and Source Authentication information. Click on Host from the available options.
At the dialog, enter your IP address or hostname, as well as your port number. It’s safe to use port 1935 when using Wowza (but remember to also open this port on the firewall connected with your Wowza Streaming Engine software). Then click the Back button.
Next, click on Application.
Now add your Application name. For this tutorial, my Application name is freeman_live with a Stream Name of sample. Click the Back button once you add your information.
Navigate to Source Authentication by clicking Source Authentication from the available choices.
Input your credentials for your live stream. These are the same credentials listed within the Source Authentication Section of Wowza Streaming Engine Manager. Once you’ve added them, click the Done button.
5. Choosing Your Video Options
Now, let’s move to the Video Options. Click the icon with the adjustment sliders in the top-right corner.
In this section, you’ll create your video settings and configurations. Since you’re just getting started with mobile streaming, I recommend using a lower frame size and data rate to start with. Using a modest 640 x 360 setting and a lower data rate of 700 kbps will be good for now.
If you happen to be at a university, college campus or a company where upload wireless bandwidth is well above 20 Mbps consistently, then you can use a 1280 x 720 frame size and a data rate of 2500 kbps: This is a good best practice if your available upload bandwidth is at least three times the amount of your live stream.
For this tutorial, we’ll use the more modest setting.
Now, click on Stream. Select Video + Audio. This will stream both video and audio from your mobile device. The other items here are self-explanatory.
Click the Back button.
Next, click on Video Settings.
Setting this item correctly is very important. For Framerate, type in 30 into the text box; for Keyframe Interval, type 60, and leave Allow Rotated Video enabled.
The Framerate and Keyframe Interval work in harmony. Since our framerate is 30, a keyframe interval of 60 means a keyframe will be inserted into our video at least every two seconds. This is because the “30” stands for “30 frames per second (fps).” If you wanted to add a keyframe every four seconds, the Keyframe Interval would be 120.
For mobile streaming, I recommend always using a keyframe interval of every two seconds—in other words, setting a Keyframe Interval value of 60. Why? If you ever decide to use Wowza Transcoder to create Adaptive Bitrate live streams with your Wowza GoCoder live streams, it’ll be an easier transition, and should work much better. If the user bandwidth decreases or increases, the two-second interval allows for a greater opportunity for streaming switching.
Let’s continue. Click the Back button.
Choose Video Size from the dialog window.
Select 640x360 from the list of frame sizes and click the Back button.
Enable Auto Restart if you’d like you’d like Wowza GoCoder to automatically start streaming if you lose your connection and it’s re-established. Click Done once you finish.
6. Setting the Data Rate for Your Mobile Live Stream
It’s now time to select the bitrate for your live encode.
Click the data rate button in the lower left-hand corner of the Wowza GoCoder app. This will bring up several available data rate options.
Keep in mind, the available settings here are connected to the frame size you select under Video Size within Video Options.
Choose 700kbps for the list.
Now, to start your mobile live stream, click the red Start Encoding button; your live encoding should start, and Stream Started will be displayed.
And that’s how you deliver live streams using Wowza GoCoder!
Lastly, if you’d like to disable the startup Screen Help that appears when you first open Wowza GoCoder, click the Video Options button that’s available upon app launch.
Now, click More Options.
And then, disable the startup Help Screen by moving the Show Help Screen slider to the left. In this section, you can also enable Show Status Bar to see the clock and battery life available on your device.
Hopefully this blog post gives you a better understanding of mobile streaming with Wowza GoCoder, as well as more insight on many of the various video and encoding settings available.
Things to Remember
Don’t use the Stream Name sample if you’d like to record streams of your mobile streaming with Wowza GoCoder. Doing so will overwrite the default sample.mp4 in your Wowza content directory.
Also, whatever Application and Stream Name you use in Wowza GoCoder, this information (in some form) will be used in your media player setup to allow your stream to be available for viewers.
In this tutorial, we guided you through the process of sending live streams to Wowza Streaming Engine using Wowza GoCoder for iOS; for more detailed information, visit the Wowza documentation. You can also perform the same type of streaming using an Android device. Many of the items in the user interface look a little different, but the information is essentially the same.