如何利用阿里云在PC端快速接入直播功能
摘要: 本文介绍PC端直播推流与播放器快速接入方法,对移动端推流和播放可以参考官网文档。
作者简介:阿里花名樰篱,阿里云视频服务产品运营(我是一个爱好直播而且懂技术的女汉纸,欢迎点击名字关注我哦)
每每看到开发哥哥们对直播功能抓头苦闷,小妹我也是看在眼里着急在心里,其实看似复杂的直播功能,可以通过开通阿里云直播服务来快速集成的。开发哥哥们静下心来,花几分钟时间认真读完小妹这篇文章,相信你就知道如何在阿里云直播控制台快速接入PC端直播功能了:
直播流程
Step1:直播前准备
登录阿里云官网 ,点左上角登录
登录视频直播控制台
控制台会检查所依赖服务的开通状态,请按页面引导操作
添加直播域名
需要注意的是:
直播域名需要进行备案审核,审核通过后即可使用,未备案的域名请先进行备案,备案流程。
域名配置成功后,这个域名会自动配置好 CDN 直播加速功能,域名进行CNAME绑定后即可使用直播加速功能。
CNAME绑定
将您添加的直播域名的DNS CNAME纪录修改为直播域名管理详情页面上显示的CNAME绑定地址。我们需要把阿里云提供的推流地址和直播域名进行绑定,这样当推流到直播域名时会推流到我们的直播中心。
请按照以下步骤进行域名CNAME绑定
直播域名在万网申请
获取直播控制台直播域名对应的 CNAME。
点击阿里云官网控制台的域名解析页面,选择需要绑定的域名。
进入域名解析标签页,点击高级设置。
填写解析参数,并保存。
解析正常会很快生效,如果是新创建的域名解析不存在DNS刷新问题,如果是修改了CNAME,则不同的 DNS 上有缓存数据,可能最长需要48小时才能更新完毕。
直播域名在其他途径申请
其他途径申请的域名,请在域名所在网站操作域名CNAME绑定。
在阿里云控制台执行域名转入流程。
获取推流和播放地址
在 域名管理 中,点击直播加速域名 管理 :
鉴权配置
直播流媒体的推送和播放采用同一套鉴权方案,可以在控制台的鉴权配置中进行配置,详细了解鉴权配置。
注意
只有进行鉴权配置后,该加速域名才能正常进行推流和播流,直播业务类型仅支持A类型鉴权方式。
推流和播流地址需要分别进行鉴权签名计算,每一个签名都是严格按照URL计算的,故不可使用推流URL计算得到的签名应用到播流地址,同理每一种播流地址都会对应不同的鉴权计算结果。
举例:
在直播控制台 - 域名管理 - 直播域名管理详情页 - 鉴权配置 设置鉴权配置如下:
1、开启鉴权
2、手动输入鉴权主key值,详细内容访问 鉴权说明鉴权设置
Step2:推流
获取鉴权后的推流地址:
直播控制台 - 域名管理 - 直播域名管理详情页 - 基本信息 取得推流地址如下:
rtmp://video-centeralivecdncom/AppName/StreamNamevhost=livealiyuncom
使用直播控制台 - 域名管理 - 直播域名管理详情页 - 鉴权配置 页面的鉴权URL计算器计算鉴权URL:
输入推流地址(AppName、StreamName可自行修改)、鉴权KEY、有效时间,点击<生成>按钮即可得到鉴权URL。
推流操作
推流地址:
rtmp://video-centeralivecdncom/APPName/StreamNamevhost=livealiyuncom
说明
http://video-centeralivecdncom是直播中心服务器,允许自定义,例如您的域名是http://livealiyuncom(注意:该域名不可以和你的直播加速域名相同),可以设置DNS,将您的域名CNAME指向http://video-centeralivecdncom即可。
APPName是应用名称,支持自定义,可以更改。
StreamName是流名称,支持自定义,可以更改。
vhost参数是最终在边缘节点播放的域名,即你的直播加速域名。
直播推流操作可使用第三方推流软件,这里介绍 OBS 推流软件的操作方法。
请到OBS官网下载最新软件 Windows版本 Mac版本
在OBS 设置 中应按下图设置:
Mac版推流地址设置:
Windows版推流地址设置:
实际 Mac版obs的流密钥与Windows版播放路径/串码流(如果存在)中的内容不会显示明文。
以上面的推流地址为例,参数设置为:
FMS URL / URL: rtmp://http://video-centeralivecdncom/AppName
播放路径/串码流(如果存在)/ 流秘钥: StreamNamevhost=http://livealiyncom
如您开启了鉴权,则鉴权参数也一并放在 Mac版obs的流密钥与Windows版播放路径/串码流(如果存在)中。
Step3:播放
用那种协议进行播放?
协议 | 优点 | 缺点 | 延时
------- | ------- | -------
FLV | 高并发、低延时 | 非标准做法,需要依赖SDK播放 | 1s-3s
RTMP | 延时小 | 高并发支持不好 | 1s-3s
HLS(M3U8) | 手机浏览器普遍支持 | 延时大 | >=10s,与切片时长有关,最大3个TS长度
客户可以根据实际业务场景灵活搭配使用,需要在移动端浏览器、移动H5端进行播放,建议使用HLS(M3U8)方式进行播放,无需集成SDK;非移动端或者已集成SDK的,低并发量并需要有更小的延时,可使用RTMP,高并发量建议使用FLV。
Web页面后台直接预览
使用OBS等工具使用鉴权URL推流后,可在 直播控制台 - 流管理 - 正在推流 页面查询到正在直播的推流记录,通过 直播地址 可查询播放地址,并可预览播放。
通过VLC预览
下载VLC,默认安装后无需做额外设置,文件—>打开网络串流,填写播放地址并点击打开后开始播放。
1HLS(HTTPLiveStreaming):Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。
2http为计算机网络中进行数据交换而建立的规则,网络中一个微机用户和一个大型主机的操作员进行通信。
3流媒体协议是用来描述进程之间信息交换数据时的规则术语。
安全实时传输协议(Secure Real-time Transport Protocol或SRTP)是在实时传输协议(Real-time Transport Protocol或RTP)基础上所定义的一个协议,旨在为单播和多播应用程序中的实时传输协议的数据提供加密、消息认证、完整性保证和重放保护。它是由David Oran(思科)和Rolf Blom(爱立信)开发的,并最早由IETF于2004年3月作为RFC3711发布。
由于实时传输协议和可以被用来控制实时传输协议的会话的实时传输控制协议(RTP Control Protocol或RTCP)有着紧密的联系,安全实时传输协议同样也有一个伴生协议,它被称为安全实时传输控制协议(Secure RTCP或SRTCP);安全实时传输控制协议为实时传输控制协议提供类似的与安全有关的特性,就像安全实时传输协议为实时传输协议提供的那些一样。
在使用实时传输协议或实时传输控制协议时,使不使用安全实时传输协议或安全实时传输控制协议是可选的;但即使使用了安全实时传输协议或安全实时传输控制协议,所有它们提供的特性(如加密和认证)也都是可选的,这些特性可以被独立地使用或禁用。唯一的例外是在使用安全实时传输控制协议时,必须要用到其消息认证特性。
HLS (HTTP Live Streaming)
Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文件。
常用的流媒体协议主要有 HTTP 渐进下载和基于 RTSP/RTP 的实时流媒体协议,这二种基本是完全不同的东西,目前比较方便又好用的是用 HTTP 渐进下载方法。在这个中 apple 公司的 HTTP Live Streaming 是这个方面的代表。它最初是苹果公司针对iPhone、iPod、iTouch和iPad等移动设备而开发的流现在见到在桌面也有很多应用了,HTML5 是直接支持这个。
但是HLS协议的小切片方式会生成大量的文件,存储或处理这些文件会造成大量资源浪费。如果要实现数天的时移,索引量将会是个巨额数字,并明显影响请求速度。因此,HLS协议对存储I/O要求相当苛刻。对此,也有公司提出了非常好的解决方案。
新型点播服务器系统,独创了内存缓存数据实时切片技术,颠覆了这种传统实现方法,从根本上解决了大量切片的碎片问题,使得单台服务器的切片与打包能力不再是瓶颈。其基本原理如下:
不将TS切片文件存到磁盘,而是存在内存当中,这种技术使得服务器的磁盘上面不再会有“数以吨计”的文件碎片,极大减少了磁盘的I/O次数,延长了服务器磁盘的使用寿命,极大提高了服务器运行的稳定性。同时,由于使用这种技术,使得终端请求数据时直接从服务器的内存中获取,极大提高了对终端数据请求的反应速度,优化了视频观看体验。
RTSP协议,这应该是实时性最好的了,如果要想实时性要求很高,比如05s以内,这个是不错的选择。前阵子模仿spydroid写了个建议的rtsp 服务器,其实就是options,describe,setup,play,pause,teardown这几步了,这个协议用的最广泛,网上介绍也比较 多。要想真正深入了解rtsp协议,c++语言功底好的可以查看live555 。
视频直播的实现过程如下:
1、从直播云服务器平台,获取rtmp的上行地址,及下行的观看地址;
2、在对编码器进行画质设置及上行地址设置;
3、现场网速测试,针对测试结果及目标用户的网络环境,调整编码器的画质码率;
4、连接采集设备(高清摄像机或视频切换台),并连上网络进行直播测试;
5、远端能看到听到,即表示直播无问题,就等活动正式开始前,提早进行直播。
当然想要有好的视频直播效果一定要有好的团队支持,拍立享的专业摄像师借助高清摄像机、推流器和网络视频直播系统,实现新闻发布会、体育赛事、远程会议、结婚庆典等现场实况直播;还可与拍立享照片直播兼容,实现视频直播和照片直播的双直播。
0条评论