windows server 2012 流媒体服务器搭建(直播与点播)

 

IIS Live Smooth Streaming(实时平滑流式处理)是微软下一代流媒体解决方案。该技术是在IIS web中集成媒体传输平台IIS media services,实现利用标准 HTTP Web 技术以及高级 Silverlight 功能,确保在互联上传输质量最佳、播放流畅音视频节目。

该技术以下优点:

1、 平滑流式处理是一种自适应流式处理技术,通过动态监视本地带宽和视频呈现性能,平滑流式处理可实时切换视频质量来优化内容的播放,具有高带宽连接和先进计算机的观众可体验完全高清质量的流,而具有低带宽或较旧计算机的其他观众可接收适合其功能的流。

2、 可传送完全高清的按需和实时流而不会出现断断续续的问题。

3、 IIS 比特率限制扩展可控制通过 HTTP 传送媒体的速率,从而能够节省网络带宽费用。

4、 平滑流式处理可以适用于点播(由 IIS 平滑流式处理扩展提供)和实时广播(由 IIS 实时平滑流式处理扩展提供)两种不同应用需求。

缺点:使用平滑流式处理技术实施直播并不是一个完全免费的方案,它必须使用Microsoft Expression Encoder Pro做为流媒体编码器(在以前的流媒体服务器解决方案中,windows meida encode是完全免费的。免费的Microsoft Expression Encoder不支持平滑流式处理),该软件是集成在Microsoft Expression中的,要收费。

解决方案布署图:


 

 

一、准备和安装

1. 由于IIS Live Smooth Streaming只支持IIS 7以上版本,所以我们使用的服务器操作系统必需是Windows 7, Windows Server 2008, Windows Server 2008 R2。

本实验环境是Windows Server 2008 R2。

在 服务器管理器 中添加Web服务器(IIS)

 

2. 下载IIS Media Services 4.1,并安装IIS Media Services 4.1(服务器上)

下载链接:

http://www.microsoft.com/zh-cn/download/details.aspx?id=27955


 

 


 

 

3. 准备好Microsoft Expression Encoder Pro 4.0,并安装Microsoft Expression Encoder Pro 4.0(视频采集计算机上)

参考地址:

http://www.microsoft.com/expression/products/Purchase.aspx

安装可参考上篇WMS 2008中的步骤

二、配置Live Smooth Streaming,创建直播发布点

可参考:

http://www.iis.net/learn/media/live-smooth-streaming/getting-started-with-iis-live-smooth-streaming

1、 打开 开始—管理工具—Internat信息服务管理程序

在打开的管理程序界面中选择想要设置的站点或虚拟目录,双击Live Smooth Streaming Publishing Points图标。

打开后会有警报提示,点击 更新应用程序池设置

2、在右侧的“操作”面板中 发布点 下,点击 添加 。

3、在弹出的“添加发布点”对话框中,选择基本设置 选项卡。

输入下列信息:

文件名:为Live Smooth Streaming发布点的定义文件输入一个名称

此处使用的文件名是“LiveSmoothStream”(可自定义)。

估计持续时间:实时直播节目的持续时间

以便客户端Silverlight播放器能显示播放内容合适的进度时间范围。

此处使用2小时的持续直播时间。

实时源类型:此处我们的Live Smooth Streaming服务器做为直播源服务器,它接收从Expression Encoder Pro发来的节目内容。所以,我们选择默认的“推”选项。

“拉”选项是从另一个Live Smooth Streaming服务器获取节目源内容,这样可以做到多服器分布负载,形成服务群集。

4、切换到 高级设置 选项卡上,选择“在第一次客户端请求时自动启动发布点”选择框。这个设置是当广播开始时,允许编辑器连接发布点。如果你不允许这个设置,可能会发生连接错误。

5、如果想让LiveSmoothStream 支持Apple的移动数字设备播放实时视频广播,可以在 移动设备 选项卡上,选择“允许输出到Apple数字移动设备(E)”选择框。

6、完成后点击 确定 。

一个新的Live Smooth Streaming 发布点的文件LiveSmoothStream.isml被加入到网点的根目录中。

7、在中间的“实时平滑流式处理发布点”操作面板上,选择已经加入的发布点,然后在右

侧的“操作”面板上,点击 启动发布点

8、发布点状态从“空闲” 变成“正在启动”,这表示它正在等待外部数据传入。

此处是等待从Expression Encoder Pro编辑器中发来的直播平滑流式媒体数据。

当从发布点开始接受Expression Encoder Pro编辑器发来的数据之后,它的状态将变成State。需要在IIS 管理器中刷新Live Smooth Streaming发布点页面,才能看到这个状态的改变。

三、配置Expression Encoder Pro视频采集计算机

1、 在视频采集计算机上打开Microsoft Expression Encoder Pro 4.0,在 “加载新项目”对话框选择“实时广播项目”。

2、 打开Expression Enconder 4.0工作窗口,首先点击中间预览部分的 添加实时源

在左侧的实时源窗格中选择实时源的视频设备以及音频设备

