WebRTC笔记之九:最简单的视频聊天(使用WebRtcVideoEngine)
程序开发
2023-09-20 23:41:19
一.环境
WebRTC版本:2021.03.07的master分支,详见 WebRTC学习之二:编译
Qt版本:Qt5.12.6 VS2017
二.效果
这里使用的是虚拟摄像头,虚拟摄像头那家强,当属OBS的插件。右下角是本地视频,比较大的是远端视频。
三.实现
1.数据发送
翻看WebRTC源码,可以发现rtp/rtcp的发送最终会调用到cricket::MediaChannel::NetworkInterface接口中的SendPacket和SendRtcp方法。因此我们只要子类化这个接口,并重写SendPacket和SendRtcp方法,在这两个方法中用udp协议将数据发送出去。当然,还需要调用cricket::VideoMediaChannel的SetInterface方法将我们子类化的接口设置到channel中。
bool QHNetworkInterface::SendPacket(rtc::CopyOnWriteBuffer* packet, const rtc::PacketOptions& options)
{
MutexLock lock(&mutex_); QUdpSocket udpsocketSendRTP;
udpsocketSendRT
标签:
上一篇:
神坑——后端允许了跨域但是前端(vue3 vite axios)仍然提示跨域
下一篇:
相关文章
-
无相关信息