Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/philnash/advanced-twilio-video
An example of using some advanced Twilio Video features to improve the user experience
https://github.com/philnash/advanced-twilio-video
noise-cancellation twilio twilio-video video-background webrtc
Last synced: 1 day ago
JSON representation
An example of using some advanced Twilio Video features to improve the user experience
- Host: GitHub
- URL: https://github.com/philnash/advanced-twilio-video
- Owner: philnash
- License: mit
- Created: 2022-09-01T03:13:52.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-09-01T03:33:37.000Z (over 2 years ago)
- Last Synced: 2024-12-19T17:13:08.294Z (about 2 months ago)
- Topics: noise-cancellation, twilio, twilio-video, video-background, webrtc
- Language: JavaScript
- Homepage:
- Size: 194 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Advanced Twilio Video
This project is an example of a [Twilio Video](https://www.twilio.com/docs/video) application using advanced features to improve the experience for users connecting through it.
* [Features](#features)
* [Pre-call A/V checks](#pre-call-av-checks)
* [Video Backgrounds](#video-backgrounds)
* [Noise cancellation](#noise-cancellation)
* [Running this project](#running-this-project)## Features
### Pre-call A/V checks
Rather than dropping a user straight into a room, they are shown a settings page that allows them to see and change their camera, check that their microphone is correct and working using the Twilio RTC Diagnostics library.
Ensuring that users understand the resources that they are using, and their connectivity, improves the expectations in a call and leads to fewer issues with getting the wrong camera or microphone, or being on mute.
* [How to switch cameras in a video chat](https://www.twilio.com/blog/2018/06/switching-cameras-twilio-video-chat.html)
* The open source [Twilio RTC Diagnostics library](https://github.com/twilio/rtc-diagnostics)
* [Example WebRTC Diagnostics application](https://github.com/twilio/twilio-video-diagnostics-react-app)
* The [Twilio Video Preflight API](https://www.twilio.com/docs/video/troubleshooting/preflight-api)### Video Backgrounds
Because Video calls can be taken anywhere, providing privacy for your users is important. Using Twilio Video's processors, we can provide background blurring or background replacement.
* How to [change the background in your Twilio Video calls with the Twilio Video Processors library](https://www.twilio.com/blog/change-background-video-calls-twilio-video-processors-library)
* [Video Processors documentation](https://www.twilio.com/docs/video/video-processors)
* The [Video Processor source code](https://github.com/twilio/twilio-video-processors.js)### Noise cancellation
Much as it is hard to control your visual background, it can also be difficult to control background noise. With [Twilio Video's Noise Cancellation](https://www.twilio.com/blog/introducing-noise-cancellation-for-twilio-video) we can improve the quality of every video call by removing unnecessary background noise.
* [Noise Cancellation with Twilio Video](https://www.twilio.com/blog/introducing-noise-cancellation-for-twilio-video)
## Running this project
To run this project you will need Node.js version 18 and a Twilio account ([sign up for a free Twilio accout here](https://www.twilio.com/try-twilio)). Once you have those, in hand, follow these steps:
1. Clone the repository from GitHub
```
git clone https://github.com/philnash/advanced-twilio-video.git
cd advanced-twilio-video
```1. Install the repositories
```
npm install
```1. Copy the `.env.example` file to `.env`
```
cp .env.example .env
```1. Fill in your Twilio Account Sid in `.env`. Create an API Key and Secret in the Twilio console and fill those both into `.env` too.
1. Run the project with
```
npm start
```Note: some of the features in this example application require Group rooms. You may need to switch the default room type to Group rooms.