简体   繁体   中英

How to design a multi platform video conference/chat app?

I am a developer who is still learning. I want to design an app which can allow multiple people to have a video conference/chats simultaneously something like zoom. I know i can design native apps like specific for Android as well as iOS but I am still learning Android development and have no idea about iOS code.I searched and found that we can have hybrid apps having React,Node.js or with Angular.js and they work on different platforms.But as I'm a newbie I need suggestions as well as guidance.what I'm expecting in my app are following things:

  • Should support all video resolutions and audio quality, should work in low and high.network scenarios
  • Should be low on usage of power/ processor
  • Should not have any external hardware dependency
  • Should work on any device
  • Should have chat option during conference, even the multi people conference
  • Should have sign-in and non-sign-in options to join a conference
  • Can be browser and/or app based interface
  • Should have encrypted.network communication
  • Should have audio/ video recording feature
  • Should have screen/file sharing capabilities
  • Should allow audio to close captioning during chat (multilingual)
  • Should have capabilities to host multiple concurrent conferences having multiple participants in each conference I know its a tedious task to involve everything I discussed but I need guidance how to do this.

I have already told my expectation so now I want to know what steps I need to do so,How to start as well as where to start,what language/library I should choose,whether having a hybrid app be a good idea or should I go for native apps.As I have earlier said I am a learner so I am going to learn each and everything to get my project done,so whether its react or node or angular or whatever experienced developer are going to suggest/guide here.I know my question may look broad or even vague but still I am asking only because I see stack-overflow as a group of supportive accomplished coders.Hope you guys will help me in getting my project done.Thank you !

OK then you have got much work to do. I will point you to some references which should give you a good start. I will try to keep this as short as possible.

As you mentioned, WebRTC is the way to go.

With WebRTC, you can add real-time communication capabilities to your application that works on top of an open standard. It supports video, voice, and generic data to be sent between peers, allowing developers to build powerful voice- and video communication solutions. The technology is available on all modern browsers as well as on native clients for all major platforms.

This blog explains how WebRTC functions in details - https://medium.com/@anto.christo.20/understanding-web-real-time-communication-webrtc-d4cec5a43f2f

This blog explains how to build peer2peer video calling in android - https://medium.com/@anto.christo.20/understanding-web-real-time-communication-webrtc-d4cec5a43f2f

https://webrtc.org/ also contains lot of headstart material including sample code.

Once you have done this you can add other features on top of it.

Now, this will take care of peer2peer but if you want o build a multi-user functionality from scratch there is some extra work required as mentioned in the answer - how to build multi-user video chatting web app using webRTC, node.js and socket.io

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM