旗下网站
艺源微平台
SEO优化
当前位置: 首页 > 服务 > 艺源智库
【小程序】小程序•小故事(9)——音视频组件
时间:2018-07-26 14:46:09
文章发布:杜凯
原创作者:常青
来源:微信开发者

下面我们将详细介绍一下音视频组件在线直播和视频通话这两个应用场景。




在线直播


01

在线直播的应用场景有哪些?


游戏直播、远程授课、以及企业内部的培训分享等场景中,都可能会用到在线直播功能,直播的应用场景可以遍及各行各业。


比如微信电竞是一款游戏直播产品,以小程序为产品呈现方式。


比如在医疗行业,专家医师往往需要全国各地飞进行学术交流和培训,出差本身耽误了医生大量时间,在线远程授课能大大减少这里的时间耗用。


小程序中的    两个组件 ,都有一个叫做live 的模式,专门为在线直播而设计,通过小程序的音视频接口的live 模式,可以实现上述应用场景。


02

在线直播的内部原理是什么?


主播端使用  ,它在小程序的内部是一个推流引擎,它负责对手机摄像头和麦克风的数据进行采集和编码,并通过 url 参数指定的 rtmp 推流地址上传到云端。


云端的作用类似信号放大器,它负责将来自主播端的一路音视频流数据进行放大,将数据实时并且无差异的负责并扩散到全国各地,从而解决主播和观众端之间距离太远(比如,跨地区和跨运营商)的问题。


观众端使用  进行播放,它在小程序的内部是一个在线播放器,负责从云端实时拉取音视频数据并进行解码和渲染。由于云端的放大效应,每一个观众都能在离自己比较近的云服务器上拉取到实时且流畅的音视频流。




03

我怎么用小程序实现在线直播?


- step1:开通一个云直播服务(比如 腾讯云 ),或者自己搭建一个rtmp服务器(例如 nginx-rtmp 服务)。


- step2:生成推流 url ,推流地址一般以 “rtmp://” 打头,比如rtmp://8888.livepush.myqcloud.com/live/8888_test就是一个典型match rtmp 推流 Url。


- step3:为你的小程序增加一个  标签,并将 url 参数指match定为match你在match step2 中生成的推流 url。

同时,match的 mode 参数可以指定为 HD 或者 FHD,这是在线直播场景中比较推荐的画质。

同时,你还可以通过  的 beauty 和whiteness 等参数设定美颜和美白等级。


- step4:生成推流 url 和播放地址,推流一般都是 rtmp:// 打头的 url,而播放地址则有两种选择,分别是 “rtmp://” 开头的 rtmp 播放协议,“http://” 打头和“.flv”结尾的的 http-flv 播放协议,推荐使用后者,因为这种播放地址各个云厂商都优化的比较好。




- step5:为你的小程序增加一个  标签 ,并将 src 参数指定为你在 step4 中生成的播放 url。同时, 的 mode 参数请指定为 live,orientation  和 object-fit 属性可以用于调整画面布局,min-cache 和 max-cache 则可以用于控制观众跟主播之间的延时大小,推荐的设置是 min-cache = 2, max-cache = 5。


<section class="" style="margin:


标签: 小程序
*版权申明:本站部分文章由艺源科技收集整理,不代表我们的观点。如果这篇转载侵犯您的版权,请及时联系我们删除!
为您推荐
最新文章