Video(with Audio) chat for iOS - ios

I"m trying to build an app for iOS which includes video(with audio/voice) and text chat. The chat will be one-on-one chat. One source for video is surely coming from desktop/laptop camera(or IP Camera). How can this be achieved for iOS devices? Any open source/ free library as solution available will be welcomed.

You can try these
1) http://quickblox.com/developers/IOS
2) https://layer.com/
3) http://www.pubnub.com/

ooVoo provides free sdk for video chat implementations its very easy to use. But for free sdk it will have ooVoo logo at the bottom of the screen. For more information go to this link: https://developer.oovoo.com/
If you want to implement your own video chat application. You can use xmpp, this link has a good example for xmpp implementation on iOS :https://github.com/robbiehanson/XMPPFramework [it doesn't have video chat implementation you have to modify it].
Or you can write your own custom socket program. In which you will be able to send and receive UDP packet which will contain the video data.

Related

Vidyo.io Integration in Swift4

I'm new in IOS. I'm working on a Video Call project in swift. i'm using vidyo.io SDK for video Call and message chat. But I have some questions
If my app is in kill state or my phone is locked. how can I receive call Notification.
Some SDK's have VoIP support for Call notification in locked State. vidyo.io have support for VoIP? If yes how can I implement.
vidyo.io Documentation have some methods for use camera, microphone, Customize UI etc can we implement all these methods in swift?
if any one have good tutorials or helping materials please share.
You can find a Vidyo.io sample app built with Swift here: https://github.com/Vidyo/customview-swift-ios
Vidyo.io is a CPaaS focused on video chat. You can use the service for voice only, but you probably have better options if that is what you want to achieve.

Video Streaming and Broadcasting using WebRTC

I am very new to Real Time Protocols and I had some questions about how WebRTC works and how I can implement it. I am trying to create a one to many livestream like facebook or periscope, where one user broadcasts and other users join and stream the video. I am using Swift from my client end.
My questions are:
How do I broadcast a video using WebRTC
Is there an SDK for WebRTC in Swift/iOS
I know the questions are very vague but a guidance to the right direction would be great because I am not sure where to start
You will need to use backend servers for that.
If you plan on broadcasting to multiple users directly from your mobile app then stop...
You need to connect your mobile app to a backend media server which then can be used to broadcast the video to a larger audience.
There are several commercial and open source alternatives that enable you to do that. I'd check Red5Pro, Wowza, SwitchRTC, Jitsi, Janus and Kurento for this task.
For the client side, look at react-native-webrtc
You can find more tools for WebRTC developers here.
Regarding your question (2), there's also a SDK for iOS here and a neat get-started-page here (although 2.5ys old, but I haven't found anything better so far yet)

Draw annotation on Twilio Video Chat

I want to use twilio for Remote assistance.
Where user can share camera feed and Technician can assist by drawing annotations on the screen.
similar to the demo video on https://www.twilio.com/video
I was able to get the Video Chat running on my iOS devices.
Can you please guide me how to make annotations on one device which will be shown on the other device.
Twilio Video does not provide support for annotating videos as part of the SDK. There is also no current support for using the WebRTC data channel to send that across. You need to provide your own websocket solution for this I'm afraid.
Edit
Twilio Video does support the data channel now, under the Data Tracks API. You can see the documentation here: https://www.twilio.com/docs/video/javascript-v1-using-the-datatrack-api.
You might also consider using Twilio Sync for something like this too.

iOS - XMPP with WebRTC for realtime video call or chat

I have searched the whole web but did not get any document for passing the XMPP IQ to WebRTC. Also I see is the XMPP Jingle class, but cannot find any document for integrate this.
Can someone help me with setting up a two-way video call using XMPP and WebRTC? By providing a working sample of Objective-C code?
I have tried:
Checking https://github.com/YK-Unit/AppRTCDemo and many other Github projects.
Are you want to support different platforms to get live video streaming?
So, i have a very good experience with https://www.nanocosmos.de/ library.
It's supports iOS, Android and Web. Has demo applications and trial period.
About documentation:
XMPP Framework: https://github.com/robbiehanson/XMPPFramework/wiki/IntroToFramework
It's very good documented.
WebRTC Native Code:
https://webrtc.org/native-code/ios/
It's contains all information about WebRTC.

What can we implement using native WebRTC in iOS? How much approx. time it will take in Screen sharing, Audio, Video and Text Chat implemetaion?

I want to develop a native iOS app using WebRTC that have almost similar functionality to skype. I have few queries :
Q 1) I know we can implement Audio and Video call using WebRTC but is
it possible to implement Text Chat and Screen Sharing in iOS app
using native WebRTC ?
Q 2) I need to provide time estimation of **Audio Call,Video Call,
Group Audio call, Group Video call, single user text(share media as well) chatting, multi user text (share media as well) chatting and
Screen Sharing.
Please let me know approx. development time of individual functionality if single developer works on it, who have good hands in iOS development.
Thank you....:)

Resources