安卓的视频通讯

常见视频通讯架构

  • 用 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 音视频通话的前提,没有这个地址,两台公网手机永远找不到对方。
相关推荐
墨天梦15 小时前
D05_ViewModel与单向数据流
android·kotlin
做萤石二次开发的哈哈16 小时前
带摄像头的号角怎么对接?从音视频对讲链路到音频参数配置的实施要点
物联网·音视频·语音对讲·萤石开放平台·蓝海aiot一站式工作台·语音喊话·园区广播
蒸鱼Yuzheng17 小时前
Android 构建可复现性:APK 指纹、文件级差异与供应链审计
android·apk·devops·软件供应链·可复现构建
Anhty17 小时前
3 款手机音频剪辑 APP 横评,短视频配音后期,免费工具怎么选?
功能测试·ffmpeg·音视频
lingyubb17 小时前
支持多语种配音的短视频配音工具横向评测|出海内容技术拆解
自然语言处理·音视频·语音识别·ai配音·多语种
智能直播18 小时前
RK3528 RGA+DRM框架 HDMI out视频输出:从多图层合成到显示送显
视觉检测·音视频·实时音视频·视频编解码
释厄62318 小时前
智能体释放度子集律——文本 ⊂ 音频 ⊂ 视频⊂ 游戏
开发语言·游戏·microsoft·音视频
揽秀亭长19 小时前
音频如何转换为乐谱?扒谱流程与关键技术分析
人工智能·音视频
墨天梦19 小时前
D03_Compose列表与稳定身份
android·gitee·kotlin
萌新杰少19 小时前
Kuikly股票查看软件开发体验——SaiRen
android·kotlin·客户端