争怎路由网/网站教程/内容

Windows media server sdk (1)

网站教程2024-07-16 阅读
【结构框架】
1. 服务
 Microsoft® Windows Media™ Services Software Development Kit (SDK) 包含了如下技术:
 - 满足对于网站的流式媒体的添加
 - 针对那些需要开发基于WEB的解决方案的网络服务提供商(ISVs)

 〖相关组件〗
- 单播控件集合 (Windows Media Unicast Controls)
 一个 Microsoft® ActiveX® 控件集合. 提供配置, 镜像和管理 Windows Media unicasting services 的能力.

- 媒体工作站控件 (Windows Media Station Control)
 单个 Microsoft® ActiveX® 控件提供配置, 管理和镜像 Windows Media multicasting services 的能力.

- 媒体服务认证 API (Windows Media Services Authentication API)
 兼容 COM 标准的 API, 用来开发 ASF 内容访问认证.

- 媒体服务时间提示和认证 API (Windows Media Services Event Notification and Authorization API)
 兼容 COM 标准的 API, 用于提供播发器执行任务前的加密认证和任务完成的提示功能

- 媒体服务传输控件 (Windows Media Services File Transfer Control)
 一个 ActiveX 控件, 用于接收多点广播文件传输.

2. 编码
 Windows Media™ Encoder 作为 Microsoft® Windows Media™ 工具的一部分, 主要用于实现对于媒体内容的编码 (诸如: 动态输出来自一个麦克风或者视频摄像头或者媒体文件的内容) 成为一个 Windows Media™ 格式的流或者文件. 该流或者文件可以通过一个运行 Microsoft® Windows Media™ 服务的服务器发送到客户端. 使用 state-of-the-art 压缩技术, 可以将视频, 音频和脚本指令转换或者压缩成为 Windows Media™ 格式的内容.

 Windows Media Encoder 可以通过使用"自动化"技术进行编程, 来提供一个可扩展的工具用于媒体信息编码成为 Windows Media 格式的流或者文件. 一个 Windows Media 格式流或者文件包含了视频, 音频或者脚本指令, 非压缩或者使用一个指定范围编码的压缩信息, 和使用 Advanced Streaming Format (ASF) 作为一个文件容器.

3. 播放器
 针对 Microsoft® Windows Media™ Player 7 SDK Beta的描述, 包含三项编程技术, 可以用于扩展播放器功能:
 - Windows Media Player ActiveX Control
用于为基于COM标准的文档和应用程序添加多媒体回放功能, 也包括网页. 它为各种流式/非流式的网络信息提供了编程接口.

 - Windows Media Player Skins
皮肤是一个基于 XML 的技术用于为独立的媒体播放器定制用户界面.

 - Windows Media Player Custom Visualizations
播放器图形效果是一些 COM 对象, 用来显示配合媒体回放的音频部分相同步的可视化的图形. 定制图形效果可以使用VC创建.

4. 媒体格式
 媒体格式的关键特点:
 - 支持对于 Windows Media 音视频及其脚本文件的读写和编辑. 将不需要第三方程序提供播发诸如WAV, AVI等格式的支持; 可以直接作为 Windows Media™ 格式播发. 应用程序也可以提供包括对于制作, 索引和脚本化的支持, 提供编辑和发布专业化能力.

 - 提供对于 Windows Media 格式的动态编码支持, 使得应用程序可以将动态内容进行网络实时转换发布.

 - 提高了对于视频的支持. CD 可以使用更高规格进行烧录以获得更好的回放效果. 应用程序可以实现高于实时(单倍速)的 Windows Media 音频文件到 CD-A (REDBOOK) 格式的转换. 一旦 Windows Media™ 文件被传输到用户硬盘(通过第三方程序), 他们可以再次被烧录进入CD, 以得到更高印制的音像制品.

 - 提供针对 Windows Media 文件和流的捕获和发布的更高支持. 包括支持 Microsoft® Windows Media™ Video codec version 7.0 codec 和 ISO MPEG-4 version 1 codec 的音视频格式, Windows Media™ Screen codec version 7.0 的程序视频, Windows Media™ Audio codec version 7.0 的音频, 和 ACELP codec 的会话内容.

 - 支持大容量文件(超过2GB)的播发.

 - 支持将打包内容通过应用程序传输到便携式设备和内存. 应用程序开发者, 硬件设备制造商和闪存生产厂家可以利用 Windows Media Device Manager 开发接口实现媒体信息的设备交互.

〖服务〗
1. 单播控件集合
 文件: Nsunimgr.ocx
 组成: 管理控件(Windows Media Unicast Admin) 和 跟踪视图控件(Windows Media Unicast TraceView).

管理控件 配置和管理服务器
跟踪视图控件 监视服务器事件
 平台:
单播服务 NT4 Server + SP4
管理控件 NT4, Win9x

1) 管理控件
 除了接口部分的属性, 方法和事件, 它同时维护了一些对象. 诸如:
 - Client 对象表示连接到服务器的客户端
 - Clients 对象表示客户端对象集合
 - AuthenticationPlugin 对象针对服务器的客户端对象进行认证

 编程方式:
 - 设置和取得服务器属性, 诸如: 带宽峰值, 连接峰值.
 - 监视客户端行为, 包括连接, 断开和播发标题
 - 监视系统活动, 状态, 管理功能和限制
 - 过滤事件类型

 编程特点:
 - 所提供的是运行时属性, 属性值需要等待连接完成才可以设置/取得.
 - 可以中间在网页中使用(脚本驱动), 在VB或者VC中同样可以


