# LearnWebRTC **Repository Path**: shunzi20220/LearnWebRTC ## Basic Information - **Project Name**: LearnWebRTC - **Description**: WebRTC的一些学习记录 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-02 - **Last Updated**: 2025-02-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## webRTC https://coding.imooc.com/class/532.html#Anchor https://www.bilibili.com/video/BV18T421k7uY https://www.bilibili.com/video/BV1i14y1Y796 ### 编译安装 https://github.com/RTC-Developer/WebRTC-Documentation-in-Chinese https://blog.csdn.net/lepaitianshi/article/details/123826450 https://blog.csdn.net/jerry890130/article/details/127021702 ```sh git config --global http.version HTTP/1.1 #设置缓存大小 git config --global http.postBuffer 524288000 #500M git config --global http.postBuffer 1048576000 #1G git config --global http.postBuffer 5242880000 #5G #设置低速 git config --global http.lowSpeedLimit 0 git config --global http.lowSpeedTime 999999 #单位 秒 #设置代理 export http_proxy=127.0.0.1:7897 export https_proxy=127.0.0.1:7897 ``` ### 目录结构 ```sh ├── api: WebRTC接口层,浏览器都是通过接口调用WebRTC ├── audio:与音频相关的逻辑,音频引擎层 ├── AUTHORS ├── base ├── build ├── BUILD.gn ├── build_overrides:编译时使用 ├── buildtools ├── call: 数据流的管理层,call代表同一个端点所有数据的数据流输入/输出 ├── CODE_OF_CONDUCT.md ├── codereview.settings ├── common_audio:音频算法相关 ├── common_video:视频算法相关 ├── data:存放一些音视频数据 ├── DEPS ├── DIR_METADATA ├── docs ├── ENG_REVIEW_OWNERS ├── examples:webrtc Demo ├── experiments ├── g3doc ├── infra ├── LICENSE ├── license_template.txt ├── logging:日志相关的 ├── media:多媒体相关的逻辑处理,如编解码的逻辑处理,会调用音视频引擎 ├── modules:最重要的目录,存放一些比较独立的子模块。见下面 ├── native-api.md ├── net ├── out ├── OWNERS ├── OWNERS_INFRA ├── p2p:端对端网络连接相关的代码,stun turn服务 ├── PATENTS ├── pc:peer connection连接相关逻辑层 ├── PRESUBMIT.py ├── presubmit_test_mocks.py ├── presubmit_test.py ├── pylintrc ├── pylintrc_old_style ├── README.chromium ├── README.md ├── resources ├── rtc_base:基础代码,如线程,锁,相关的统一接口代码 ├── rtc_tools:音视频分析相关的工具代码 ├── sdk:存放android和IOS层代码,如音视频采集,渲染等 ├── stats: 存放各种数据统计相关的类 ├── system_wrappers:与具体操作系统的工具代码,如:CPU特性,原子操作等 ├── test ├── testing ├── third_party ├── tools ├── tools_webrtc:webrtc测试相关的工具代码,如网络模拟器 ├── video:与视频相关的逻辑 ├── WATCHLISTS ├── webrtc.gni ├── webrtc_lib_link_test.cc └── whitespace.txt ├──modules ├── async_audio_processing ├── audio_coding:音频编解码相关代码 ├── audio_device:音频采集与音频播放相关的代码 ├── audio_mixer:混音相关代码 ├── audio_processing:音频前后处理相关代码,包括3A处理 ├── BUILD.gn ├── congestion_controller:拥塞控制,如TCC,BBR ├── desktop_capture:桌面采集相关的代码 ├── include ├── module_common_types_unittest.cc ├── pacing:码率探测及平滑处理相关的代码 ├── portal ├── remote_bitrate_estimator:远端码率估算相关的代码 ├── rtp_rtcp:rtp/rtcp相关代码 ├── third_party:第三方库 ├── utility:线程相关工具 ├── video_capture:视频采集 └── video_coding:视频编码相关代码 ``` 音视频引擎 * 支持多种音视频编解码器(**AV1**/VP9/VP8/H264, **OPUS**/ISAC/PCM16B/G711/G722/iLBC) * 多种音视频格式可以互通(VP8, H264, VP9, AV1) 3A模块 * 支持回声消除,降噪和自动增益