Realtime user interaction is a great way to enhance the communication and collaboration capabilities of a web application. Video chat is an obvious choice for sales, customer support, and education sites, but is it practical to implement? If you’re developing with Angular on the frontend and ASP.NET Core for your server, Twilio Programmable Video enables you to efficiently add robust video chat to your application.
This post provides instructions and code for creating a video chat app with ASP.NET Core 3.0. To learn how to build the …
The Twilio Programmable Video team is excited to announce that the Track Subscription API is now generally available. Before this release, video participants were automatically subscribed to all tracks. Now, developers can define which participants receive which tracks and control dynamically what end-users see and hear. This new API is available in Group Rooms, Twilio’s solution for multiparty video conferencing.
In this post we outline how we’ve improved the Group Rooms subscription model and share how to get started with the Track Subscription API.
To date, Group Rooms have enforced a subscribe-to-all model. This means that participants automatically subscribe to all the tracks and receive all the audio and video information published to the Room without the choice of opting-out. While this works for most collaboration applications, there are situations where there is an opportunity to provide improved participant experiences. These include:
- Subscribe-to-one: Participants subscribe only to a presenter’s tracks. …
We've seen a video chat built in React on this blog before but since then, in version 16.8, React released Hooks. Hooks let you use state or other React features inside functional components instead of writing a class component.
In this post we are going to build a video chat application using Twilio Video and React with only functional components, using the
What you'll need
To build this video chat application you will need the following:
Once you've got all that, we can prepare our development environment.
So we can get straight to the React application, we can start with the React and Express starter app I created. Download or clone the starter app's "twilio" branch, change into the new directory and …
We are thrilled to announce that the Network Bandwidth Profile API is now available via Public Beta: a Programmable Video API designed to improve the quality of experience in Group Rooms. Before this release, video bandwidth was split equally between tracks, which meant that lower and higher priority tracks received the same treatment. Now with this release, developers can specify how the available network bandwidth is allocated, reallocate bandwidth to higher priority tracks, protect audio quality, and optimize battery and network resources consumption.
Why a Network Bandwidth Profile API?
Programmable Video Group Rooms are based on an SFU (Selective Forwarding Unit) architecture. This means that participants publish audio and video as independent tracks to the SFU server, which in turn routes them to the rest. Hence, the number of subscribers tracks per participant grows as N-1 where N is the total number of participants.
The SFU can control the quality …
A few months ago we announced Twilio Programmable Video Network Quality API: a simple mechanism enabling end-users to be notified, in real-time, about their network quality using a 1-to-5 scale as a measure. Our developer community is incredibly important to us; we have been working hard to address the feedback you’ve provided since the launch. Today, we are thrilled to announce an enhanced version of the Network Quality API. Based on your feedback, we’ve released new features that enable broader quality monitoring and diagnostics.
Before delving into the details of these new features, we’d first like to share with you the feedback that influenced these updates. We will then outline what has changed and how to use these enhancements in your work.
Developer Feedback on Programmable Video Network Quality API
To explain why we’ve implemented these new features, we’d like to recap what we learned from our developer community: …
Today, we are proud to announce that Twilio Programmable Video provides support for Safari 12.1 VP8 codec on iOS and macOS. This will help you serve your real-time video users with enhanced interoperability and experience.
Using Programmable Video in Safari 12.1
Safari has an estimated 15% share of the browser market and is the default and most widely used solution on iOS. This makes its support essential for any real-time video communications platform. In Safari 11, the only supported video codec was H.264. This made the creation of interoperable Group Rooms applications challenging given that the developers needed to choose between two options:
- To force all Group Room participants to use the H.264 codec.
- To accept that Safari 11 users will not be capable of rendering video tracks coming from Firefox or Chrome users.
The first limits interoperability and restricts developer freedom to select the most appropriate codec for each …
Prerequisites to a Angular and ASP.NET Core Video App
You’ll need the following technologies and tools to build the video chat project described in …
We’ve heard from customers who’ve built apps with Twilio Video that they’d like to add in callers from SIP or the PSTN (Public Switched Telephone Network), as there are times where Participants would like to dial-in to the Room from a telephone.
Starting today, you can now connect Participants from the PSTN or over SIP audio to Programmable Video Group Rooms or Small Group Rooms (for simplicity in this post we’ll refer to both Room types as Group Rooms).
Now, with just a few lines of code, you can:
- Receive phone calls to a Video Group Room from any Twilio phone number
- Make outbound phone calls to add Participants to a Video Group Room.
PSTN/SIP Participants will be able to share their audio to the Video Group Room and will receive a mixed audio stream from the other participants connected to the Room.
New TwiML Verb
To connect the PSTN/SIP …
When the network is the problem, what’s the solution?
Most of us have experienced the annoying effects of degraded video conferencing quality: audio becomes robotic and choppy while video turns into a sequence of blurry pictures. This is frustrating for end-users who tend to complain to application developers and platform providers asking for a solution. However, experience shows that most of the time, what causes these problems is the network access of the end users themselves. Notably, crappy wifi.
Wireless links are subject to so many different types of interference that can cause packet loss that it’s impossible to control. Worse, the use of shared access mechanisms split the available bandwidth amongst channels and may cause bitrate drops in crowded areas. Even with wired ethernet, routers and firewalls might get congested causing jitter, latency and packet loss. Worst of all, free, coffee shop wifi.
When video conferencing, all these problems …
Before eLearning, a student needed to commute across town or even move to a different country to get a quality education. Improvements in technology, especially in WebRTC, has taken the hassle out of connecting students with great teachers and schools.
I’m Alex from LearnCube, virtual classroom software that specializes in helping language-learning and academic tutoring companies teach online.
When we started four years ago, we made a bet that WebRTC would be the video technology of the future. Users much prefer the seamless experience of not having to download an external app or software. The quality has been getting better every year and it’s already superior to many many established video-conferencing providers.
We became a Twilio customer for Programmable Video in late 2017 after learning that Twilio had acquired Kurento. What we found was a quality video platform to embed in our virtual classroom software at an affordable …