webrtc windows for vs 2019 编译工程下载

发布于 2022-11-21 | 作者: 深途 | 来源: 知乎 | 转载于: 知乎

要学习 webrtc,我们所面临的第一道难关,就是如何搞定 webrtc的源码,基于学习的目的我们选择的是windows平台.

今天我们要解决的是:

不翻墙下载最新版的webrtc代码,不使用代理.

已经下载好的windows源码百度网盘链接如下:

链接:pan.baidu.com/s/1vRF-00

提取码:bzhe

目前的版本应该是最新的2021.3.15更新版本.


网上有太多适用代理的教程,以及包括声网的国内镜像下载,这二种方法,我都尝试过,四个字费时费力。

其实我们有更简单的方法:

1.在阿里云上购买一台带ui的windows server,区域选择国外,不用翻墙.

2.在windows云主机上下载完webrtc的源码和对应windows的工具链后,压缩代码同时上传到百度云上,我们再到本机上拉下最新代码,用vs2019完成编译.

最终效果如下:


阿里云上购买windows云主机教程:

1.进入到阿里云控制后台,选择云服务器ECS


选择创建实例:

一定要选择按量付费,地区选择美国(硅谷)(非国内即可)

硬件配置选择: 4核4G(不要选择太低的,远程操作太过痛苦!)


选择操作系统,下图是我选择的配置,这个windows server是带UI的,硬盘40-60G之间足够用了.

进入到下一步选择带宽配置,注意一定要选择:按量付费

这个时候我们的远程主机就创建成功了,配置好账号和密码,准备进入到远程主机:


选择vcn连接:

已经进入到系统,大功告成了,打开下久违的没有见到的谷歌:


2.webrtc源码下载

在源码下载之前,有一些必须的工具我们需要安装好,自己谷歌搜索,然后下载:

必备工具:

python3

git

百度网盘

2.1在c盘下创建目录webrtc,然后下载depot_tools到webrtc目录下:

git clone chromium.googlesource.com

下载完成之后,我们需要配置环境变量,这里需要配置2个环境变量:

DEPOTTOOLSWIN_TOOLCHAIN 0 ,这个变量配置后,gclient sync会下载buildtools.

第二部需要把depot_tools的目录添加到 PATH环境变量中.

上面2个变量配置好了后,重启server,让环境变量生效.


2.2 开始下载源码:

现在我们在目录c://webrtc下,首次下载源码一定要执行一下 gclient,注意注意.

接下执行如下命令:

Mkdir webrtc-checkout

Cd webrtc-checkout

Fetch –nohooks webrtc

这个时候会开始下载webrtc的源码,同时会在third_party里面下载各种依赖的工具集,主要是这个third_party特别大,由于我们是按带宽付费,这个时间大概会在3分钟左右下完.


下完之后,我们接着再执行:

gclient sync

这个过程会有点长,我卡在了95%大约半小时的时间,视我们选择的硬件的内存和CPU而定,整个代码下载完后,我们这边再压缩上传到百度网盘, 然后下载到本地。


3.本地环境下编译webrtc工程.

本地环境下需要安装vs2019,安装过程中请千万注意一定要 选择安装 win10 sdk, 安装过程很简单,大家自行安装.


然后在程序面板-卸载中,找到win10 sdk.



vs2019以及win10 sdk安装好后,接下来我们需要进行一些环境变量的配置 :

大家参照上面的进行配置,具体的路径根据自己的位置确定.

配置成功后:


进入到src的目录下,执行如下命令:

gn gen --ide=vs2019 out/test


在test目录下,会生成all.sln,用vs2019打开:


特别注意要修改一个地方, 否则运行 peerconnection.ext和peerconnecionserver.exe会有问题!!

一定要把:

RTC_DCHECK_RUN_ON(&capture_checker_); 给注释掉,不然运行时会闪退.


其余 linux平台,如上,mac没有云的主机,很麻烦,没什么好的办法.