Skip to content

versatica/mediasoup-demo

Repository files navigation

mediasoup-demo v3

A demo application of mediasoup.

Try it online at https://v3demo.mediasoup.org

Resources

Configuration via query parameters

By adding query parameters into the URL you can set certain settings of the application:

Parameter Type Description Default Value
roomId String Id of the room Autogenerated
displayName String Display name of your participant Autogenerated
handlerName String Handler name of the mediasoup-client Device instance Autodetected
forceTcp Boolean Force RTC (audio/video/datachannel) over TCP instead of UDP false
produce Boolean Enable sending of audio/video true
consume Boolean Enable reception of audio/video true
mic Boolean Enable microphone by default true
webcam Boolean Enable webcam by default undefined (it respects stored settings, initially true)
datachannel Boolean Enable DataChannels true
preferLocalCodecsOrder Boolean Prefer the codecs order of the browser instead of the codecs order configured in the server false
forcePCMA Boolean Force PCMA codec for microphone false
forceVP8 Boolean Force VP8 codec for webcam and screen sharing false
forceH264 Boolean Force H264 codec for webcam and screen sharing false
forceVP9 Boolean Force VP9 codec for webcam and screen sharing false
forceAV1 Boolean Force AV1 codec for webcam and screen sharing false
enableWebcamLayers Boolean Enable simulcast or SVC for webcam true
enableSharingLayers Boolean Enable simulcast or SVC for screen sharing true
webcamScalabilityMode String scalabilityMode for webcam 'L1T3' for VP8/H264 (in each simulcast encoding), 'L3T3_KEY' for VP9
sharingScalabilityMode String scalabilityMode for screen sharing 'L1T3' for VP8/H264 (in each simulcast encoding), 'L3T3' for VP9
numWebcamSimulcastStreams Number Number of streams for simulcast in webcam 3
numSharingSimulcastStreams Number Number of streams for simulcast in screen sharing 3
videoContentHint String Value to apply to track.contentHint in produced video tracks (for webcam and screen sharing) ''
screenSharing4K Boolean Use 4K resolution for screen sharing false
info Boolean Display detailed information about media transmission over each peer false
stats Boolean Display detailed information about WebRTC stats false
faceDetection Boolean Run face detection false
externalVideo Boolean Send an external video instead of local webcam false
e2eKey String Key for media E2E encryption/decryption (just works with some OPUS and VP8 codecs)
consumerReplicas Number Create artificial replicas of yourself and receive their audio and video (not displayed in the UI) 0
usePipeTransports Boolean If true, each room will use separate mediasoup routers to produce and consume and will communicate them with pipe transports false

Installation

  • Clone the project:
git clone https://github.com/versatica/mediasoup-demo.git
cd mediasoup-demo
  • Ensure you have installed the dependencies required by mediasoup to build.

  • Set up the mediasoup-demo server, read server/README.md.

  • Set up the mediasoup-demo browser app:

cd app
npm install --legacy-peer-deps

Authors

License

ISC

About

mediasoup official demo application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published