My goal is to create a project studio specifically designed for web streaming. This allows us to create and webcast our weekly Digital Production Buzz and other shows live to the web. We also want to make this facility available to other companies that need to reach an audience live on the web.
However, we are discovering that live video streaming to the web is a huge challenge. This article is the second in a continuing series discussing what we are learning. (Clearly, if we had tons of money, this would be easier. But, we are trying to do this on a budget which makes the challenges more significant.)
NOTE: Part 1 discussed how to get Wowza and Wirecast to work together.
In this article, I asked Megan Paulos, our Production Supervisor, to describe in more detail what we are doing. While the process is improving, we are still wrestling with a variety of issues as Megan writes.
– – –
Megan Paulos writes:
Streaming video to the web is a very complicated process.
In a nutshell, we take the output of our audio mixer and video switcher into Wirecast to convert footage to 720p, then stream it live to the Internet through Wowza. This works well, but we have issues of stuttering, color shift, and problems when large numbers of people are watching.
In our control room we are using a Blackmagic Design ATEM Studio Converter that connects the studio cameras using fiber-optic cable and outputs HD-SDI to five Blackmagic Hyperdeck Studio Recorders. (This allows us to iso-record any camera as well as record a line switch of the program.) The recorders then output to a Blackmagic Design ATEM 4K Production Switcher. We then send an HD-SDI program feed to a Blackmagic Design UltraStudio Mini Recorder. This converts the signal to H.264 and sends it, via Thunderbolt, to a Mac Mini.
We have a late 2014 Mac Mini with a 3GHz Intel Core i7 processor, and 16 GB of RAM which is running Wirecast Pro 6 from Telestream. The CPU is running about a 75% load during streaming operations. Nothing else is running on this computer when we are streaming.
As you can see, we are streaming an average bit-rate of 2,000 kbps (2 mbps) from Wirecast. For bandwidth reasons, we decided to stream a 720p signal at 29.97 fps. However, our cameras only support 1080p, so we need to down-convert the signal prior to streaming.
NOTE: Telestream initially recommended 2250 kbps for 720p video. We have experimented with 2,000, 2,500, and 3,000 kbps without seeing a significant improvement in image quality from the viewer’s point of view.
While our upload speeds to Wowza average 2 mbps, our viewers are measuring an average download speed of only 500 kbps from Wowza. We are not sure why there is a discrepancy between the two speeds. Nor are we clear on how Wowza is streaming the content to multiple viewers.
In general, our process works, but we are still ironing out some wrinkles and learning a lot along the way.
One of these is that the system bogs down when more than 100 viewers are tuned into the same stream. We are unclear whether this is a limitation of Wowza or a configuration issue for our account.
Another issue we are wrestling with is lag, delay and stuttering within the stream. This isn’t a consistent problem so we are having a hard time pinpointing the cause.
We are experimenting with changing where the video gets converted by putting a Teranex converter in between the ATEM switcher and the UltraStudio converter. Here the Teranex converts the footage to 720p, while the UltraStudio simply converts the HD-SDI signal to Thunderbolt for input into the computer. Some users report an improvement in the picture and stability with much less load on the Mac Mini for format conversion.
We are also experimenting with the bit-rate we are sending through Wirecast. We have been investigating the download speed viewers have been able to get when watching the stream and the upload speed in which we have been able to send the feed to the internet.
Another issue that we are having has to do with chroma saturation in the streamed image that viewers are seeing. We use video scopes within the ATEM Control Software and adjust cameras and color output there. We get it to look perfect on our monitors but somewhere in the conversion process the picture is becoming over-saturated, with colors rotating toward red. The colors are staying pretty consistent over the stream.
Wirecast and Blackmagic’s technical support teams were very helpful through this process. They have both provided fast and efficient help.
We are continuing to test and experiment. The feedback and testing support we get from our viewers has also been very helpful. I’ll report back in a few weeks as we learn more.
6 Responses to Streaming Video to the Web – Part 2
Hi Larry – From what I have read about your live streaming progress so far it appears that you are hosting your Wowza media server onsite. If this is the case then 100 viewers connecting in unicast mode @ 2 Mbps would require a minimum of 200 Mbps upstream bandwidth. Perhaps this is why Wowza can only deliver 500 kbps streams? For streaming performance with an audience of 100 or more you might want to consider using a CDN which has abundant bandwidth as well as edge caching to prevent bottlenecks. One cost-effective solution is to host your Wowza server on Amazon AWS. Anyway, just a possible avenue to explore if you can’t solve the download speed restriction problems you are currently experiencing.
An excellent comment. That might explain the problem – I’ll have my team look into it.
We’ve been live streaming video from our church every Sunday since November. The budget is very low and there have been a lot of ups and downs. Obviously, I am also new at live streaming, but here is what we’ve learned so far…
1.) YouTube is *fantastic* for live streaming.
The little ads that pop up every once in a while are a small price to pay for what YouTube provides.
Our website’s video page contains four embedded YouTube Playlists, and it is working out really nicely.
Without bothering our Web Admin with new embed codes each week, this feature allows me to add
upcoming live events to the first list, recent live events to the second, homily videos to the third, and
featured videos to the fourth.
Viewers who wish to see earlier videos simply click on “PLAYLIST” and select their video of choice.
Accounts with Livestream that allow embedding cost $2,400 per year, and I doubt if they
have playlists that can be embedded. The playback experience on Livestream’s site is poor.
YouTube (Google) certainly has the resources to provide a good and reliable service for creators and viewers.
There is no place like YouTube when it comes to a potentially huge audience. Additionally, your videos
can be kept private or simply unlisted.
2.) Wirecast is the *opposite* of fantastic.
One Sunday, for example, we experienced a strange warbling sound that affected an entire Mass video.
I heard the strange sound in Wirecast, even before we began streaming to YouTube, and had
no choice but to go with it. Fortunately, we recorded the audio separately and I later replaced the video
with one containing good audio. A few weeks later, I heard the same odd audio artifacts in the live
video of the “Prairie Home Companion” radio show. Over 5,400 viewers were also watching PHC “live”.
During that time, many of them were writing comments to complain about the audio problems.
3.) Livestream Studio software is *really, really nice*!
In tests with a new PC, we experienced intermittent (and annoying) audio clicking when using Wirecast
(apparently related to USB 3.0). However, the problem didn’t occur when recording to Blackmagic’s
software, and it didn’t occur when using a free version of Livestream Studio. As a result, we purchased
the full version of Livestream Studio, and wow – it is such and improvement and a joy to use. (This is
in addition to completely resolving our audio issues). Currently, we are only using one camera, but
see no need for an ATEM switcher when additional cameras are added.
— Jim O.
These are EXCELLENT comments/
Thanks for sharing them with us – I’m sharing them with our team.
Larry, most of your audio is just spoken word as far as I know. If that is the case, you can lower the audio bit rate considerably to reduce bandwidth consumption or allow more video in the same bandwidth. 128Kbps would probably be fine even for music given the listening environment of viewers of video streamed shows like yours. For voice only you could probably go even lower but I’d try 128Kbps to start.
I don’t know a lot about Wowza but most web streaming works best with a 4:2:0 color space. Might something upstream in your setup be in 4:2:2, 4:4:4 or some other color space and not translating well to the web stream? Changing the color space upstream might solve the issue with the color shifting in the web stream.
Great to read about others tackling this. We recently started streaming a weekly show and had some real frustrating audio issues.
Our setup – a GH4 into an BM UltraStudio Recorder into my Mac running the free Wirecast Youtube. Audio came in via two XLR mics to a Zoom H4n USB interface into the mac. I was running Audio Hijack to mono the two channels and I would randomly get this terrible sound. The Audio Hijack folks think it was “something to do with sample rate timing mismatches occurring with USB devices, which can vary their timing slightly.”
I got a little Tascam US-322 mixed that does there stereo mix for me and after a few hours of broadcast I haven’t had the issue again.
You can hear the audio issue here http://youtu.be/ButCfKFzLnc?t=2m42s