Category Archives: Flash Media Server

6 Reasons You Should Consider HTTP Dynamic Streaming

For years, we’ve been able to deliver video content on web servers using the HTTP protocol as progressive downloadable video. Problem is, if a user wanted to jump to a specific point in a video they would need to wait until the video had downloaded from the beginning to the point where they wanted to watch.
Real-time streaming severs solve this problem by just delivering the bits that are needed to display the video on the screen at the moment but they have their own set of challenges. Specific ports needed to be open so getting through firewalls could be problematic. Real-time streams needed constant, dedicated bandwidth so having multiple, concurrent streams could seriously impact the network.
Enter HTTP Dynamic Streaming (HDS). The concept for this technology has been around for some time. I remember dabbling with it in QuickTime even before HTTP Live Streaming was announced by Apple. The idea is to break up a long video file into smaller segments and fragments. When a user plays a video online, the video player loads a manifest or xml file that tells the player what video segments and fragments to load and plays those files back seamlessly in sequence. Here are some reasons why you should consider HTTP Dynamic Videos to deliver your content:
  1. HDS runs on Apache using a free Apache module called Origin . No expensive streaming server needed to deliver video on demand (still need a streaming server to use HDS for live broadcasts, online video recording, DVR functionality, and DRM).
  2. HDS is delivered through port 80 so all the firewall issues we’ve had in the past are gone. Hurray!
  3. Multi-bitrate support means better network efficiency. Bitrate switching works “mid-stream” as mobile users move from wi-fi to cellular networks.
  4. Better bandwidth control. Real-time streams demand dedicated bandwidth. HDS is managed as downloaded files on the network so latency can be a little more forgiving.
  5. Seeking within the video. HDS allows the user to seek to any point of the video without having to download the entire clip.
  6. A future release of Adobe’s HDS will include iOS support. This will allows us to serve a single set of video files to all platforms. This one is huge! Who wants to maintain a 2nd sever and an extra set of media to serve to iPhones and iPads? Not me!
I’m happy to see Adobe build tools to support HTTP Streaming. Hopefully we’ll see additional features added to the Creative Suite that will help make packaging HDS content easier.

Streaming Stake Conference

I work at BYU and it’s probably no surprise that I’m a member of the Church of Jesus Christ of Latter-day Saints. Some may find it surprising that not all full-time employees and not all of the student body at BYU are members of the LDS faith. There are usually about 400-500 students that are of another faith attending BYU.

Anywho, the basic organizational unit for a congregation in our church is called a ward. Multiple wards are organized into a stake. Every 6 months or so we have a stake conference where the members of the stake get together to hear the good word. In our stake, there are so many members we can’t all fit in the stake center (a large church building, not a large restaurant serving steaks) so this year they decided to stream the conference live via the Internet to the other 3 church buildings in our stake. The broadcast went well and we were able to enjoy the talks given by the members of our stake and church leaders. I have other responsibilities in my ward so I wasn’t part of setting up this broadcast. Those that did set it up should be commended for an excellent job. It’s quite an orchestration for pulling off a live Internet broadcast. Being able to attend stake conference in my home church building was wonderful. The broadcast was also streamed live to member’s homes, retirement homes and care centers for those who couldn’t attend due to illness or other reasons.

Being that I’m fairly passionate about streaming media, I can’t help but blog about tips and tricks for putting on a live event. Most of what is suggested here was followed today so this is more about general suggestions in doing a live broadcast. Whether it be for a religious event or other broadcast, these are some of the things I would consider.

A commonly used setup for a broadcast would go something like this: You have a camera (or a bunch of cameras with a video switcher) and an audio mixer that’s connected from the house PA to a computer (usually a laptop). That laptop has a live broadcasting application on it. I like Adobe Media Live Encoder and Flash video for its multi-platform playback capabilities and ubiquity across browsers and operating systems. This recording laptop should be connected to the Internet via network cable. If you’re trying to use a wireless connection to record the broadcast and the rest of the congregation has access to that wireless network, well, good luck. A congested connection may give you terrible results.  A dedicated line will help you send the best quality video to your streaming server. The streaming server in turn, sends the video feed to the various people that are watching the event. You’ll want to fine-tune the bit rates and size of the video you’re broadcasting to fit well within the bandwidth that available to you.

You could possibly use an online streaming media service like uStream. There are free accounts available that have advertising as part of the package. I think our congregation would not want to see advertisements before a spiritual broadcast. Also, many streaming servers (like Flash Media Server) support encrypting the video streams if you’re interested in a more secured delivery of the broadcast.

For projecting the broadcast in other church buildings a laptop is connect to a projector that is placed on a classroom table that fits quite well between two benches in the chapel. Cables of course need to be fed to the middle of the chapel. Yes, use an Ethernet cable. I’d recommend that all cables be taped down with gaffers tape. This is specialized tape that doesn’t leave a sticky residue when you take it off. I’ve found that the blue painters tape sometimes sticks to the cables and still leaves a sticky residue on some plastics.

On the laptops used with the projectors, it might be wise to create a separate account for streaming broadcasts. Turn off all notifications systems such as email and growl. It’s distracting to have personal notifications displayed to the entire congregation during the broadcast. Turn off any power-saving features like putting the hard drive to sleep or screen savers so the broadcast isn’t interrupted. Having a separate account makes it easier to do broadcasts without having to worry about turning those things off in heat of the moment.

The table with the computer and projector should be roped (or taped) off. I’d recommend even the bench behind it and the middle section of the rows in front of it. We had a curious toddler almost take down the entire system a number of times during the broadcast. You can reserve just the middle section of the benches so people can sit on the sides. Don’t forget to reserve a row for yourself so you can get quick access to the setup.

Our congregation has quite a few older folk and the audio signal was a little too soft even with the laptop and PA turned to full volume. Make sure you have plenty of headroom before starting the broadcast. We had to scramble in getting a mixer inserted between computer and PA system. We made that transition between two talks and luckily it went remarkably well. Speaking of testing, having multiple dry run-throughs is absolutely critical to a successful live broadcast. Test the actual equipment with the actual setup in the actual buildings you’re going to use. Cell phones are pretty handy when doing run-throughs.

Lastly, it’s always good to have a backup plan. What are you going to do if you loose network access? Perhaps cell phones could be used to patch the audio through to the PA. Whatever you do, make sure everyone knows the plan.

I love seeing technology used to save time and resources. In the past, the stake leadership would have to conduct two separate meetings for stake conference by dividing up the wards for the two times. Now they can accommodate more people with less time. I can see the day when a stake conference broadcast is managed through, and is available afterwards on the lds.org site through single-signon. Wouldn’t it be great to have these important messages focusing on just our stake available to us just like the general conference messages? Well, I can dream can’t I?