Azure Media Service (1) 使用OBS进行Azure Media Service直播
《Windows Azure Platform 系列文章目录》
今天正好有客户问如何使用OBS进行Azure Media Service直播,我这里简单介绍一下。
先决条件:
1. OBS Studio: https://obsproject.com/,下载并安装
2. Azure China账户
操作步骤主要分为以下几部分:
1.创建Media Service
2.OBS操作步骤
3.预览
4.设置直播带宽
5.设置CDN
第一部分.创建Media Service
1.登录Azure China管理平台:https://manage.windowsazure.cn
2.创建新的Media Service服务,并设置Storage Account

3.等待这个Media Service创建完毕后,点击创建成功的Media Service。然后选择Channels,Add New Channel

4.在弹出的窗口,设置Channel Name。Encoding Type选择None。图略。
5.Inges Protocol选择RTMP
6.Channel Creation。设置本地OBS客户端访问的IP地址。即客户端推送的白名单。
如果是通过本地PC机器的OBS访问Media Service,选择Restrict to current IP Address
如果是其他机器的OBS访问,设置IP Address OR CIDR Rang
选择完成设置。
7.等待Channel的状态为 Ready。然后点击Start Streaming,根据需要选择加密方式。
我这里选择Unencrypted

8.点击下图的Ingest URL

点击上图的2 Ingest URLS。弹出窗口,牢记
- Primary(RTMP): rtmp://leilivechannel-leimediaservice.channel.mediaservices.chinacloudapi.cn:1935/live/107b55fdb25d482fb23c4222e3e3f48f,这个是输入的URL
- 而上图的Publish URL,是客户端查看的URL:
http://leimediaservice.streaming.mediaservices.chinacloudapi.cn/edaea887-adb2-41c6-90e4-f5f18c659510/3bcfbbde-90c9-496a-9ba9-82201dca134e.ism/Manifest
第二部分:OBS操作步骤:
1.在本地PC机器,打开OBS Studio。选择文件设置

2.在串流中,选择自定义流媒体服务器。
输入Azure Media Service的Primary (RTMP):
rtmp://leilivechannel-leimediaservice.channel.mediaservices.chinacloudapi.cn:1935/live/107b55fdb25d482fb23c4222e3e3f48f
流秘钥,输入上面的live/后面的内容,即:107b55fdb25d482fb23c4222e3e3f48f。
如下图:

3.输出,视频比特率进行合理设置,比如800

4.然后设置输入源。步骤略:

5.最后,点击开始串流

可以看到,本地PC机器上传的带宽为966kb/s
注意:保证本地的OBS机器到Internet带宽和网络稳定
一定要保证带宽充足,应至少为上传视频码率总和的4-5倍。例如,上传为800Kbps单码率,那么直播现场的live encoder所在电脑应该有至少4Mbps独享带宽,并且要保证网络的稳定。否则,当直播源有一段时间不能连接服务器,而且没有保持RTMP连接,那么直播源再次连接成功以后,也要在azure云上reset channel,才能重新正常播放。
第三部分:预览
我们可以根据自己的需要,自己开发播放器。
1.当我们设置完毕后,就可以通过Azure Media Player进行预览:
http://ampdemo.azureedge.net/ (注意这个网站在海外,使用起来会比较慢)
2.我们上面设置的Public URL:
输入到Azure Media Player的URL里面,如下图:

然后点击上图的Update Player。就可以看到本地播放的内容了。显示的是我的桌面。

设置直播带宽
1.我们登录Azure China管理平台:https://manage.windowsazure.cn
2.选择Media Service,然后选择Stream Endpoints:

3.选择上面的default,页面跳转
根据需要,设置这个Media Service直播的互联网带宽:

上图中,一个Unit为200 mbps带宽。注意:如果设置很高,则支出的互联网带宽也越贵。

第五部分:设置CDN
1.如果我们不想支持带宽费用,我们也可以保持STREAMING UNITS为1。然后通过设置CDN,来保证客户端的用户体验。注意CDN也会产生额外的费用。
2.设置CDN的前提要求:需要客户具有自己的DNS地址,且该DNS地址必须经过ICP备案。
3.我们选择新建,CDN,Quick Create。然后输入以下内容:

