webrtc下载与编译

这篇具有很好参考价值的文章主要介绍了webrtc下载与编译。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文主要介绍在Linux环境下编译webrtc


一、环境准备

  • 电脑能够科学上网,需要访问Google,虽然国内有很多镜像,但是拉下来参差不齐,浪费时间,建议有条件的还是科学上网吧

  • 电脑要有足够的空间,拉下来的webrtc代码较大,最好预留30G以上

二、depot Tools下载

  • 设置代理服务器(如没有设置代理的可忽略该步骤)
$ export http_proxy=192.168.9.86:9385
$ export https_proxy=192.168.9.86:9385
$ 
  • clone
$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
$ export PATH=$PATH:/home/qiuhui/work/open_source/webrtc_src/depot_tools

三、webrtc下载

  • 下载前最好取消git网络限速,以免在网络抖动时下载失败,下载时间取决于网络,最快的时候20几分钟就搞定了
$ git config --global http.lowSpeedLimit 0
$ git config --global http.lowSpeedTime 9999999
$ fetch --nohooks webrtc
$ gclient sync

四、webrtc编译

编译的时候一定要选择适合的版本,不同的版本需要的编译器版本也会不一样,到现在我也没找到WebRTC各版本与编译器版本相关的信息和文档,有找到相关信息的同学欢迎留言哈

  • 查看分支
$ git branch -a
* (HEAD detached at origin/main)
  main
  remotes/branch-heads/3.50
  remotes/branch-heads/3.51
  remotes/branch-heads/3.52
  remotes/branch-heads/3.53
  remotes/branch-heads/3.54
  remotes/branch-heads/3.55
  remotes/branch-heads/38
  remotes/branch-heads/38p
  remotes/branch-heads/39
  remotes/branch-heads/3984
  ...后面信息太多,省略掉

如果没有输出以上对应分支(这次我下载下来分支已经有了,无需做这一步操作),请执行以下命令或参考:https://www.chromium.org/developers/how-tos/get-the-code/working-with-release-branches/

$ gclient sync --with_branch_heads
$ git fetch
$ git branch -r
$ git branch -a
  • 切到对应版本,本文使用的是5061(depot Tools也需切到相关日期的head,否则编译会有兼容性问题),官方发布版本与分支对应关系参考: https://chromiumdash.appspot.com/branches
$ git checkout -b m_local refs/remotes/branch-heads/5061
$ gclient sync --with_branch_heads --with_tags

//depot_Tools同时也切到 8b707654318d0b2b24c0b0bbeeef0ee8b0865007
$ git checkout 8b707654318d0b2b24c0b0bbeeef0ee8b0865007
  • 编译目标平台为aarch64的libwebrtc.a
