WebRTC
What is WebRTC
WebRTC for Unity is a package that allows WebRTC to be used in Unity.
Requirements
This version of the package is compatible with the following versions of the Unity Editor:
- Unity 2019.4
Platform
- Windows
- Linux
- macOS (Apple Slicon is not supported yet)
- iOS
Note
Android platform is not supported yet.
Encoder support
Platform | Graphics API | Hardware Encoder | Software Encoder |
---|---|---|---|
Windows x64 | DirectX11 | ✅ (Require NVIDIA Graphics card) | ✅ |
Windows x64 | DirectX12 | ✅ (Require NVIDIA Graphics card) | ✅ |
Windows x64 | OpenGL | ||
Windows x64 | Vulkan | ✅ (Require NVIDIA Graphics card) | ✅ |
Linux x64 | OpenGL | ✅ (Require NVIDIA Graphics card) | |
Linux x64 | Vulkan | ✅ (Require NVIDIA Graphics card) | ✅ |
MacOS | Metal | ✅ | ✅ |
iOS | Metal | ✅ | ✅ |
Android | Vulkan |
Decoder support
Platform | Graphics API | Hardware Decoder | Software Decoder |
---|---|---|---|
Windows x64 | DirectX11 | ✅ | |
Windows x64 | DirectX12 | ✅ | |
Windows x64 | OpenGL | ✅ | |
Windows x64 | Vulkan | ✅ | |
Linux x64 | OpenGL | ✅ | |
Linux x64 | Vulkan | ✅ | |
MacOS | Metal | ✅ | ✅ |
iOS | Metal | ✅ | ✅ |
Android | Vulkan |
To check the compatible NVIDIA graphics card, please visit on the NVIDIA VIDEO CODEC SDK web site.
This package depends on NVIDIA Video Codec SDK 9.1. Please check the graphics driver version.
- Windows: Driver version
436.15
or higher - Linux: Driver version
435.21
or higher
Note
On Linux, libc++1
libc++abi1
packages should be installed.
Please install like command below
sudo apt install -y libc++1 libc++abi1
Installation
Please see Install package.
Samples
The package contains the following samples.
Scene | Details |
---|---|
PeerConnection | Checking the process of connecting to a peer |
DataChannel | Sending and receiving text |
MediaStream | Sending and receiving video/audio |
Stats | Checking the process of getting stats |
MungeSDP | Checking effects with mungring SDP parameters |
VideoReceive | Sending and receiving video stream |
MultiVideoReceive | Receiving multiple video streams with one peer |
MultiplePeerConnections | Receiving video stream with multiple peers |
ChangeCodecs | Controlling codecs of the video sender |
TricleIce | Checking the trickle ICE functionality |
To get these samples, Push the Import into Project
button on Package Manager.