小程序实时视频前端

256 阅读1分钟

最近公司项目有用到腾讯云的实时音视频,一开始以为比较容易,但是也容易踩坑,就重点总结如下7个步骤:

step1:

首先A 跟业务服务器(腾讯云服务,是与websocket进行沟通)沟通,获取 push-url-A 和低延时的 play-url-A,服务器分配 URL 的方法参考 DOC。

step2:

A 创建一个 RTC 模式的 标签,指定 url 为 step1 中获得的 push-url-A,并通过 bindstatechange 属性绑定一个 javascript 函数(比如叫 onPushEvent)。

step3:

A 这边需要一些时间启动推流,推流开始以后, 会通过 onPushEvent 的 PUSH_EVT_PUSH_BEGIN(1002)事件通知给 A, 此时 A 可以向 B 发起通话请求,请求中可以携带 play-url-A。

step4:

B 需要等待 UI 界面上的确认,如果 B 确认接通,接下来要做的就是创建一个 RTC 模式的 ,并指定 src 为 play-url-A。

step5:

B 此时还要跟业务服务器沟通,获取 push-url-B 和低延时的 play-url-B,并创建一个 RTC 模式的 标签,指定 url 为 push-url-B,并通过 bindstatechange 属性绑定一个 javascript 函数(比如叫 onPushEvent)。

step6:

B 此时需要一些时间启动推流,推流开始以后, 会通过 onPushEvent 的 PUSH_EVT_PUSH_BEGIN(1002)事件通知给 B,之后 B 可以向 A 响应通话请求,请求中可以携带 play-url-B。

step7:

A 此时要做的就是创建一个 RTC 模式的 ,并指定 src 为 play-url-B。 !