Level up your Twilio API skills in TwilioQuest, an educational game for Mac, Windows, and Linux. Download Now
Build the future of communications.
Start building for free

Video posts

  • By David Pine
    Building a Twilio Programmable Video Chat App with Angular and ASP.NET Core 3.0 asp-net-core-csharp-angular-twilio-video-chat-workflow

    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 will show you how to create a running video chat application using the Twilio JavaScript SDK in your Angular single page application (SPA) and the Twilio SDK for C# and .NET in your ASP.NET Core server code. You’ll build the interactions required to create and join video chat rooms, and to publish and subscribe to participant audio and video tracks.

    This post provides instructions and code for creating a video chat app with ASP.NET Core 3.0. To learn how to build the …

    Read More
  • By Luis Lopez
    Announcing Programmable Video Track Subscription API Video Track Subscription API Header

    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.

    Description of different video track subscription models

    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. …
    Read More
  • By Phil Nash
    Build a Video Chat with React Hooks Build a Video Chat with React Hooks

    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 useState, useCallback, useEffect and useRef hooks.

    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.

    Getting started

    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 …

    Read More
  • By Luis Lopez
    Announcing Programmable Video Network Bandwidth Profile API Announcing Programmable Video Network  Bandwidth Profile API

    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.

    Illustration of how network bandwidth is assigned to video tracks

    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 …

    Read More
  • By Luis Lopez
    Enhancements to the Programmable Video Network Quality API Network Quality API

    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: …

    Read More
  • By Luis Lopez
    Programmable Video adds support for Safari 12.1 Programmable Video + Safari

    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 …

    Read More
  • By David Pine
    Build a Video Chat App with ASP.NET Core, Angular, and Twilio mk-TOY_PUIUFMHxRgxDCVpNPAw6LprK_D8dWG2KYLxg-IkukJ9bc01jtzPaR9dHxrLYwwnRVzbWGNg-AOUWPqcRwzyszB_8oh9_xac0-NQcjGgE5FDqZeA_4Xw5ddRKusfYaiTp0

    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 how can you quickly implement it? Twilio Programmable Video enables you to efficiently add robust video chat to your applications, whether you are using a JavaScript Model-View-Controller framework like Angular or server-side templates.

    This post will show you how to create a video chat application using the Twilio JavaScript SDK in your Angular single page application (SPA) and the Twilio SDK for C# and .NET in your ASP.NET Core server code. You’ll build the interactions required to create and join video chat rooms, and to publish and subscribe to participant audio and video tracks.

    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 …

    Read More
  • By Kedar Toraskar
    Now You Can Add Programmable Voice Participants to Video Group Rooms phone-300x198.png

    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.

    video-interop

    New TwiML Verb

    To connect the PSTN/SIP …

    Read More
  • By Justin Pirie
    Announcing Programmable Video Network Quality API E3_227YeEwTpncm0VgqLtYJWU6UUpdXs8DauEraaBfkg-EnHipP5O8JwdxyXxP48YGpL0MhXIY0CzCjZUZNE4SuTvENq5s2IkIAMqPzfTHOyme4hdPrng00nBI0bUYuGxag_T_9s

    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 …

    Read More
  • By Justin Pirie
    Built with Twilio Video: LearnCube Virtual Classroom mvf5B5XHrokZ8pVkLnO1hbfn9gfcnlm_NHRsb8MoxVjlriMeR_H78K4KXYlAAMAlitQrW2H68PAlw8aJZT7qEkwy-K4mcBY0Y-BfoZNOXa01dGatoItu7pRYmwYjo7SeAtrRg_PR

    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 …

    Read More
  • Newer
    Older
    Sign up and start building
    Not ready yet? Talk to an expert.