Now that we’ve gotten streaming to computers down pat, I’ve set my sights on delivering a good experience for mobile users. Unfortunately, with the wide variety of mobile platforms out there, this is not an especially easy task. The Mac/PC/Linux issues are complicated enough, and it gets really tricky when the platform ecosystem has half a dozen major players (and a truckload of minor ones)
Since July or so, we’ve been using a preview version of the recently released Wowza V2 server software to deliver our video content to iPhone/iPod devices that support Apple’s new HTTP Streaming format. With minimal changes, Wowza V2 can also rebroadcast the same H.264/AAC stream over RTSP, which reaches a lot more devices. But this is where it gets complicated. BlackBerry has been supporting RTSP for some time, but it’s only recently that they’ve supported h.264/AAC media. According to their KB article on the subject, you can do H.264 on the following:
- Bold 9000/9700
- Tour 9630
- Storm 9500/9520/9530/9550
- Curve 8900/8520
Most HTC phones have a streaming media app that supports RTSP, but only recent versions seem support H.264. For example, my Mogul has the app, but I can only hear the audio. Brian‘s Touch Pro 2 gets both (and on the TP2’s WVGA screen, it looks amazing!).
Windows Media Player supports RTSP, but doesn’t come with an H.264 codec (even in Windows 7!!!! BOOO!!!!). I have yet to get the RTSP stream to work on Windows Media Player. The mobile player doesn’t support RTSP at all, just MMS and HTTP (but not the same HTTP as Apple! Grr!), and with the 9.5 generation of Windows Media Services (2008), MMS has gone away in favor of HTTP (which Microsoft calls Smooth Streaming, also not supported on WiMo).
The Palm Pre is supposedly able to do RTSP and H.264, but I’m waiting to hear back from one of our pre-wielding pastors to see if this is actually the case.
Thanks to Daryl Hunter at lifechurch.tv for letting me know that it works on his HTC Hero (Android 1.5). It seems that on Android you can’t manually enter an RTSP URL into the browser bar, but a web link or tinyurl redirect that goes to an RTSP URL does work.
Meanwhile, VLC player will play just about anything you throw at it, including the RTMP flash stream. Pity it’s not available in a mobile version.
So, as it stands now, in order to deliver a mobile experience to as many people as possible, I’m still going to need to run a separate Windows Media server for our Windows Mobile clients, But everyone else should be able to pull from the “iPhone” stream (which I’m probably going to need to rename), as long as the device supports H.264/AAC and RTSP.
This is great info. Nice work! I will be sending folks here.
Charlie (The Wowza Guy)
I’ve confirmed the stream works on a BlackBerry 9700 running OS 5.0. I do have some issues clicking the “RTSP” link from the sidebar on live.cor.org page, but if I paste the “rtsp://iphone.ec2.cor.org:1935/live/iphone” link into my browser, the media player opens up and after about 15 seconds of buffering, it works like a champ.
The link thing might be some type of webpage coding issue because I can’t expand out any of the FAQ questions on the “tech trouble” link however, the BlackBerry browser is not exactly “best of breed.”
Thanks, Mike! The info is appreciated.
Mike, it sounds like that may be a JavaScript issue in the browser. Would it be possible for you to open a ticket with your carrier so that RIM can possibly fix this? Not having a BB or being a RIM partner, I don’t have access to any of their support tools or bug reporting feedback channels.
What are you using to encode to h.264/AAC? The free Adobe Media Flash Encoder only does h.264/MP3 as far as I can tell. We could get the video to work on the iPhone but not the audio.
Flash Media Live Encoder, with the MainConcept AAC plugin.
Other option (and this is not a cheap one) is to use a Decklink or Aja card with Kulabyte‘s xStream encoder.
The RTSP link works on my Nexus One (Android 2.1). I’m also using wowza on ec2 to re-broadcast my live stream. It works fine with the iphone, but on the android with rtsp it only plays audio. Using the same rtsp in VLC, it plays video just fine. From my encoder I am sending wowza h264 baseline level 3.0 with 320×180 resolution. Can you give me some info on the stream you are sending wowza? Thanks!
Also, on tmobile your rtsp link using port 1935 will not work. It only works on wifi, I think tmobile blocks that port. Setting wowza to use the default port for rtsp (554) will allow it to work on the cell network.
Thanks for the info, Steve! Maybe we can chat about it at the Round Table event next week.