What you need to know about iPhone HTTP streaming
January 11th, 2010One of the drawbacks of many kinds of streaming media is that there are special protocols and non-standard ports used, which can lead to several different types of failures, and ultimately, a lot of frustration. When Apple set out to include a streaming video feature on their iPhone OS, they decided to use HTTP for several reasons. First and foremost, they could avoid many of the pitfalls of typical streaming media setups. For example: RTSP streams are often rejected by overzealous firewalls and routers, which means that many viewers who reside behind corporate/office firewalls will not be able to view your video stream.
Hypertext transfer protocol, also known as HTTP, is universally supported, and is much more effective at bypassing firewalls and routers that may otherwise deny traffic that use MMS or RTSP protocols. Why is this? Because almost all internet traffic uses the HTTP protocol, so if a router or firewall rejected HTTP traffic, they would be blocking out most of the internet.
The shining benefit of HTTP streaming is that it allows content distributors to avoid the costly implementation of traditional streaming media servers, which is a huge benefit to small companies just getting started in streaming video. Although it works in a completely different way than RTSP, the effect is still the same. With on-demand video (as opposed to live video), the user can skip forward before the video is finished downloading, much like other types of on-demand streaming. And with live video, the viewer cannot skip forward at all, which reproduces the experience of watching a live broadcast on TV.
So, how do content producers utilize this technology? One option is to purchase a monthly iPhone & mobile streaming video hosting package with GravityLab Multimedia, which makes it easy to get up and running with HTTP streaming.
How our iPhone streaming video hosting works
- You purchase an account
- We send you a welcome e-mail with instructions on how to upload your files with any FTP program, and how to start a live broadcast
On-demand streaming:
- You upload a video file, and it is available for viewing instantly
- You link to the video via your your web site
e.g. http://arecibo.gravlab.com:1935/iphone/mp4:your_account/your_video.mp4/playlist.m3u8
Live broadcasting on iPhone 3.0 and later:
- You Download Quicktime Broadcaster, a free program for broadcasting video from any computer with OS X.
- You configure the broadcaster according to your welcome e-mail, and then press the Broadcast button
- You link viewers to http://arecibo.gravlab.com:1935/iphonelive/your_account.sdp/playlist.m3u8
File requirements
- Container format: .mp4, .m4v, .mov
- Dimensions: 480×320
- Codec: H.264 (Low-Complexity version of the H.264 Baseline Profile OR Baseline Profile up to Level 3.0)
- Audio: AAC-LC audio up to 160 Kbps, 48kHz, stereo audio
- Frame rate: up to 30 fps
- Bit rate: up to 1.5Mbps (200Kbps recommended)
More reading:
Apple’s official HTTP streaming documentation
RTSP/RTP/RTCP Streaming media overview
MMS Streaming media overview
