How to Live Stream Virtual Reality and 360-Degree Productions with Wowza Streaming Engine

November 9, 2020 by

Learn how you can live stream virtual reality and 360-degree video using an Insta360 Pro 2 camera and Wowza Streaming Engine as your media server to convert an RTMP stream to HLS. We cover the basic workflow for live event production and end-to-end immersive video using the Insta360 Pro 2 and Wowza Streaming Engine.

Full Video Transcript:

Justin Miller:

I’m Justin Miller from Wowza Media Systems and I’m going to show you how to live stream VR 360 video using Wowza Streaming Engine. Now to get started we have a local instance of Wowza Streaming Engine running along with the control software for the Insta360 Pro 2 camera. And as you can see right now, I’m connected to the camera already. It’s on a local network here, and if I go into crystal ball mode, I can zoom into where I’m standing in my backyard or sitting rather in the shade. Hello everybody. Okay. So now that we know the camera’s working, to get started, we’ll go under applications in Wowza Streaming Engine and add an application. I’m going to use live single server origin, and I’m going to name it VR360 just to make things easy. Once it’s created, I can decide what settings I want to leave before I save it. For example, for playback types, I plan to playback using Apple HLS so I can uncheck the other types since they’re unnecessary.

I’d also like to reduce the latency from the standard 30 to 45 second latency of HLS down to maybe 10 to 15 seconds, which means checking low latency stream. I’m going to save this now because we are on a local network. I’m going to go under source security and I’m going to edit the RTMP sources to be open or rather require no authentication. Okay, now that that’s saved, I am going to restart now for the application to be restarted and all the changes to take effect. Now I can go under sources live and I can use the information on the right side to connect to my VR360 camera. One thing you want to be sure is that your host server information is correct, so you’ll want to verify that it is using the IP address of your computer. In my case, the IP address is actually here at the and I’m going to be using that with a :1935 for my host port, and then slash the application name, which is VR360.

Jumping back into the Insta360 Pro Controller software here, once it’s on the first thing we need to do is go to livestream. And then from livestream, we’re going to change the mode under general settings from built-in server to custom RTMP server. So, we are going to leave this as the livestream format RTMP. We could change the resolution and because we’re using the internal stitching software, the highest resolution is 4K. You could make it lower, but I’m going to use the 38×40 by 21×60 resolution. And now here under URL, I can add in the URL we need, which is our RTMP:// again, the IP address of the computer itself, which is the port, 1935/ and that is again, and I’m just going to move this over to the left so you can see it, the application name, which is VR360.

Now for the key, the key is the stream name, and it’s basically anything you want to use. So, because I’m in my backyard I’ll call it backyard, and now we’re ready to go. I can hit live and, in a few seconds, we will be live streaming to Wowza Streaming Engine. We jump over here and check our incoming streams, we’ll see here it is backyard, and it’s running. Now, if you want, you could click on backyard and then under test players, you could verify the stream. You’re going to want to make sure again that the server information is correct. So, in our case here, it would be 0.22, but unfortunately, even if I made this change, it wouldn’t matter since I can’t really look at VR360 video through our test players. However, the reason I went into this is because I want to grab the mobile information here under iOS, because that will give the URL specifically for Apple HLS. So, I’m going to copy that information right there.

And I’m going to use it in another player from another company. Now you could use a multitude of players out there that allow for VR360 video, I’m going to choose to use field player. Now in field player, you would set this up like so. First, we’ll go under SDK and under SDK, we would choose to create a new player. I’m going to make this for HTML5, and I’m going to call it a VR360, I’ll click next. And then some of the changes you’ll want to make first of all, is if we go through the different settings here, for example, playback we’ll want to change it, so it allows 360 VR. As it points out it can’t use ads at this time so under advertisements, you may simply want to turn that off. And then going back to formats, we’re going to make sure that it is using HLS and that it has the correct IP address and well, the whole URL as it were.

So, I’m going to load that, and then I’m going to click next and I’m going to leave it as accept all domains and then click publish. Now, sometimes publish does take a while, as it says right now, they’re building the field player SDK, but because it can take four to five minutes, I’m going to jump back to the SDKs and I’m going to use the one that I’ve already created for this. So, I’m going to go down and use virtual reality. I created this one earlier using again, that same IP address and one thing to keep in mind is that we are testing it on a local machine and that the IP address can be registered by a local system, but it can’t be remote unless that is a public static IP address. So, just something to keep in mind here. Now I’m going to go to how to embed my field player, HTML5 SDK and under full page sample I can just take this code and download it to my computer and then open it up in my browser.

From here, once it’s ready to go I can just click play, and we can see it working. In other words, we’re going to be able to see it streaming from my backyard, here we go. I’m just going to circle around. Oh, there I am. Again, there is a 10 to 15 second latency there, but I have waved just to see it working. And one other thing I’m going to mention is because this is streaming in 4K and we don’t have it as adaptive bitrate if I go down to check on the settings, you’ll see it is just set up to stream at that 4K or 21x60p, as you can see.

If I want to switch this out to make it a little more, VR for anybody who comes to the site, I can jump over to the VR mode here. And if somebody was viewing it through their goggles, they could now see it fully immersive. Okay, that’s all I really wanted to show you all. Thank you for watching. If you’re interested in learning more, please check out our video about using our Wowza Streaming Cloud Service that will also allow you to live stream your VR360 live streams. Have a great day.


About Laurie Wherley

Based in Denver, CO, Laurie Wherley is a passionate marketer, who is responsible for a variety of outbound activities including global events, social media, product marketing, and webinar creation. When she isn’t working, you’ll find Laurie traveling the globe, throwing… View more