52 lines
1.3 KiB
TypeScript
52 lines
1.3 KiB
TypeScript
import os from 'os';
|
|
import { types as mediasoupTypes } from 'mediasoup';
|
|
|
|
export const workerSettings: mediasoupTypes.WorkerSettings = {
|
|
rtcMinPort: 2000,
|
|
rtcMaxPort: 2300,
|
|
logLevel: 'debug',
|
|
logTags: ['info', 'ice', 'dtls', 'rtp', 'srtp', 'rtcp', 'message']
|
|
};
|
|
|
|
export const routerOptions: mediasoupTypes.RouterOptions = {
|
|
mediaCodecs: [
|
|
{
|
|
kind: 'audio',
|
|
mimeType: 'audio/opus',
|
|
clockRate: 48000,
|
|
channels: 2
|
|
},
|
|
{
|
|
kind: 'video',
|
|
mimeType: 'video/VP8',
|
|
clockRate: 90000,
|
|
parameters: {
|
|
'x-google-start-bitrate': 1000
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
export const webRtcTransportConfig: mediasoupTypes.WebRtcTransportOptions = {
|
|
// https://mediasoup.org/documentation/v3/mediasoup/api/#WebRtcTransportOptions
|
|
listenInfos: [
|
|
{
|
|
protocol: 'tcp',
|
|
ip: '0.0.0.0',
|
|
announcedIp: process.env.MEDIASOUP_ANOUNCE_IP // public ip
|
|
},
|
|
{
|
|
protocol: 'udp',
|
|
ip: '0.0.0.0',
|
|
announcedIp: process.env.MEDIASOUP_ANOUNCE_IP // public ip
|
|
}
|
|
],
|
|
enableUdp: true,
|
|
enableTcp: true,
|
|
preferUdp: true
|
|
};
|
|
|
|
export default {
|
|
numWorkers: Object.keys(os.cpus()).length
|
|
};
|