MS Media 编码器SDK 简明教程
国内源代码网站版权说明:本文版权属于作者闻怡洋,在未经过作者允许的情况下禁止以下行为:
◎在互联网上转载本文。
◎在任何盈利性杂志或是盈利性行为中使用本文。
关键字:开发编程MS Media Encoder SDK 教程多媒体编码
本文下载地址:www.vchelp/wyy/2007/media_tutorial.pdf
闻怡洋
完成第0章2006-07-08
完成第1章2006-07-08
完成第2章2006-08-28
完成第3章2006-05-11
第0 章介绍__________________________________________________2第 1 章创建简单的编码程序____________________________________3 1.1引用Encoder对象_______________________________________________3 1.2基本思路_______________________________________________________5 1.3代码与说明_____________________________________________________5 1.4编码配置_______________________________________________________7 1.5WMEncoder 对象介绍___________________________________________9 1.6IWMEncSource 对象介绍________________________________________9第 2 章创建多组编码程序和使用自定义配置______________________9 2.1基本思路_______________________________________________________9 2.2代码与说明_____________________________________________________9第 3 章实现视频、音频捕捉与视频编码预览______________________9 3.1列举设备_______________________________________________________9 3.2捕捉编码过程中的事件___________________________________________9 3.3捕捉视频、音频并进行编码_______________________________________9
3.4视频编码预览基本思路___________________________________________9
3.5视频编码预览所使用的对象_______________________________________9
3.6代码与说明_____________________________________________________9
第 0 章介绍
本文的主要内容是讲解MS Media 编码器SDK的基本用法,简单的说:通过这个SDK可以创建各种流媒体编码程序,甚至可以创建流媒体广播程序。被编码的输入来源可以是文件,也可以是屏幕捕捉,也可以是视频音频设备。鉴于目前国内此方面的开发资料比较少,所以编写本文,希望能够带给流媒体的开发人员一些帮助。
在Windows2000推出时,其中附带了一个服务器产品“流媒体服务器”,在之后的几年中随着微软流媒体产品的完善,Windows格式的流媒体对市场的占有方面已经开始赶超Real公司的流媒体产品。
微软的流媒体产品中有服务器产品,如“流媒体服务器”,也有个人产品,如“媒体播放机”、“Windows Movie Maker”和本文要介绍的“Windows Media Encoder”。
微软对“Windows Media Encoder”的定义是:一种能制作Windows流媒体文件和流(包括音频和视频)的应用工具。这个工具的作用大致包括以下几个方面:
l转换编码格式。
l创建并播放网络媒体流。
l从设备中捕捉视频、音频。
l捕捉屏幕。
l创建和修改编码配置文件。
l数字媒体版权管理。
微软网站相关资源:
l Windows Media主页
www.microsoft/windows/windowsmedia/cn/default.aspx,这里有微软Windows Media家
族所有产品的介绍。
l Windows Media 编码器主页
www.microsoft/windows/windowsmedia/cn/9series/encoder/default.asp l Windows Media 9 系列SDK 主页
www.microsoft/windows/windowsmedia/cn/9series/sdk.asp。
其中Windows Media 编码器SDK
msdn.microsoft/library/default.asp?url=/library/en-us/dnwmt/html/WMEncoder_9_SDK_I
ntro.asp,本文要讲述的内容就是这个SDK中一部分功能的应用。
首先我们需要下载并两个安装包,一个是:Windows Media Encoder,另一个是:Windows Media 编码器SDK。通过Windows Media 编码器SDK开发的应用程序在分发时候必须与Windows Media 编码器一起发布。安装结束后,会在开始菜单中生成一个名为Windows Media的程序组,里面包含了Windows
Media Encoder应用工具和SDK文档。Windows Media 编码器SDK所支持的开发语言有VBScript,JavaScript,VB,C,C++,C#。本文所选择的开发语言是C#。SDK是以COM的形式提供各种功能的,C#在调用COM组件时候所需要的基础知识本文不再做讲解,幸运的是读者不需要对COM的模式和调用过程有过多的了解,依然可以读懂本文。使用C/C++的读者也可以直接调用COM接口来使用SDK。
本文内容的安排如下:
l第一章:创建简单的编码和格式转换程序将结果保存至文件;了解编码类型;编码配置。
l第二章:创建多组编码程序,通过这个程序可以合并多个文件;使用自定义的编码配置。
l第三章:创建视频、音频捕捉应用;实现编码时效果预览;捕捉编码过程中的事件。
准备工作:
l Windows Media 编码器到C:\Program Files\Windows Media Components\Encoder\ 。
l安装Windows Media 编码器SDK到C:\WMSDK\,在安装SDK 之后会在开始菜单“程序\Windows Media\Windows Media SDK”中增加一个名为“Windows Media Encoder SDK”的帮助
文件,里面包含了所有的SDK帮助信息。
l建立目录C:\WMSDK\Demo\,用于保存视频音频文件。拷贝两个MP3文件到此目录,并改名为src1.mp3和src2.mp3,拷贝两个MPEG文件到该目录,并改名为src1.mpg和src2.mpg。
l建立目录C:\WMSDK\Code\,用于保存演示代码文件。
第 1 章创建简单的编码程序
1.1 引用Encoder对象
在创建一个工程之后,首先需要在工程里面添加对“Microsoft Media Encoder”的引用,方法如图2.1与图2.2。
图2.1 添加引用
图2.2 添加引用
在代码中要加入如下语句:using WMEncoderLib;。
1.2 基本思路
首先需要创建一个WMEncoder 对象。
创建一个IWMEncSourceGroup 对象,IWMEncSourceGroup里面保存的是需要进行编码的原始视频和音频来源。
通过IWMEncSourceGroup 创建视频源对象IWMEncVideoSource 和音频源对象IWMEncSource。
为源对象设置输入源,在本章里使用文件作为输入源,除了文件以外还可以将视频捕捉设备等作为输入源。
通过IWMEncFile 对象设定输出目的,在本章内使用文件作为输出目的,除了文件以外还可以向流媒体服务器输出或者直接广播到网络上。
遍历IWMEncProfileCollection 对象选择一个配置文件,配置文件将决定输出的格式。
开始编码并结束。
1.3 代码与说明
下面的代码会将C:\WMSDK\Demo\src1.mpg 文件编码成为C:\WMSDK\Demo\EncodeFile_dest.wmv。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论