3
votes

I am trying to build a audio/video streaming app that works cross platform on iOS and Android mobile devices.

No matter how deep I Google, I'm ending up with suggestions that point me towards OpenTok/TokBox API. But this is what I wish to avoid.

I've checked a few demo, but WebRTC/HTML5 do not seem to work with streaming video/audio in iOS browser. For example, the https://apprtc.appspot.com demo does not work in Safari or Opera Mini in iOS.

When I try http://dev.opera.com/articles/media-capture-in-mobile-browsers/demo/ ... I can capture image using the default iOS camera picker from my browser but streaming video fails.

It seems like the getUserMedia() stuff is not supported by any browser in iOS. Moreover, I am planning to put this on a WebView in a native iOS app. This sounds like a really far cry.

I wish someone could point me towards something that helps me build a video streaming app (hopefully using HTML5), that works uniformly for iOS and android (without TokBox).

3
I got oTalk to work but no video. GitHub then add video framework. Here: github.com/otalkStephen J
edit: the project is outdated compared to the TLK delegate. Update the delegate methods to use the right addedStreamStephen J

3 Answers

3
votes

You might want to look into Ericsson's Bowser App http://www.ericsson.com/research-blog/context-aware-communication/bowser-openwebrtc-released-open-source. It claims to provide WebRTC on Android and IOS. Apparently the App is currently under review in the App Store so if you wait it may just be a case of downloading the App. However it's also open source so if you can't wait then you can build it yourself https://github.com/ericssonresearch/bowser.

2
votes

getUserMedia and WebRTC Peer-to-peer connections APIs are not supported in iOS.

One of the reason is that at the moment efforts around WebRTC focus on VP8 video codec which Apple and Microsoft do not support natively. Support in the near future is unlikely with Microsoft pushing for its own standard.

Doing what you want on iOS requires you use a native iOS compatible solution like OpenCV which supports video capture. You can find on Google tutorials on how to implement a solution based on OpenCV.