Mediasoup nedir? ve Mediasoup’un Ubuntu’ya Kurulumu

Mediasoup nedir?
Mediasoup, uygulamaların tarayıcı ve mobil cihazlarla çok akışlı bir şekilde çok taraflı video konferans çalıştırmasına olanak tanıyan Node.js için bir WebRTC SFU’dur (Selective Forwarding Unit). Yine başka bir bağımsız medya sunucusu olmaktan ziyade, mediasoup, mevcut uygulamalara kolayca entegre edilebilen bir Node.js kitaplığı/modülüdür. mediasoup, hem ORTC API’yi hem de WebRTC API’yi (tarayıcılarda olduğu gibi) açığa çıkararak, uygulamanın JavaScript aracılığıyla çok taraflı video konferans programlamasına izin verir. mediasoup minimalisttir, sadece medya işlemeye odaklanır. Belirli bir ağ sinyalizasyon protokolü sağlamaz veya bunu zorunlu kılmaz.
1. Hazırlık
İlk olarak, bir Linux sunucusu edinin, Ubuntu’yu öneririm, NodeJS ve NPM’nin en son sürümünü yükleyin, yükleme yöntemi konusunda “Ubuntu’ya en son NodeJS ve NPM kurulumu” başlıklı bir makaleye başvurabilirsiniz.
Kurulum ve dağıtım işleminin kaynak kodunu GitHub’dan indirmesi gerekiyor, bu nedenle önce git’i yüklemeniz gerekir, git’i yüklemek için aşağıdaki komutu kullanın
sudo apt-get install git -y
2. Mediasoup’u yükleyin
Mediasoup’u kurmak için aşağıdaki komutu kullanın
sudo npm install mediasoup
3. Mediasoup-istemcisini kurun
Mediasoup-client’ı kurmak için aşağıdaki komutu kullanın
sudo npm install mediasoup-client
4. Mediasoup-demo’yu kurun
4.1 İndirme Kaynağı
Kaynak kodunu GitHub’dan klonlamak için aşağıdaki komutu kullanın
git clone https://github.com/versatica/mediasoup-demo.git
4.2 Kurulum Yapılandırma Sunucusu
Sunucu dizinine girin
cd mediasoup-demo/server
Sunucuyu Kurun
npm install
config.example.js
dosyasını config.js olarak yeniden adlandırın ve ayarları özelleştirin
cp config.example.js config.js
4.3 Tarayıcı Uygulamasının Kurulması
Tarayıcı uygulama dizinine gidin
cd mediasoup-demo/app
Tarayıcı uygulamasını yükleyin
npm install
Global kurulum gulp-cli
(sudo yetkisi ile kullanılması gerekebilir) :
npm install -g gulp-cli
5. Mediasoup Demo projesini çalıştırın
5.1. Önce bir terminal açın, sunucuyu çalıştırın:
cd mediasoup-demo/server
node server.js
5.2. Başka bir terminalde Başlangıç uygulamasını açın:
cd mediasoup-demo/app
gulp live
5.3. daha sonra, aşağıda gösterildiği gibi, göz atmak için tarayıcıyı kullanabilirsiniz, her iki tarayıcı da aynı toplantı odasına
https://example.com:3000/?roomId=2DFIEmtg0k
, bunlardan bazıları:
https://example.com:3000/
Mediasoup Demo projesi için erişim adresi2DFIEmtg0k
, konferans odası kimlik numarasıdır
4. URL parametreleri ile ayarlanabilir. İlgili URL parametreleri ve açıklamaları aşağıdaki tabloda gösterilmektedir:
parametre | Açıklama |
---|---|
roomId | Toplantı odası kimliği, herhangi bir string |
displayName | Mevcut kullanıcı adı, keyfi string |
sipEndpoint | Bir SIP terminali, true -evet, false -hayır, varsayılan false |
simulcast | Simulcast’in etkinleştirilip etkinleştirilmeyeceği, true -evet, false -hayır, varsayılan true |
forceTcp | TCP’nin zorlanıp zorlanmayacağı, true -evet, false -hayır, varsayılan false |
spy | Casus, true -evet, false -hayır, varsayılan false |
forceH264 | Geçerli terminalin H264 kodlaması kullanmaya zorlanıp zorlanmayacağı, true -evet, false -hayır, varsayılan false |
Örneğin: aşağıdaki ayarları yapmak için aşağıdaki adresi açın
- Mevcut terminal tarafından girilen konferans odası kimliği: 123456
- Mevcut terminal takma adı: cgs
- Mevcut terminal Simulcast’i açar
- Mevcut terminal, kodlama için H264 kullanıyor (varsayılan VPx kodlamadır)
https://example.com:3000/?roomId=123456&displayName=cgs&simulcast=true&forceH264=true
6. Referanslar
Multi-party call research based on mediasoup https://blog.csdn.net/gupar/article/details/83788934
7. Ek
Mediasoup Official Demo
https://github.com/versatica/mediasoup-demo.git
Mediasoup yayın örneği
https://github.com/michaelfig/mediasoup-broadcast-example.git
Mediasoup’un basit bir örneği
https://github.com/footniko/mediasoup-sample.git