webrtc windows 编译,以及peerconnection_client

webrtc windows环境编译,主要参考webrtc官方文档,自备梯子

depot tools 安装

Install depot_tools

因为我用的是windows,这里下载bundle 的安装包,然后直接解压,最后设置到环境变量PATH。

执行gn等命令不报错,说明装好了

备注:我的系统里面安装msys,可以先把环境变量替换下,不然会和windows 的python环境有可能有冲突(会报cygwinreg 的python 库错误,应该是webrtc 使用的python源不对,要用windows的python,不能使用msys mingw的python)

环境变量

配置几个环境变量,本机用的是vs2019,但是下载的代码应该是最新的代码,依赖windows最新的sdk,如果没有安装的到时候编译会报错,注意看错误信息,目录里面是否有,没有的话就需要安装最新的windows 11 SDK

注意根据提示信息安装最新的SDK,visual studio 2019 的sdk 里面找不到这个,必须到微软网站上下载安装。

下载代码编译

建立一个文件夹,用fetch --nohooks webrtc 下载代码

使用gclient sync 同步代码

生成ninja的编译文件,最后执行ninja -C out/Default就可以编译了,大概7000多个文件。

测试

这里简单看了两个demo

peerconnection_server.exe 和peerconnection_client.exe

先运行peerconnection_server,然后再浏览器里面打开html文件server_test.html

点击connect,然后再打开一个,继续connect,记录里面的id,然后就可以通过target peer id 来给对方发信息了,但是目前的版本应该有bug,显示不了message的内容。

我们在看看peerconnection_client怎么玩

存在的问题,使用localhost连接不上服务器(通过修改server的代码,发现压根没accept),有可能是电脑上有梯子导致的。直接用本机的ip地址(server 是监听any socket)这样就能连上了。不过不好意思,还是看不到视频。

经过各种查找,最后在webrtc的官方找到解决方案,对着patch 修改下源码就可以了。

13498 - webrtc - Web-based real-time communication - Monorail

主要是上面两点,加上基本上连接就能看到peer了。

相关推荐
平行云5 天前
国产GPU云渲染适配实战:驱动兼容、编码调优与多路并发
unity·ue5·webrtc·webgl·实时云渲染·云桌面·像素流送
隐擎fox6 天前
网络传输安全剖析:WebRTC 本地真实 IP 泄漏机制(STUN/TURN)与 Python 防护检测实战
网络·网络协议·tcp/ip·安全·webrtc
福大大架构师每日一题8 天前
mediamtx v1.21.0 发布:Media-over-QUIC、RTSP、HLS、WebRTC 与安全能力全面升级
安全·webrtc
脏脏a9 天前
Neko 自托管实战:WebRTC 远程浏览器、多用户权限与公网访问
webrtc
cuijiecheng201810 天前
从 6.49 秒到约 1.9 秒:RK3588上的WebRTC 实时流启动速度优化记录
webrtc
SendTomo11 天前
SendTomo 与 send.wang 全景对比评测与实战指南
网络·网络协议·tcp/ip·webrtc·p2p
java_logo11 天前
Docker 部署 SRS:轻松搭建实时音视频流媒体平台
docker·容器·webrtc·实时音视频·rtmp·http-flv·轩辕镜像
wjcroom12 天前
一个可以在线多人玩的五子棋开发与布署方法-WebRTC和WebSocket的测试方法
websocket·网络协议·webrtc
cuijiecheng201815 天前
RK3588 WebRTC 实时流卡顿优化:从视频桥接到 H.264 PTS 回退
音视频·webrtc·h.264
SendTomo17 天前
send.wang:基于浏览器WebRTC实现无客户端文件互传
网络·python·网络协议·webrtc·p2p