剑痴乎

  • 首页
  • 文章分类
    • 音视频
    • WebRTC
    • 编程之美
    • Linux
    • Windows
    • 生活点滴
    • 校园生活
  • 参考
    • API参考
    • 实用工具
    • 测试音视频
    • 文档
  • 留言板
  • 关于
剑痴乎
代码为剑,如痴如醉
  1. 首页
  2. WebRTC
  3. 正文

WebRTC安卓编译

2020年8月17日 182点热度 1人点赞 0条评论

系统:Ubuntu 18.04

安装depot_tools

Shell
1
2
3
4
5
6
cd ~
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
 
# vi ~/.bashrc
export PATH="$PATH:~/depot_tools"
source ~/.bashrc

获取代码

1
2
3
4
mkdir webrtc_android
cd webrtc_android
fetch --nohooks webrtc_android
gclient sync

依赖安装

1
2
3
4
5
# webrtc_android
cd src
./build/install-build-deps.sh
./build/install-build-deps-android.sh
. build/android/envsetup.sh

编译

直接使用aar编译工具编译,这里我们指定编译armeabi-v7a与arm64-v8a两种架构。

1
2
# webrtc_android/src
./tools_webrtc/android/build_aar.py --build-dir out --arch "armeabi-v7a" "arm64-v8a"

生成的libwebrtc.aar文件文件位于src目录下,编译过程产生的文件,例如libjingle_peerconnection_so.so位于src/out目录下。

崩溃问题排查

使用addr2line定位WebRTC底层崩溃代码位置。

Shell
1
addr2line -e libjingle_peerconnection_so.so <address>

编译特定版本

这里我们以更新到m79版本为例。

1
2
# 查看可用版本分支
git branch -r

更新WebRTC代码到m79版本:

1
git checkout branch-heads/m79

同时也要更新对应的depot_tools,通过git log查看m79版本对应日期,然后进入depot_tools目录,也使用git log查看与m79版本日期相近的某个版本,并更新到该版本。

Shell
1
2
3
which gclient
# cd to depot_tools dir:~/depot_tools
git checkout ...

最后进入WebRTC目录:

1
2
# webrtc_android
gclient sync

然后参照前面步骤重新编译即可。

本作品采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可
标签: WebRTC
最后更新:2020年10月25日

Jeff Young

代码为剑,如痴如醉

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

我的其它小窝

公众号:码上Play(基本不更新,回答问题用)

近期评论
  • Jeff on WebRTC研究:BBR拥塞控制被移除了研究过了,等后面有时间简单说明下
  • xhcx on WebRTC研究:BBR拥塞控制被移除了楼主,BBR移除的原因最近有研究吗,分享一下
  • Jeff on Windows平台WebRTC编译(持续更新)M79是2019年发布的版本,不适用这篇文章。编译…
  • haige on Windows平台WebRTC编译(持续更新)我编译的m79版本,用VS2019打开会报错, F…
  • 菜菜 on libcef编译使用--使用VS2015是真的鸟
版权声明

为支持原创,创作更好的文章,未经许可,禁止任何形式的转载与抄袭,如需转载请邮件私信!本人保留所有法定权利。违者必究!

目录
  • 1 安装depot_tools
  • 2 获取代码
  • 3 依赖安装
  • 4 编译
  • 5 崩溃问题排查
  • 6 编译特定版本
相关文章推荐
  • WebRTC研究:Simulcast层数变化
  • WebRTC研究:RTP头部扩展
  • WebRTC研究:音频带内FEC
  • WebRTC研究:BBR拥塞控制被移除了
  • 音视频开发入门:视频基础

COPYRIGHT © 2021 剑痴乎. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS