1. 直接想看webrtc的源码,苦于FQ技巧简单且所有编译进程耗费时间宏大,故求助于互连网。在互连网搜寻许久编写翻译好的Webrtc源码,大多版本下载下来总是报各个不当,分外丧丧。
  2. 皇天不负有心人,终于寻得生机勃勃版可用的Web揽胜极光tc源码。具体从哪些网址找的已经记不起来了,然而依旧感激分享者。
  3. 分享给大家: 链接:
    密码: u37i
  4. 粗略说一下:分享文件中七个公文,第三个depot_tools解压缩,然后增添到遭受变量。然后解压缩初叶工编织译webrtc代码
  5. 说下自个儿的编写翻译蒙受:vs二零一四
  6. www.qy186.com 1
  7. www.qy186.com 2

  8. 时间不早了,下一步要起首切磋源码了。初叶安顿从PeerConnectionClient和server
    demo跑起。

前言

webrtc是Google收购并开源的三个支撑实时音录像对话的本领。
官网是:https://webrtc.org

OK,介绍就好像此多。

编写翻译最新版webrtc源码和编写翻译好的漫天项目10两个G【分享】

 

参考编写翻译最新版webrtc源码:

Git clone 

gclient
config  –name=src

set DEPOT_TOOLS_WIN_TOOLCHAIN=0
set GYP_MSVS_VERSION=2015
set GYP_GENERATORS=ninja,msvs-ninja
gclient sync
cd src
Pythontools的使用参考,在互联网寻找许久编译好的Webrtc源码。 webrtc/build/gyp_webrtc.py

上图哈:

www.qy186.com 3

注:
1.depot_tools的运用参谋:
2.webrtc官方源码小编copy到github上了:
3.webrtc编写翻译好的万事项目本人传到百度云了: (注:由于刚同志压缩辛亏上传中,有10多G,请稍等,等上传达成后再下载)

 

———————— 2014-9-29出席安装depot_tools表达(藏浅绿字体:python和此外工具会在运营gclinet时本人下载安装) —————————————–

Install depot_tools

Chromium and Chromium OS use a package of scripts called depot_tools to manage checkouts and code reviews.  
The depot_tools package includes gclientgclgit-clrepo, and others.

Installing on Linux and Mac

  1. Confirm git and python are installed. git 2.2.1+ recommended. python 2.7+ recommended.
  2. Fetch depot_tools: 
    $ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
  3. Add depot_tools to your PATH:
    $ export PATH=`pwd`/depot_tools:"$PATH"

    • Yes, you want to put depot_tools ahead of everything else, otherwise gcl will refer to the GNU Common Lisp compiler.
    • You may want to add this to your .bashrc file or your shell’s equivalent so that you don’t need to reset your $PATH manually each time you open a new shell.

Installing on Windows

Preamble

Chromium is mostly designed to be run using the native Windows tools and the Msys (Git for Windows) toolchain. Cygwin is not recommended, and likely things will fail in cryptic ways.

Instructions

  1. Download depot_tools.zip and decompress it.
  • Do not use drag-n-drop or copy-n-paste extract from Explorer, this will not extract the hidden ".git" folder which is necessary for depot_tools to autoupdate itself. You can use "Extract all…" from the context menu though.
  • Do not extract to a path containing spaces. If you do, gclient will produce the error "update_depot_tools.bat was not expected at this time" or similar.

Add depot_tools to the start (not end!) of your PATH:
With Administrator access:

  • Control Panel > System and Security > System > Advanced system settings
  • Modify the PATH system variable to include depot_tools

Without Administrator access:

  • Control Panel > User Accounts > User Accounts > Change my environment variables
  • Add a PATH user variable: C:pathtodepot_tools;%PATH%

Run gclient from the cmd shell. The first time it is run, it will install its own copy of various tools. If you run gclient from a non-cmd shell, it may appear to run properly, but python, and other tools may not get installed correctly (while it should work fine from a msys bash shell, you may still trip over bugs from time to time).

  • If you see strange errors with the file system on the first run of gclient, you may want to disable Windows Indexing.
  • If you see errors like "The system cannot execute the specified program", try installing "Microsoft Visual C++ 2008 Redistributable Package".
  • If it complains that it can’t find python, make sure you don’t already have a .gclient file in the same directory.
  • After running gclient open a command prompt and type where python and confirm that the depot_tools python.bat comes ahead of any copies of python.exe. Failing to ensure this can lead to overbuilding when using gn – see crbug.com/611087

See also Howto: depot tools

————————2016-9-29加入安装depot_tools说明—————————————–

有备无患干活

假诺不筹划改良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/libjinglewww.qy186.com,
进行查询,当初更新挺频仍,近年来两三年没更新了,权当个牵挂吧。

源码下载

假诺想改良源码,恭喜你,你须要团结编写翻译源码。
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早前的本子卡塔 尔(英语:State of Qatar)
必要实行

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文件的重视解析查看源码文件夹的引用路线。

相关文章