WebRtc编译好的vs2015源码

新葡萄京官网 2
  1. 直白想看webrtc的源码,苦于FQ本事有限且整个编写翻译进程耗费时间庞大,故求助于互连网。在互连网寻觅许久编译好的Webrtc源码,大多版本下载下来总是报种种不当,非常颓败。
  2. 皇天不辜负有心人,终于寻得后生可畏版可用的WebCR-Vtc源码。具体从哪个网址找的已经记不起来了,可是还是感激分享者。
  3. 分享给大家: 链接:
    密码: u37i
  4. 轻巧说一下:分享文件中三个公文,第一个depot_tools解压缩,然后增添到蒙受变量。然后解压缩此前编写翻译webrtc代码
  5. 说下本身的编写翻译意况:vs二〇一四
  6. 新葡萄京官网 1
  7. 新葡萄京官网 2

  8. 时间不早了,下一步要最早研商源码了。初阶安排从PeerConnectionClient和server
    demo跑起。

前言

webrtc是谷歌(Google)收购并开源的三个援助实时音录像对话的才能。
官网是:https://webrtc.org

OK,介绍有如此多。

预备干活

要是不筹划改良webrtc相关源码,建议并不是去折腾编写翻译那几个源码工程。
一贯引用已经编写翻译好的大旨库(Maven可能Gradle):

认准官方路子:(只示例Gradle方式的)

compile 'org.webrtc:google-webrtc:1.0.+'   // + 可以换成对应版本号

连锁版本可以在
https://bintray.com/google/webrtc/google-webrtc
这里询问,这么些理应会随地修正。
PS:+替换的版本号必定要去地方网站里面查询是还是不是留存该版本。

有历史的民间路子:

compile 'io.pristine:libjingle:11139@aar'

相关版本能够在
http://mvnrepository.com/artifact/io.pristine/libjingle
举行询问,当初立异挺频仍,近期两八年没更新了,权当个怀恋吧。

源码下载

假定想校订源码,恭喜您,你供给和谐编写翻译源码。
webrtc编译谈起来,编写翻译既费劲又简约;困难在源码规模太大,本国同步代码频仍出题目,简单在于谷歌(Google)早就将混乱的编写翻译进度整合成老妪能解的编写翻译脚本命令。
重申一点:上边包车型大巴编写翻译操作是基于Linux蒙受。

风度翩翩、安装编译依赖碰着
webrtc的编写翻译碰到信赖于Google的编写翻译景况,也等于 depot_tools。
很简短,就贰个clone源码到本地

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

此地要求安装情形变量

export PATH=$PATH:/path/depot_tools  #在当前环境变量追加路径

注意:path是你depot_tools文件夹所在之处,要求替换为科学的渠道。

测量检验景况变量是还是不是布署成功:

which gn 或者 which gclient  #which指令会在环境变量设置的目录里查找执行文件

如果出口了前头配置的depot_tools文件夹地址,则是布置成功!

官方网址参照他事他说加以考查:http://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot\_tools/docs/html/depot\_tools\_tutorial.html\#\_setting\_up

二、下载项目源码

1、计划专门的学业
点名三个职位贮存webrtc源码,非常要求留意的是目前硬盘存储空间需求不少于20GB。

mkdir webrtc
cd webrtc

2、代码同步

fetch --nohooks webrtc_android
gclient sync

这几个概略会15-20GB的文件供给下载(版本持续迭代),同步速度决计于你的VPN给不给力。
3、依赖意况安顿(编写翻译情状只须求试行三次)

cd src
./build/install-build-deps.sh

当源码下载康健后,执市价况布置脚本,会帮你检查实验并安装编写翻译所急需的正视库和工具。

本子编写翻译

生机勃勃、编写翻译参数钦命

gn gen out/build --args='target_os="android" target_cpu="arm" is_debug=false'

out/build : 编写翻译生成文件的目录,随便内定
target_os : 编写翻译目的平台 android ios 等
target_cpu : CPU架构平台 arm arm64 x86 x64等
is_debug : Release格局或然Debug格局

二、实施编写翻译
出于是全量编写翻译,所以时间有个别有一些长,看机器质量。

ninja -C out/build

生成Gradle项目文件

build/android/gradle/generate_gradle.py --output-directory $PWD/out/build \
--target "//examples:AppRTCMobile" --use-gradle-process-resources \
--split-projects --canary

施行达成,能够在out/build/目录下会扭转一个gradle的文本夹,使用Android
studio该gradle目录就能够运行demo工程。

Release版本

新葡萄京官网,鉴于webrtc是时时刻刻在master分支开荒的,所以大家一次开辟webrtc最棒基于牢固的release版本。
查找库上的release版本

git branch -r

接下来checkout到对应的release版本

git checkout -b my_branch branch-heads/66  #切换到M66版本
gclient sync  #同步对应版本的代码

问题1:
借使寻找不到对应的release版本,那只怕是本地源码历史太久远了(二〇一六-3-24从前的版本)
亟需实施

gclient sync --with_branch_heads
git fetch origin

接下来查看 .git/config

fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*

则消除难点。

问题2:
只要checkout了比较早的本子,比如branch-heads/5* 版本
实践 gclient sync 会报联合错误
是因为 depot_tools 的源码太新,导致与webrtc源码不包容,可以将
depot_tools 工程复苏到与
webrtc指标release版本周围日期的工程源码来开展同步编写翻译。

项目结构

由于变化的gradle工程的源码实际不是放在二个地方,并且发散在webrtc各样文件夹中,能够将各样对应文件夹下的源码文件整合到一块儿。
java源码目录如下:

#android端demo工程源码
examples/androidapp/src  
#lib源码
modules/audio_device/android/java/src  
base/android/java/src  
rtc_base/java/src  
sdk/android/api 
sdk/android/src/java 
#so库,位于编译目录下
libjingle_peerconnection_so.so

PS:可以友善通过gradle文件的正视深入分析查看源码文件夹的援引路线。

发表评论

电子邮件地址不会被公开。 必填项已用*标注