在创建了router(代表一个房间)之后,producer要发送音视频数据之前就要先创建Transport,分为WebRtcTransport 、PlainTransport、PipeTransport三种,我们这里主要讲的是WebRtcTransport 。
参考下官方api的使用:
// 参数详情参与链接
// https://mediasoup.org/documentation/v3/mediasoup/api/#WebRtcTransportOptions
const transport = await router.createWebRtcTransport(
{
listenIps : [ { ip: "192.168.0.111", announcedIp: "88.12.10.41" } ],
enableUdp : true,
enableTcp : true,
preferUdp : true
});
nodejs 主进程的函数createWebRtcTransport中通过发送'router.createWebRtcTransport'指令给c++ 子进程,代码如下:
// this.#internal 为 { routerId },代表属于哪个router
const internal = { ...this.#internal, transportId: uuidv4() };
const reqData = {
listenIps,
port,
enableUdp,
enableTcp,
preferUdp,
preferTcp,
initialAvailableOutgoingBitrate,
enableSctp,
numSctpStre

本文深入解析了在mediasoup框架中创建WebRtcTransport的过程,从Node.js主进程如何调用C++子进程的API,到C++层面的处理方法。详细介绍了创建WebRtcTransport的步骤,包括设置参数、创建实例以及响应信息的返回。后续将探讨connect和produce的具体细节。
最低0.47元/天 解锁文章
296

被折叠的 条评论
为什么被折叠?