$ ./build/linux/sysroot_scripts/install-sysroot.py --arch=arm64
$ gn gen out/Release --args='rtc_use_x11=false rtc_use_pipewire=false is_clang=true use_sysroot=true target_cpu="arm64" is_chrome_branded=true is_debug=false use_custom_libcxx=false rtc_include_tests=false rtc_enable_protobuf=false rtc_build_examples=false rtc_build_tools=false treat_warnings_as_errors=false rtc_enable_libevent=false rtc_build_libevent=false'
Done. Made 1192 targets from 272 files in 587ms
$ 
$ ninja -C out/Release webrtc rtc_json jsoncpp builtin_video_decoder_factory builtin_video_encoder_factory peerconnection p2p_server_utils task_queue default_task_queue_factory
ninja: Entering directory `out/Release'
[51/3369] CXX obj/api/audio_codecs/audio_codecs_api/audio_codec_pair_id.o
[3369/3369] AR obj/libwebrtc.a
$ 

总结

编译webrtc一定要选择合适的版本,特别是交叉编译到板子上跑的,一般都是由于版本不合适导致编译、链接、运行出现各种问题,具体的版本需根据各自的环境去适配。文章来源地址https://www.toymoban.com/news/detail-730501.html

到了这里,关于webrtc下载与编译的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • WebRTC 源码 编译 iOS端

    1. 获取依赖工具 首先,确保你已经安装了以下工具: Git Depot Tools Xcode(确保已安装命令行工具) 2. 下载 depot_tools 使用 git 克隆 depot_tools 并将其添加到你的 PATH 中: /path/to/depot_tools 替换为自己的路径 3. 获取 WebRTC 源码 创建一个新目录来存放 WebRTC 源码,并在其中检出源码:

    2024年02月09日
    浏览(43)
  • webrtc交叉编译嵌入式的方法

    背景是我们有嵌入式的需求,需要编译webrtc进入板子上。先说结论,最后是这样config之后就编译通过的: gn gen out/linux-yeshen --args=‘target_os=“linux” target_cpu=“arm64” ffmpeg_branding=“Chrome” proprietary_codecs=true is_debug=true target_sysroot=“…/…/linux/general_yeshen_arm64/aarch64-buildroot-linu

    2024年02月11日
    浏览(43)
  • webrtc-m79-msvc编译H264

    本文主要参考:webrtc 4577版本vs编译_tusong86的博客-CSDN博客 4577也就是m93,由于源码版本的不同,可能存在一定的出入,可根据实际情况进行修改; 感谢作者的付出; powershell运行: // debug 需要编译参数 enable_iterator_debugging=true gn gen h264-debug-m79 --args=\\\'is_debug=true use_lld=false is_cla

    2024年02月10日
    浏览(42)
  • 【网络通信 -- WebRTC】项目实战记录 -- linux 环境下 libmediasoup 编译与测试

    【1】编译配置 libwebrtc 【1.1】下载并配置 depot_tools 【1.2】获取 WebRTC 源码 【1.3】编译 WebRTC 【1.4】获取 WebRTC 相关头文件与库 【2】编译配置 libmediasoupclient 【3】编译运行 mediasoup-broadcaster-demo mediasoup-broadcaster-demo 使用 libmediasoupclient 库实现向 mediasoup 服务器发布一个预设的视

    2024年02月10日
    浏览(43)
  • 下载编译Chromium

    For Mac: https://chromium.googlesource.com/chromium/src/+/main/docs/mac_build_instructions.md Working with Release Branches 一 、 下载编译工具链: deptool git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH=\\\"$PATH:/Users/yumlu/code/depot_tools\\\" (不过为了后续操作方便,可以将其加入到你的 ~/.zsh

    2024年02月17日
    浏览(44)
  • uboot源码下载以及编译

    环境:ubuntu 20.04 uboot官网在进入之后如下所示: 我们可以直接选择Obtaining the source进入到获取源码的网址 在点击Obtaining the source进入到新的网址之后就会看到下面提示去获取uboot的源码: The source of the U-Boot project is maintained in a Git repository. You can download the source via A mirror of th

    2024年02月02日
    浏览(50)
  • Android源码的下载,编译,刷机

    上篇说到《framework开发环境搭建》,本篇继续介绍Android源码的下载、编译、刷机 先贴上Android源码官网地址:https://source.android.com/docs/setup/start/,俗称AOSP,Android开源项目,这里我总结一下具体该怎么操作。 1、安装repo Android源码同时使用git和repo进行管理,repo是基于git的代码

    2024年02月02日
    浏览(59)
  • EtherCAT IGH 的下载和编译

    EtherCAT 官方下载网站 EtherCAT 官方git下载网站 刚学习的时候,看到很多人说在看 EtherCAT IGH 的文档的时候说 EtherCAT IGH 只支持 2.6 和 3.x 的内核。这句话在 《EtherCAT IGH 1.52.pdf》中的 1.1 Feature Summary 提到了这么一句话 Designed as a kernel module for Linux 2.6 / 3.x ,但是不知道是不是一直没

    2024年02月12日
    浏览(39)
  • 【Android】系统源码下载及编译

    步骤 1 :创建一个空目录来存放源码: 步骤 2 :获取最新版本的 repo 并签出 android-8.1.0_r1 分支: 其中, android-8.1.0_r1 代表源码标记,代表我们将要获取 Android 8.1 的源码,如需查看其他版本的源码标记,可参阅 源代码标记和 build。 步骤 3 :将 Android 源码从默认清单中指定的

    2024年02月13日
    浏览(53)
  • 如何下载ImGui源码并编译运行

    1. 通过Git download ImGui源码 如何通过Git下载ImGui源码之前已有介绍,这里附上ImGui源码地址: http://github.com/ocornut/imgui 复制下面的地址,利用Git Bash Here命令下载源码 ImGui源码中已经有.sln,因此不需要cMake build即可直接启动 2. 运行后的ImGui界面 界面上提供了几种基于OpenGL和DX不同

    2024年02月13日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包