1) Acceleration Type为HTTP Live Steaming Acceleration
2) Original Domain Type为Media Service
3) Origin Domain为选择自己创建的Media Service
4) Custom Domain为客户自己的DNS域名,比如cdn.contoso.com.cn
5) Origin Host Header选择默认
6) ICP Number,为自己域名cdn.contoso.com.cn的备案号
最后,客户就可以通过自己的域名:cdn.contoso.com.cn,来访问Media Service服务啦。
Azure Media Service (1) 使用OBS进行Azure Media Service直播的更多相关文章
- 如何通过Azure Service Management REST API管理Azure服务
通过本文你将了解: 什么是Azure Service Management REST API 如何获取微软Azure 订阅号 如何获取Azure管理证书 如何调用Azure Service Manag ...
- [SDK2.2]Windows Azure Cloud Service (35) 使用VS2013发布Azure Cloud Service
<Windows Azure Platform 系列文章目录> 好久没有更新BLOG了,今天我们继续Windows Azure相关的内容. 笔者最近把Visual Studio升级到了20 ...
- 如何将Azure DevOps中的代码发布到Azure App Service中
标题:如何将Azure DevOps中的代码发布到Azure App Service中 作者:Lamond Lu 背景 最近做了几个项目一直在用Azure DevOps和Azure App Servi ...
- 【Azure微服务 Service Fabric 】使用az命令创建Service Fabric集群
问题描述 在使用Service Fabric的快速入门文档: 将 Windows 容器部署到 Service Fabric. 其中在创建Service Fabric时候,示例代码中使用的是PowerS ...
- [SQL in Azure] Getting Started with SQL Server in Azure Virtual Machines
This topic provides guidelines on how to sign up for SQL Server on a Azure virtual machine and how t ...
- 【初码干货】【Azure系列】1、再次感受Azure,体验Windows Server 2016并部署BlogEngine.NET
上个月末,在某人的建议下,重新注册了一个1元试用账户(包含1个月期限的1500元订阅),并充值了1000元转为了正式账户,相当于1000元得到了2500的订阅,于是又一次开启了Azure之旅. 在这不 ...
- Azure机器学习入门(二)创建Azure机器学习工作区
我们将开始深入了解如何使用Azure机器学习的基本功能,帮助您开始迈向Azure机器学习的数据科学家之路. Azure ML Studio (Azure Machine Learning Studio ...
- Windows Azure Storage (18) 使用HTML5 Portal的Azure CDN服务
<Windows Azure Platform 系列文章目录> Update:2015-04-15 如果读者使用的是国内由世纪互联运维的Azure China服务,请参考笔者的文档:Azu ...
- [Windows Azure] Developing Multi-Tenant Web Applications with Windows Azure AD
Developing Multi-Tenant Web Applications with Windows Azure AD 2 out of 3 rated this helpful - Rate ...
随机推荐
- 学习笔记:因为java匿名类学习到接口的一些小用法
在看CometD的示例代码时发现了许多有意思的代码,但说实话看别人的代码确实是件很累的事情,所以就看到这个知识点做一下记录吧. 先看一段代码: 代码1 这段代码中有一个new的操作,而且是在方 ...
- 前端er是否忽略了某些东西?——读《ppk谈JavaScript》
关于书 “不知道ppk的网站QuirksMode,说明你可能还没有真正成为资深的JavaScript程序员.” ——Roger Johansson,瑞典资深Web专家. ppk是世界级前端技术专家,W ...
- 类库间无项目引用时,在编译时拷贝DLL
例一: xcopy $(TargetPath) $(SolutionDir)\Framework\HCSP.App\bin\Debug /y 例二: xcopy $(TargetPath) $(Sol ...
- 干掉Unity3D
我为什么想干掉Unity3D? 这个问题容我不答,每个做技术的人总有一些完美主义. 你使用u3d的过程中是不是痛并快乐着呢. 就从两个国内具有相当普遍性的痛点说起. il2cpp,unity作出了这个 ...
- ASP.NET MVC 5 - 控制器
MVC代表: 模型-视图-控制器 .MVC是一个架构良好并且易于测试和易于维护的开发模式.基于MVC模式的应用程序包含: · Models: 表示该应用程序的数据并使用验证逻辑来强制实施业务规则的数据 ...
- maven package 知识(转载)
“打包“这个词听起来比较土,比较正式的说法应该是”构建项目软件包“,具体说就是将项目中的各种文件,比如源代码.编译生成的字节码.配置文件.文档,按照规范的格式生成归档,最常见的当然就是JAR包和WAR ...
- pl/sql里的exists和in的差别
项目中有个需要需要如下pl/sql(数据库是MariaDB) ) AS small FROM cmp_ent_main a WHERE createTime<'2016-9-21' ,,) ) ...
- jQuery 2.0.3 源码分析core - 选择器
声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 打开jQuery源码,一眼看去到处都充斥着正则表达式,jQuery框架的基础就是查询了,查询文档元素对象 ...
- jQuery 2.0.3 源码分析 钩子机制 - 属性操作
jQuery提供了一些快捷函数来对dom对象的属性进行存取操作. 这一部分还是比较简单的. 根据API这章主要是分解5个方法 .attr() 获取匹配的元素集合中的第一个元素的属性的值 或 设置 ...
- OpenCascade Primitives BRep-Cylinder
OpenCascade Primitives BRep-Cylinder eryar@163.com Abstract. BRep is short for Boundary Representati ...