Win10+vs2017 webrtc下载和编译

现在使用webrtc的小伙伴越来越多,我也来凑凑热闹,第一步自然是下载源码,其实官网上面写的还是蛮详细的,只是环境搭建稍稍复杂了点,再加上国内不能访问google,所以简单的事情就变得复杂起来。我就按照官网上面的流程给大家简单介绍下,具体细节可以参考https://webrtc.org/native-code/development/,当然前提条件是你可以访问google。

1、vs2017安装

我使用的是Visual studio community 2017-15.9.9版本,需要安装“使用C++的桌面开发”、“Visual Studio扩展开发”,需要注意的是win10 SDK,至少需要10.0.17134.0版本,否则会出现问题。

增加环境变量: GYP_MSVS_VERSION=2017,用于设置vs版本

注意:需要安装sdk 调试工具: Control Panel → Programs → Programs and Features → Select the “Windows Software Development Kit” v17134 → Change → Change → Check “Debugging Tools For Windows” → Change。

2、安装depot tools

下载地址:http://dev.chromium.org/developers/how-tos/install-depot-tools,解压之后不要拷贝和移动,否则会影响.git文件夹,记得设置环境变量将depot_tools放在最前面。设置环境变量:DEPOT_TOOLS_WIN_TOOLCHAIN=0,告诉depot使用本地的vs,然后打开cmd运行gclient,会自动下载安装很多东西,如python,mysisgit。(如果无法下载,你也可以手动安装python2.7和git)

注意:depot内部自带了python2.7版本,如果电脑已经安装了其他版本的python,可能会存在冲突,导致编译出现问题,实在不行就自行下载python2.7 x64版本,重新安装一遍。

Win10+vs2017 webrtc下载和编译_第1张图片

3、配置Git

如果没有git的话,就网上下载一下,再打开git bash配置即可
$ git config --global user.name "My Name"
$ git config --global user.email "[email protected]"
$ git config --global core.autocrlf false
$ git config --global core.filemode false
$ git config --global branch.autosetuprebase always

4、设置代理

为了让depot可以正常下载和编译源码,需要设置代理,

1)打开git bash在窗口中输入(端口号由你使用的代理服务器决定,可以在“网络和Internet设置”--“代理”中查询):

set http_proxy=127.0.0.1:1080

set https_proxy=127.0.0.1:1080

或者偷懒点的话可以设置环境变量:

http_proxy=127.0.0.1:1080

https_proxy=127.0.0.1:1080

2)网上还有的说法是在depot_tools文件夹下新建http_proxy.boto并输入代理和端口:

[Boto]

proxy= 127.0.0.1

proxy_port= 1080

打开git bash在窗口中输入

set NO_AUTH_BOTO_CONFIG=F:\depot_tools\http_proxy.boto(具体路径看你自己的情况)

或者偷懒点的话可以设置环境变量:

NO_AUTH_BOTO_CONFIG=F:\depot_tools\http_proxy.boto

具体哪种更好用,我也不确定,保险起见都加总是没错的。

5、获取并编译webrtc源码

增加环境变量(或者每次在窗口中设置应该也可以吧):

GYP_GENERATORS=msvs-ninja,ninja

源码获取可以参考 https://webrtc.org/native-code/development/,上面写的很详细,下载中断时可以通过gclient sync命令继续,源码大概有4G,时间会很长,做好心理准备。

mkdir webrtc-checkout

cd webrtc-checkout

fetch --nohooks webrtc

gclient sync

用gn编译生成ninja解决方案:

cd src

gn gen out/Default --ide=vs2017

编译ninja工程:

ninja -C out/Default

最后编译完成居然有20G

 

6、测试

使用vs2017打开,本来准备重新编译一下,但是报了如下错误,推荐还是用ninja进行编译,vs只是用来debug的。

Win10+vs2017 webrtc下载和编译_第2张图片

使用out/Default文件夹下面的peerconnection做音视频的测试:

1)在电脑A上打开peerconnection_server.exe

2)在电脑A上打开peerconnection_client.exe,输入电脑A的ip

3)在电脑B上打开peerconnection_client.exe,输入电脑A的ip,在“List of currently connected peers:”中选择电脑A

Win10+vs2017 webrtc下载和编译_第3张图片

6、总结

大家可以自行测试,或者用我编译好的webrtc(应该是m72版本的)

【webrtc资源 链接: https://pan.baidu.com/s/1Tpngswj_SRNQnwLCABBbqQ 提取码: lc6d 】

 

你可能感兴趣的:(音视频)