惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
宝玉的分享
宝玉的分享
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
P
Privacy International News Feed
T
Threatpost
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Vulnerabilities – Threatpost
NISL@THU
NISL@THU
aimingoo的专栏
aimingoo的专栏
S
Schneier on Security
C
Cisco Blogs
T
The Blog of Author Tim Ferriss
Simon Willison's Weblog
Simon Willison's Weblog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Jina AI
Jina AI
雷峰网
雷峰网
Know Your Adversary
Know Your Adversary
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
I
Intezer
博客园 - Franky
博客园 - 【当耐特】
Hugging Face - Blog
Hugging Face - Blog
The Hacker News
The Hacker News
K
Kaspersky official blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Tailwind CSS Blog
Project Zero
Project Zero
T
Tor Project blog
B
Blog RSS Feed
Recorded Future
Recorded Future
Scott Helme
Scott Helme
美团技术团队
V
V2EX
V
Visual Studio Blog
L
Lohrmann on Cybersecurity
P
Proofpoint News Feed
D
DataBreaches.Net
The Register - Security
The Register - Security
M
MIT News - Artificial intelligence
L
LangChain Blog
Cisco Talos Blog
Cisco Talos Blog
博客园 - 三生石上(FineUI控件)
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Cyber Attacks, Cyber Crime and Cyber Security
博客园_首页
P
Privacy & Cybersecurity Law Blog

博客园 - talenth

nvm配置nodejs ATL开发office插件 windows编译pp-shitu webdriver windows下不同cpu架构PE文件区别 vs中/EHa、/EHs、/EHsc的区别 主窗口,子窗口,拥有窗口关闭消息顺序 windows下注册一个打开特定扩展名的文件 yara规则学习 usb3.0+mvme固态安装win7 驱动程序获取内核版本号 提取shell32.dll中的字符串 常见编码 修理鼠标微动开关 InfinityHook原理 段描述符 tls1.3报文 签名证书 windows内核同步机制
windows下简单使用webrtc
talenth · 2026-01-28 · via 博客园 - talenth

以下对应webrtc版本: 2025年10月20号的版本

1 下载webrtc源码, 解压

2 下载编译工具, 解压, 添加到path环境变量

depot_tools

3 生成vs项目

powershell切到src目录, 

set DEPOT_TOOLS_UPDATE=0
set DEPOT_TOOLS_WIN_TOOLCHAIN=0

gn gen out\Default --ide=vs

4 修改 src\out\Default\args.gn文件,如下

查看所有可配置选项的命令 gn args --list E:/google/webrtc/src/out/Default

# 关键配置:禁用 libc++,使用 MSVC 标准库
use_libcxx = false
use_custom_libcxx = false

host_cpu="x64"
host_os="win"

# 确保使用 clang-cl 编译器但链接 MSVC 标准库
is_clang = true
clang_use_chrome_plugins = false

is_debug = true
enable_iterator_debugging=true
default_crt = "mt" #这个目前不起作用, 实际生成的就是mtd

# 其他重要配置
rtc_use_h264 = false # 如果不需要 H.264,可以禁用以简化依赖

use_rtti = true # 启用 RTTI(部分库可能需要)

5 打开out\Default\all.sln, 编译 webrtc这个项目, 生成webrtc.lib

6 新启一个项目

<1> 头文件目录添加(根据实际编译出错的地方修改)

E:\google\webrtc\src

E:\google\webrtc\src\third_party\abseil-cpp

<2> 预处理指令添加

NOMINMAX

<3> 链接器输入

webrtc.lib
winmm.lib
ws2_32.lib
dmoguids.lib
msdmo.lib
wmcodecdspuuid.lib

<4> 修改webrtc源文件(编译错误, 改完得重编译webrtc.lib)

system_wrappers/include/clock.h 63行左右

int64_t time_fraction =
DivideRoundToNearest(int64_t{ntp_time.fractions()} * 1'000'000,
NtpTime::kFractionsPerSecond);

为 

int64_t time_fraction =
DivideRoundToNearest(int64_t{ntp_time.fractions()} * 1'000'000,
(int64_t)NtpTime::kFractionsPerSecond);