Google webrtc本机实现是否支持SFU? Google WebRTC本机实现是否支持SFU Google WebRTC本机实现是否支持集成自定义/硬件编码器/解码器

Google webrtc本机实现是否支持SFU? Google WebRTC本机实现是否支持SFU Google WebRTC本机实现是否支持集成自定义/硬件编码器/解码器,webrtc,gstreamer,p2p,openwebrtc,Webrtc,Gstreamer,P2p,Openwebrtc,不是没有改动的 在内部,WebRTC的内部音频/视频管道直接连接到编码器/解码器 PeerConnectionFactory允许您提供视频解码器/编码器工厂,因此您可以在此处短路逻辑,获取编码帧,模拟流,并将其作为中继直接送入其中,创建新的PeerConnection并将这些流设置到其中 音频端比较困难。这里没有编解码器工厂,因此您必须通过修改libwebrtc使那里的逻辑短路 最后一个问题是RTCP终止,以及如何覆盖质量/带宽控制机制,以避免出现“一个出去,他们都出去”的情况 由于libweb

不是没有改动的

在内部,WebRTC的内部音频/视频管道直接连接到编码器/解码器

PeerConnectionFactory允许您提供视频解码器/编码器工厂,因此您可以在此处短路逻辑,获取编码帧,模拟流,并将其作为中继直接送入其中,创建新的PeerConnection并将这些流设置到其中

音频端比较困难。这里没有编解码器工厂,因此您必须通过修改libwebrtc使那里的逻辑短路

最后一个问题是RTCP终止,以及如何覆盖质量/带宽控制机制,以避免出现“一个出去,他们都出去”的情况

由于libwebrtc将是SFU,因此它将从远程对等方接收其代理内容的RTCP反馈,反之亦然

对于1-1情况,它需要能够将RTCP反馈转发给远程对等方

对于多点,它需要执行一些逻辑来确定其中一个对等点是否有问题,并停止向其发送视频,关闭其视频馈送,或尝试切换到较低比特率的视频流。基本上,它需要充当一个管道,试图预测数据包丢失发生的原因/方式,并使尽可能多的音频/视频馈送以每个对等方尽可能高的质量正常运行


如何准确地劫持libwebrtc中的RTCP反馈机制,我认为这同样可能需要对libwebrtc进行一些定制/挂钩,我认为使用GStreamer实现WebRTC会更容易。尽管它仍处于“坏插件”状态,但获取或提供编码音频和视频要容易得多。实际上,它的实现就是为了让MFU和SFU的实现更容易