常见视频通讯架构用 HTTP 做业务接口、WebSocket 做信令通道传递通话控制指令通过 SDP 协商音视频参数编码、码率等确保双方格式匹配基于 ICE 机制用 STUN 做 P2P 穿透、TURN 做中转兜底解决跨网 / 防火墙的连通问题具体实施方法集成 WebRTC 框架安卓常用官方 WebRTC SDK初始化 PeerConnection配置 STUN/TURN 公网地址采集音视频Camera/Microphone创建 MediaStream生成 SDP Offer/Answer通过 WebSocket 传递收集并传递 ICE 候选地址监听连接状态成功后渲染音视频失败则切换 TURN 中转。为什么需要STUN不管是 WiFi 还是移动 4G/5G手机绝大多数都处在内网环境中本身没有公网 IP。公网 IP 都在网关设备上家庭路由器、运营商核心网关同一公网 IP 下会挂大量设备靠不同端口来区分每一台设备。所以手机必须通过 STUN 服务器才能获取自己在外网的真实地址公网 IP 端口进而实现跨网的 P2P 音视频通讯。核心原因手机的公网 IP 属于网关手机本地仅能获取内网 IP需外部公网服务STUN告知STUN 原理通过手机向 STUN 发数据包STUN 识别数据包的公网来源地址并返回关键价值STUN 拿到的公网 IP 端口是 P2P 音视频通话的前提没有这个地址两台公网手机永远找不到对方。