Gahing's blog Gahing's blog
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Gahing / francecil

To be best
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前端基础

  • 应用框架

  • 工程能力

  • 应用基础

  • 专业领域

    • 服务端

    • 跨端技术

    • Web IDE

    • 中后台

    • 动效渲染

    • 可视化

    • 埋点监控

    • 多媒体

      • 业务场景

      • 基础知识

        • H5视频直播—JSMPEG源码解析、视频压缩编码、MPEG-1标准
        • H5音频直播—探索历程、aurora.js源码解析、音频编码基本原理
        • ffmpeg

        • flv

        • webrtc

          • WebSocket 与 WebRTC 直播方案对比分析
          • WebRTC
            • 背景知识
              • STUN
              • TURN
              • ice
            • 建联过程
              • 创建 PeerConnection 实例
              • session 描述传递
              • 添加音视频流
          • 流媒体直播—WebRTC native 2 browser
    • 桌面技术

    • 游戏互动

    • 编辑器

    • 虚拟化与容器化

    • 设计系统

  • 业务场景

  • 大前端
  • 专业领域
  • 多媒体
  • 基础知识
  • webrtc
gahing
2019-12-16
目录

WebRTC草稿

# 背景知识

# STUN

内网穿透

# TURN

双端无法通信时用于转发数据

# ice

对 stun turn 做了封装,并有自己的一套协议

# 建联过程

# 创建 PeerConnection 实例

创建 pc 实例时,可以配置 iceServer 地址

pc 收到可用的 ice 候选后将该候选通过公网服务器发送给对端 pc 并进行添加

对端 pc 创建时执行一样的操作

这样双方会选择一个自己和对方都有的 ice 候选进行内网穿透

# session 描述传递

仍然是添加到自身并通过公网服务发往对面,对面一样的操作

这个 session 描述主要是本地支持的音视频编解码格式

# 添加音视频流

本地 pc 将音视频流添加到流通道中,在通道打通时对面就可以收到了

编辑 (opens new window)
上次更新: 2025/06/11, 23:06:59
WebSocket 与 WebRTC 直播方案对比分析
流媒体直播—WebRTC native 2 browser

← WebSocket 与 WebRTC 直播方案对比分析 流媒体直播—WebRTC native 2 browser→

最近更新
01
我的 2024 总结
12-31
02
浅谈代码质量与量化指标
08-27
03
快速理解 JS 装饰器
08-26
更多文章>
Theme by Vdoing | Copyright © 2016-2025 Gahing | 闽ICP备19024221号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式