2) 跟踪视图控件
 提供图形界面显示服务端事件列表. 包括事件描述, 触发的日期时间. 也提供了编程接口

 编程方式:
 - 暂停/恢复事件监视
 - 清空事件日志显示
 - 事件类型包括: 服务器, 客户端, 管理器和提示事件
 - 使用 SetServer 方法使能管理控件
 - CLSID: 24DCD5F2-6DBB-11D1-BEF5-00805FBE84A6


2. 媒体工作站控件
 允许管理员配置宽带多点广播工作站, 启动和停止流的播发.
 注意: 从当前版本开始, 术语"station(工作站)"替代了"channel(频道)", 用于定义一个流如何播发. 同时被媒体服务管理的工作站对象也响应原来的操作. 诸如, 工作站关闭的事件依旧称之为 OnChannelClose. 而 Channels 集合对象即 stations. 大多数情况下, 早期的编码兼容当前版本

1) 控件属性支持如下任务执行:
 对于 stations, clients, streams, host addresses, windows media control objects 的创建, 删除和管理

 『工作站(Stations)』
每一个工作站定义了针对一个流的发送机制. 例如, 一个工作站包含了名称, 多播地址, 格式等信息. 工作站自身不包含媒体内容, 而是描述内容如何发送.
每一个工作站可以拥有多个格式, 格式信息包含了比特率, 包大小和流描述
每一个工作站格式具有至少一个流描述者, 包含了描述类型, 描述信息, 带宽和类型.

 『流(Streams)』
流指那些定义了媒体信息的数据包. 流可以被开始, 停止, 关闭和重新开始. 流同时具有数据源, 别名和内容类型, 并且可以和一个工作站相关联.

 『客户端(Clients)』
每一个工作站可以和多个客户端关联. 客户端可以是编码器或者另一个工作站控件. 客户端也可以是通过媒体流多点发布协议(MSBD)连接的媒体播放器实例. 本质上面所有的客户端都是通过 MSBD 协议或者超文本协议连接的.

 『服务器地址(Host Addresses)』
每个工作站同一个主机地址关联, 主机地址即服务器用于广播内容的网卡地址

 『工作站对象(Stations Objects)』
- Channels 集合对象
- Channel 对象, 每一个对象管理一个 ChannelFormats 集合对象

- ChannelFormats 集合对象
- ChannelFormat 对象, 每一个管理一个 StreamDescriptors 集合对象.

- StreamDescriptors 集合对象
- StreamDescriptor 对象, 描述了流特性

- Streams 集合对象
- Stream 对象, 定义媒体流内容

- Clients 集合对象
- Client 对象, 定义可管理客户端

- HostAddresses 集合对象
- Address 对象, 定义多播地址

 工作站对象
----------------------------------------------
(专业提供视频软件下载)

(专业提供视频软件下载)

(专业提供视频软件下载)

(专业提供视频软件下载)


(专业提供视频软件下载)

(专业提供视频软件下载)

(专业提供视频软件下载)

(专业提供视频软件下载)


(专业提供视频软件下载)

(专业提供视频软件下载)

(专业提供视频软件下载)

(专业提供视频软件下载)


(专业提供视频软件下载)

客户端对象流对象集合 频道对象集合
(专业提供视频软件下载)

 集合 (专业提供视频软件下载)

(专业提供视频软件下载)


主机地址(专业提供视频软件下载)

 流对象频道对象
 集合 客户端(专业提供视频软件下载)


(专业提供视频软件下载)

 集合频道格式对象
地址对象集合
 (专业提供视频软件下载)


频道格式对象
 (专业提供视频软件下载)


 流描述对象
集合
 (专业提供视频软件下载)


 流描述对象


2) 编程指南
 - 创建实例
<OBJECT ID="MCM" HEIGHT=1 WIDTH=1 CLASSID="CLSID:B00464B3-67D4-11D0-A464-00C04FC29CFB"></OBJECT>

 - 连接服务器
MCM.Connect "LocalHost"

 - 创建一个工作站
Set MyStation = MCM.Channels.Open( "My Station", 7 )

 - 设置工作站属性
MyStation.MulticastAddress = "238.8.217.46"
MyStation.Port = 13767

 - 指定发送选项
MyStation.DeliveryMode = MCM_DM_SESSIONLESS_3PH

 - 创建工作站格式对象
MyStation.ChannelFormats.Add "C:\ASFRoot\welcome.asf", MCM_ASF_CH_FORMAT_FILE

 - 创建 .nsc 文件
Windows Media Station (.nsc) 文件提供客户端方便的连接.
MyStation.WriteNSC "C:\inetpub\wwwroot\mynsc.nsc", "True"

 - 创建一个流对象
Set MyStream = MCM.Streams.Open ("mms://MyServer/welcome.asf", "MyStream", MCM_PA_READ)

 - 激活一个流对象
MyStation.SetActiveStream MyStream

 - 启动多点广播
MyStream.Start 0

 - 开始多点广播
一旦有客户端连接到服务器即开始播发

 - 多点广播一个实时流
MCM.Connect "LocalHost"

Set MyStation = MCM.Channels.Open( "MyStation", MCM_PA_ALL_ACCESS )
MyStation.MulticastAddress = "238.8.217.48"
MyStation.Port = 14767
MyStation.DeliveryMode = MCM_DM_SESSIONLESS_3PH

Set MyStream = MCM.Streams.Open ("msbd://MyServer:1152", "MyStream", MCM_PA_ALL_ACCESS)
MyStation.ChannelFormats.Add "C:\ASFRoot\Stream Formats\MyFormat.asd", MCM_ASD_CH_FORMAT_FILE
MyStation.WriteNSC "C:\inetpub\wwwroot\MyStation.nsc", "True"
MyStation.SetActiveStream MyStream

MyStream.Start 0

 - 停止一个流
MyStream.Stop

3. 媒体服务认证 API
4. 媒体服务时间提示和认证 API
5. 媒体服务传输控件


……

相关阅读