Now.. we are facing audio problems when participants are more than 5 in the video room.
at this moment, I want to test about maxConcurrentPublishedTracks in the room attributes.
because when I create video room as group type, the value is set as 170.
Is it possible to set maxConcurrentPublishedTracks through twili rest api?
It is not possible to set maxConcurrentPublishedTracks through the REST API.
I recommend you read through the documentation on developing high quality video applications and understanding the various APIs that are available to you to control the quality, like the Network Bandwidth API and the Track Priority API. That will give you a good toolbox to improve your application.
Related
What I am trying to do is to create a simple virtual classroom project like Adobe connect, but obviously simpler, using Flutter and NodeJS, and I need the following options:
Real-time video or only voice streaming
Live chat box
Screen sharing ability
File sharing ability(Like PDF or PowerPoint or other text/doc files)
Whiteboard
As I searched so far I found that it seems WebRTC works for video/voice streaming and also screen sharing as well.
Also most of the livechat projects using Socket.IO.
My main question here is to know can I use only WebRTC for both real-time video/voice streaming and also live chat as well? Is it a good idea or it's better to combine Socket.IO and WebRTC together?
Furthermore I want to know can I use each of those libraries for File-Sharing purposes?
WebRTC gives you lower latency and a lot of functionality for conferencing out of the box. So for video/audio calls and screen sharing this is definitely a better choice.
Also, there's an option to use p2p communication which reduces latency even more and saves you resources on the server-side. Though if you intend to support many participants it looks less beneficial - you will need to maintain n-1 connections for each user if you have n users in total.
For live chat, whiteboard and file sharing there would be no big difference in terms of performance.
Things to consider:
WebRTC is more complex technology than websockets to setup and support
There might be opensource solutions for this features, i would make a decision based on what you can reuse in your project
You can use WebRTC for some of the features and websockets for others
can I use only WebRTC for both real-time video/voice streaming and
also live chat as well
Yes you can, there's a RTCDataChannel interface for exchanging arbitrary data. It can be used for live chat / whiteboard / file transfer.
As a good example, there's an opensource project peercalls, that implements chat and file transfer via WebRTC through the same connection that is used for conferencing.
Websockets can be used for file transfer as well, check out this library.
Using WebRTC requires signaling server and signaling is often implemented using websocket, check this mdn article Signaling and video calling
And with websocket you can implement livechat too, so it is not an either or situation but both quite often.
I am very confused about the calling sdk specs. They are clear about the fact that only one video stream can be rendered at one time see here...
BUT when I try out the following sample I get video streams for all members of the group call. When I try the other example (both from ms), it behaves like written in the specs... So I am totally confused here why this other example can render more than one video stream in parallel? Can anybody tell me how to understand this? Is it possible or not?
EDIT: I found out that both examples work with multiple videos streams. So it is cool that the service provide more than the specs say, but I do not get the point why the specs tell about that not existing limitations...
Only one video stream is supported on ACS Web (JS) calling SDK, multiple video stream can be rendered for incoming calls but A/V quality is not guaranteed at this stage for more than one video. Support for 4(2x2) and 9(3x3) is on the roadmap and we'll publish support as network bandwidth paired with quality assurance testing and verification is identified and completed.
I am using OpenTok's SDKs and APIs to build a live streaming and video conferencing website. I am wondering how websites like Twitch take a "real-time screenshot" of each streaming room and display it on their websites so that users can have a glance at the content of a room. Besides, is it possible to achieve this feature using Zoom's APIs? Thanks!
Manik here from OpenTok.
You can use the getImgData methods from the OpenTok SDK to capture screenshot of publishers and subscribers:
Publisher.getImgData
Subscriber.getImgData
These methods do not take screenshots of the application, but they give you base64 encoded strings of the live video which you can then use to reconstruct the view.
Hope this helps!
I am looking a solution for Video Chatting in Xamarin forms backend Azure. Azure currently not supporting WebRTC. So I plan to do Create 2 live streaming channel for the users. Take one end camera for one live streaming channel and same for another end user. Before I am doing this test, I want to know it will work or not and performance wise good or bad?
Or I can go with signalr?
Unfortunately, I think neither Azure Media Services, nor SignalR will give you the low latency you need for a live video chat application.
I think that your best bet when running on Azure, will be to grab a Virtual Machine and install a 3rd party product such as:
Kurento
jitsi
Wowza (which I think also offer their product as a SaaS)
Any other product you might find
Hope it helps!
I have an existing application having text based chat functionality using PubNub service. I need to add audio/video calling/recording feature. Which service would be best for this type of scenario? Existing app frontend is on react/redux and backend is on node js
I have researched on Twilio. It has good features but I have doubt about video calling. It is providing some room related apis but I need to implement video calling not any meeting related feature
Tok box is a good option for your application which is WebRTC based. Opentok provides set of features like-
video calling
audio calling
chat
screen sharing
screen recording etc.
Thanks