ZLMediaKit 最新 9.0master 分支源码下载完整教程重要说明ZLMediaKitmaster 分支就是 9.0 开发主线自带完整 ICE-Full WebRTC 客户端拉流能力8.0 稳定分支无该功能不要拉 8.0 分支。禁止直接下载 ZIP 压缩包第三方子模块会缺失编译必报错必须用 Git 克隆。一、国内推荐Gitee 镜像速度快# --depth 1 只拉最新提交加速下载 git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit.git cd ZLMediaKit # 拉取第三方依赖子模块必须执行 git submodule update --init --recursive2. 后续更新到最新代码cd ZLMediaKit git pull git submodule update --init --recursive二、海外 GitHub 官方源网络好再用git clone --depth 1 https://github.com/ZLMediaKit/ZLMediaKit.git cd ZLMediaKit git submodule update --init --recursive三、Linux 编译开启 WebRTC 客户端核心功能1. 先安装依赖Ubuntu/Debianbash运行sudo apt update sudo apt install git cmake build-essential libssl-dev libsrtp2-dev2. 编译必须加-DENABLE_WEBRTCtruebash运行mkdir build cd build # 开启WebRTC才能使用ZLM作为WebRTC客户端拉远端流 cmake .. -DENABLE_WEBRTCtrue # 多核编译nproc自动获取CPU核心数 make -j$(nproc)3. 编译完成程序路径release/linux/Debug/MediaServer四、关键注意点分支区分master 9.0 最新版支持 ZLM 主动拉 WebRTC 流你需要的功能8.0分支仅 ICE-Lite只能当 WebRTC 服务端不能拉外部 WebRTC子模块命令git submodule update --init --recursive缺一不可缺了会编译失败WebRTC 依赖OpenSSL ≥1.1.1k、libsrtp系统自带版本不够要手动编译升级公网部署务必修改conf/rtc.ini里externIP你的公网IP否则外网 WebRTC 穿透失败做流媒体服务器Windows (ffmpeg/OBS 推 RTMP) → Ubuntu MediaServer → Ubuntu app_webrtc_test (WebRTC 拉 AAC) 1. 确认 Ubuntu 局域网 IP 在 Ubuntu 上执行 hostname -I 假设得到 192.168.1.100后面示例都用这个请换成你的实际 IP。 2. 配置 MediaServerUbuntu只需做一次 编辑 MediaServer 实际使用的 config.ini一般在 release/linux/Release/config.ini [rtc] externIP192.168.1.100 # Ubuntu 局域网 IP [http] port80 # 若 80 需 root可改为 8080 改完后重启 MediaServer。 若 HTTP 用 8080后面 WebRTC URL 里端口也要写成 8080。 3. Ubuntu 放行端口如有防火墙 sudo ufw allow 1935/tcp # RTMP 推流Windows → Ubuntu sudo ufw allow 80/tcp # HTTP / WHEP或 8080 sudo ufw allow 8000/udp sudo ufw allow 8000/tcp # WebRTC 媒体 sudo ufw allow 3478/udp sudo ufw allow 3478/tcp # ICE 4. Windows 推流到 Ubuntu 在 Windows 安装 ffmpeg 后在 cmd/PowerShell 执行 纯 AAC 测试流 ffmpeg -re -f lavfi -i sinefrequency1000 -c:a aac -ar 44100 -b:a 64k -f flv rtmp://192.168.1.100:1935/live/test 或用本地文件 ffmpeg -re -i test.mp4 -c:v copy -c:a aac -f flv rtmp://192.168.1.100:1935/live/test 推流窗口需保持运行。流名固定为applivestreamtest。 拉流播放测试ffplay rtmp://192.168.1.100:1935/live/test