资讯|WebRTC M89 更新

开发 @ 网易云信

WebRTC M89 目前在 Chrome 测试版渠道发布,包含超过39个漏洞修复,功能增强,稳定性及性能改进。本篇文章为 WebRTC M89 Release Notes 中文版。欢迎关注我们,我们将定期翻译 WebRTC 相关内容,帮助开发者获得最新资讯,走在行业前沿。

公共服务公告

WebRTC 的 Plan B SDP 语义将被弃用和删除。

WebRTC 1.0 版本目前是采用 SDP 标准格式、Unified Plan 的 W3C 推荐协议(资料),被所有主流浏览器所支持。今年是时候弃用并移除非标准 Chromium SDP 格式——PlanB 了,弃用时间轴如下:

  • M89(2021年2月稳定):开发者在控制台中添加了弃用警告。
  • M93(2021年8月稳定):Plan B 被移除,可以选择加入 Reverse Origin Trial 来延长这个截止日期。
  • M96(2022年1月稳定):延长的最后期限结束,Plan B 被移除。

在 M88 和 M89 版本中,性能上的改进显著减少了 CPU 占用率以及 WebRTC 协商方法的调用时间,这得益于 Unified Plan 的使用。

点击查看 webrtc.org/chrome 中 rtp 有效载荷类型 [35-65] 的使用。

96-127 范围内的动态 RTP 负载类型已耗尽。这需要特别考虑与旧版本 Chrome 的互操作性。详情请阅读公告

a=extmap-allow-mixed 将被默认提供。

Chrome 自从 M71 版本就开始支持 SDP 协议属性 extmap-allow-mixed,但是如果提供了 extmap-allow-mixed,M71 之前版本 Chrome 的 SDP 协商将会失败。

然而,在 M71 之前的 Chrome 版本中,如果提供了 extmap-allow-mixed,则 SDP 协商将失败。从 Chrome M89 版本开始,extmap-allow-mixed 将被默认提供。可阅读此公告

Deprecation 弃用参数

可登陆 bugs.chromium.org/p/webrtc/is… ID 即可查询 bug 详情

Platform 平台Issue 问题Description 描述Component 组件
WebRTC6471Delete the class RTPFragmentationHeader 删除类RTPFragmentationHeaderVideo 视频

功能及问题修复

可登陆 bugs.chromium.org/p/webrtc/is… ID 即可查询 bug 详情。

Chrome

No.1

  • 类型:特性
  • 问题 ID:1146942
  • 描述:将构建chromium/webrtc的pipewire从0.2升级到0.3
  • 组件:Internals>Media>ScreenCapture

No.2

  • 类型:漏洞
  • 问题 ID:1152841
  • 描述:当关闭share target picker时,浏览器偶尔会挂起
  • 组件:Internals>Media>ScreenCapture

No.3

  • 类型:漏洞
  • 问题 ID:1155459
  • 描述:默认的的STUN属性长度限定值太小
  • 组件:Blink>WebRTC>Network

No.4

  • 类型:漏洞
  • 问题 ID:943975
  • 描述:在RTCsctp Transport中设置显示消息上限
  • 组件:Blink>WebRTC>PeerConnection

No.5

  • 类型:特性
  • 问题 ID:10439
  • 描述:提供码流解析通用接口
  • 组件:Video

No.6

  • 类型:特性
  • 问题 ID:10480
  • 描述:提高RNN VAD的效率和代码质量
  • 组件:Audio

No.7

  • 类型:漏洞
  • 问题 ID:10675
  • 描述:支持以text2pcap格式记录原始rtp
  • 组件:Network>RTP

No.8

  • 类型:特性
  • 问题 ID:10897
  • 描述:添加TURN_LOGGING_ID
  • 组件:Network>ICE,PeerConnection

No.9

  • 类型:漏洞
  • 问题 ID:11266
  • 描述:将分支使用信息标记过期
  • 组件:Documentation

No.10

  • 类型:漏洞
  • 问题 ID:11767
  • 描述:将块调用的数量从2减少到1
  • 组件:Stats

No.11

  • 类型:特性
  • 问题 ID:12111
  • 描述:为VoIP API设计VoipVolumeControl 接口
  • 组件:Audio

No.12

  • 类型:漏洞
  • 问题 ID:12148
  • 描述:AV1活动解码目标掩码设置不正确
  • 组件:Video

No.13

  • 类型:漏洞
  • 问题 ID:12167
  • 描述:AV1 packetizer在每个空间层上设置标记位
  • 组件:Network>RTP

No.14

  • 类型:漏洞
  • 问题 ID:12181
  • 描述:RTCCodecStats中缺少transportId
  • 组件:Stats

No.15

  • 类型:漏洞
  • 问题 ID:12185
  • 描述:不正确的GetLinearAecOutput输出范围
  • 组件:Audio

No.16

  • 类型:特性
  • 问题 ID:12193
  • 描述:VoIP API结果类型和实施策略
  • 组件:Audio

No.17

  • 类型:漏洞
  • 问题 ID:12194
  • 描述:动态rtp取值范围已经用尽
  • 组件:PeerConnection

No.18

  • 类型:漏洞
  • 问题 ID:12204
  • 描述:修复损坏的video_replay线程
  • 组件:Tools

No.19

  • 类型:漏洞
  • 问题 ID:12215
  • 描述:SetLocalDescription/SetRemoteDescription三次调用CreateSessionDescription
  • 组件:PeerConnection

No.20

  • 类型:漏洞
  • 问题 ID:12216
  • 描述:允许simulcast流的初始帧丢帧
  • 组件:Video

No.21

  • 类型:漏洞
  • 问题 ID:12217
  • 描述:使用TLSv1.2协议通信时听到机械音
  • 组件:Audio,Network

No.22

  • 类型:漏洞
  • 问题 ID:12238
  • 描述:RTCPeerConnection Create函数应该返回一个错误代码
  • 组件:PeerConnection

No.23

  • 类型:漏洞
  • 问题 ID:12261
  • 描述:[适应性]允许TestBed在CPU限制下进行仿真
  • 组件:Video

No.24

  • 类型:漏洞
  • 问题 ID:12265
  • 描述:AEC3:线性滤波器会在长时间通话中逐渐发散
  • 组件:Audio

No.25

  • 类型:漏洞
  • 问题 ID:12274
  • 描述:Libvpx VP9编解码器封装很难测试
  • 组件:Video

No.26

  • 类型:漏洞
  • 问题 ID:12297
  • 描述:VideoReceiveStream2:删除不需要的PostTask
  • 组件:Perf

No.27

  • 类型:漏洞
  • 问题 ID:12314
  • 描述:整理ilbc模块下不同风格指南的#includes头文件
  • 组件:Audio

No.28

  • 类型:漏洞
  • 问题 ID:12323
  • 描述:JsepSessionDescription::Clone()不复制ICE候选项
  • 组件:PeerConnection

No.29

  • 类型:漏洞
  • 问题 ID:8133
  • 描述:RTP传输的OPUS立体声混合到单声道
  • 组件:Audio

No.30

  • 类型:漏洞
  • 问题 ID:9424
  • 描述:SrtpTransport::OnWritableState计算可写性时出现错误
  • 组件:PeerConnection

更多技术干货,欢迎关注【网易智企技术+】微信公众号

文章分类
后端
文章标签