3、 点击右侧“预设”面板,为Live Smooth Streaming直播方案选择可调整的编码速率和编码格式。在“编码”选项卡中选择“IIS 平滑流式处理”。可以自定义输出格式、视频、音频格式。

4、 点击“输出”选项卡,选择“流式处理”选择框,然后点击“发布点”,在“位置”

输入有效的直播视频的发布点的URL。URL的一般格式是:

http://ServerName/SiteName/DirectoryName/PublishingPointDefinitionFileName.isml

此处直播平滑流式发布点是我们在上面创建的发布点,格式是:

http://192.168.1.104/LiveSmoothStream.isml

点击“连接”按钮去测试发布点连接是否正常。为了使连接有效,必须启动在服务器上设置的发布点。

5、 如果想在节目中加入数字版权,选择“输出”标签中的“数字版权管理”选项。但是,如果你想让节目支持apple设备,就不能选择“数字版权管理”保护。

6、 在实时源标签页点击“定位”,使你的实时广播源开始工作。

7、 点击“开始”按钮,开始实时直播。

四、在web服务器上安装实时直播web页示例。

要想通过Web服务器看到实时视频直播,必须在web服务器上有一个嵌入silverligh播放器网页标签的网页。微软提供了一个网页示例。

下载地址:http://go.microsoft.com/?linkid=9738294

将下载的SmoothStreamingPlayer.exe文件解压到文件夹,可以看到以下三个文件。

并将三个文件copy至IIS网站默认根目录 C:\inetpub\wwwroot

Smooth Streaming Player-ReadMe.doc,配置说明文档。

SmoothStreamingPlayer.html,嵌入slilverligh播放器的示例网页文档。

SmoothStreamingPlayer.xap,Smooth Streaming player示例。

在SmoothStreamingPlayer.html文件中可以看到以下代码:

 

点播配置:

1、打开iis管理器

 

二、打开 web播放列表

 

点击右键选择  编辑功能设置

 

 

讲充许绝对/UNC路径选定

 

填写文件名、标题 ,点击添加

 

 

内容位置选择:相对路径,选择网站中视频的文件位置即可

保存后会在网站根目录生成一个以标题命名的isx文件,此文件即播放地址

 

 

网页播放兼容性代码:

<embed width="640" height="480" align="middle"  src="http://video.szqj.com:808/test1.isx"  wmode="opaque" mode="transparent" allowfullscreen="true" allowscriptaccess="always" quality="high"/></EMBED>

 

转载于:https://www.cnblogs.com/lvdongjie/p/9836197.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/249164.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

团队项目第一篇——NABCD

团队名称&#xff1a;筑梦之舟 团队项目名称&#xff1a;跑跑 N&#xff08;Need&#xff09;需求&#xff1a; 有许多人在跑步时想了解自己的移动轨迹和跑步距离很不便利&#xff0c;无法了解跑步的日程&#xff0c;我们的软件就是为了更加方便热爱跑步的人能够参加到跑步之中…

Vue warn Failed to mount component: template or render function not defined

问题如图&#xff0c;造成这类的问题一般有这么几个原因。 代码的拼写问题&#xff0c;当然这是最低级的错误vue定义的问题&#xff0c;这里我说明两点 在组件内部定义组件时&#xff0c;template 对应的必须是html字符串引用外部组件时&#xff0c;vue文件必须以template标签…

Python实现线性回归2,梯度下降算法

接上篇 4.梯度下降算法 《斯坦福大学公开课 &#xff1a;机器学习课程》吴恩达讲解第二课时&#xff0c;是直接从梯度下降开始讲解&#xff0c;最后采用向量和矩阵的方式推导了解析解&#xff0c;国内很多培训视频是先讲解析解后讲梯度下降&#xff0c;个人认为梯度下降算法更为…

在centos和redhat上安装docker

前置条件 64-bit 系统kernel 3.101.检查内核版本&#xff0c;返回的值大于3.10即可。$ uname -r 2.使用 sudo 或 root 权限的用户登入终端。 3.卸载旧版本(如果安装过旧版本的话) $ yum remove docker \docker-common \docker-selinux \docker-engine 4.安装需要的软件包 #yum-…

mac 下用 brew 安装mongodb

mac 下安装mongoDB一般俩种方法. (1)下载源码,解压,编译,配置,启动 比较艰难的一种模式. (2)brew install mongodb ,然后就可以悠闲的品一口茶,顺便瞄一眼网易新闻,这是一种傻瓜模式. 但傻瓜模式也有人为干预的时候,粗略说一下使用brew 安装mongodb 1 zhangzhimoke:~/code$…

比较python类的两个instance(对象) 是否相等

http://www.yihaomen.com/article/python/281.htm 比较python类的两个instance(对象) 是否相等 作者:轻舞肥羊 日期:2012-10-25 字体大小: 小 中 大对于同一个Class,可以创建不同的实例(instance), 如何比较这两个 instance 是否相等呢&#xff1f;我们知道&#xff0c;对于计算…

Mybaits插入记录返回主键值

某些情况进行insert时不知道主键值&#xff08;主键为自增&#xff09;&#xff0c;例如系统新增用户时&#xff0c;有用户序号&#xff08;主键 自增&#xff09;&#xff0c;用户名&#xff0c;密码。插入时只需插入用户名和密码&#xff0c;之后取得mysql自增的序号。 如下为…

Mac 解决brew一直卡在Updating Homebrew

运行命令brew install node&#xff0c;结果界面一直卡在Updating Homebrew...上&#xff0c;有两种解决办法 方法一&#xff1a;直接关闭brew每次执行命令时的自动更新&#xff08;推荐&#xff09; vim ~/.bash_profile# 新增一行 export HOMEBREW_NO_AUTO_UPDATEtrue方法二…

CAS单点登录原理简单介绍

1. SSO简介 1.1 单点登录定义 单点登录(Single sign on)&#xff0c;英文名称缩写SSO&#xff0c;SSO的意思就是在多系统的环境中&#xff0c;登录单方系统&#xff0c;就可以在不用再次登录的情况下访问相关受信任的系统。也就是说只要登录一次单体系统就可以。计划在项目中加…

前端跨域通信的几种方式

前言 前端通信类的问题&#xff0c;主要包括以下内容&#xff1a; 1、什么是同源策略及限制 同源策略是一个概念&#xff0c;就一句话。有什么限制&#xff0c;就三句话。能说出来即可。 2、前后端如何通信 如果你不准备&#xff0c;估计也就只能说出ajax。 3、如何创建Aja…

T4((Text Template Transformation Toolkit))模版引擎之基础入门 C#中文本模板(.tt)的应用...

1 关于C#中文本模板(.tt)的简单应用https://blog.csdn.net/zunguitiancheng/article/details/78011145 任何一个傻瓜都能写出计算机能理解的程序&#xff0c;而优秀的程序员却能写出别人能读得懂的程序。—— Martin Fowler 2 T4模版引擎之生成数据库实体类 http://www.cnblogs…

LeetCode412Fizz Buzz

写一个程序&#xff0c;输出从 1 到 n 数字的字符串表示。 1. 如果 n 是3的倍数&#xff0c;输出“Fizz”&#xff1b; 2. 如果 n 是5的倍数&#xff0c;输出“Buzz”&#xff1b; 3.如果 n 同时是3和5的倍数&#xff0c;输出 “FizzBuzz”。 示例&#xff1a; n 15, 返回: [ …

vue+node实现中间层同步调用接口

为了应对业务的复杂性&#xff0c;提高前端的渲染能力&#xff0c;故在项目中引入nodejs做中间层&#xff0c;前端承接vue&#xff0c;后端对接Java。 至于为什么这么搞&#xff0c;网上有好多文章都在讨论&#xff0c;可以说仁者见仁智者见智&#xff0c;这里我们不在深究。 …

ES6学习笔记(二十二)ArrayBuffer

ArrayBuffer ArrayBuffer对象、TypedArray视图和DataView视图是 JavaScript 操作二进制数据的一个接口。它们都是以数组的语法处理二进制数据&#xff0c;所以统称为二进制数组。 二进制数组由三类对象组成。 &#xff08;1&#xff09;ArrayBuffer对象&#xff1a; 代表内存之…

如何正确地使用Java的@deprecated标注

没有什么事情比看到一个没有任何说明的deprecated标注更让人愤怒的事情了。这种做法只能让人困惑&#xff0c;我到底还要不要用这个已经‘废弃’的方法&#xff1f;如果开发者不希望某个方法再被人用的话&#xff0c;就要好好地为deprecated标注写说明。这篇文章就讨论了正确地…

实现div里的img图片水平垂直居中

body结构 <body><div><img src"1.jpg" alt"haha"></div> </body>方法一&#xff1a; 将display设置成table-cell&#xff0c;然后水平居中设置text-align为center&#xff0c;垂直居中设置vertical-align为middle。 <…

[ 懒人神器 ] —— OO一键build:.zip - .jar

懒人神器 更新 大家注意一下&#xff0c;由于在写入MANIFEST的时候&#xff0c;Class-Path路径给的是 ../lib &#xff0c;即上级目录的lib。 所以在对拍时如果手动移动了 jar包的位置&#xff0c;需要保证 lib/ 文件夹在存放jar包的上一级目录下&#xff0c;否则在运行时会报错…

实现Datagrid分页

Html页面&#xff1a; <!DOCTYPE html> <html> <head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title></title><meta charset"utf-8" /><!-- 引入相关CSS --><…

Luogu 3698 [CQOI2017]小Q的棋盘

BZOJ 4813 虽然数据范围很迷人&#xff0c;但是想树形$dp$没有前途。 先发现一个事情&#xff0c;就是我们可以先选择一条链&#xff0c;最后要走到这一条链上不回来&#xff0c;走到链上的点每一个只需要一步&#xff0c;而如果要走这条链之外的点&#xff0c;一个点需要走两步…

h5-plus.webview

这里是链接转载于:https://www.cnblogs.com/yuners/p/10721163.html