首页 | 手机 | 笔记本 | 硬件 | MP3 | DC | DV | 品牌机 | 办公 | 网络 | 服务器 | 投影 | 新闻 | 游戏 | 学院 | 下载 | 家园 | 生活
首页 >> 学院 >> 工具软件 >> 工具软件媒体
用Windows Media 9 Series创建实况广播1
2004-11-8 11:37:00 文/Builder.com Phillip Perkins 出处:ZDNet China

    当需要在 intranet 上发布多媒体演示时,大多数开发人员都考虑预先录好内容,然后对其进行数字化处理,再将其以多媒体文件(比如 MP3)的方式交给大家。然而,1000个并发用户请求同一个文件会给网络带来很大的负担。

    使用 Windows Media 9 Server,你可以将实况广播做成一个多播来提供服务。这意味着只有一个流为请求它的客户提供服务。实况广播的一个缺点是它们难于实现。但是,有了Windows Media Encoder 9 Series,这就简单了,而Encoder 是一个可扩展组件,你可以通过编写脚本为广播员创建更具体解决方案。在这篇文章中,我将使用Windows Media Encoder 9 引擎(Encoder)从 Web 页面创建一个实况多媒体广播。我还会创建一个客户页面来接收广播,以及自定义命令和字幕。

    Encoder 是一个可从微软下载的批处理脚本组件;它还是一个单独运行的可执行文件。Encoder 可以架设起实况广播服务器,还可以将负载推到一台Windows Media Server。在这个例子中,我将在本地计算机上架设广播服务器。我的机器运行的是带 IIS 5.0 的 Windows XP Professional。首先要做的事情是创建一个配置文件,这个配置文件是一个以 .wme 为扩展名的 XML 文件。

    为了减轻手工创建配置文件的负担,我启动 Encoder 并按照其向导创建了一个实况广播。第一个屏幕询问视频和音频输入设备,我有一个 Web 摄像头和一个麦克风,所以我从下拉列表中选择了摄像头并使用默认的音频设备。然后它询问你是想要将内容放到 Windows Media Server 上,还是想让客户机连接到你的计算机获取内容。

    对于我的这个例子,我选择后者。我接受默认的 HTTP 端口并继续。在接下来的屏幕上,你可以设置希望广播的音频和视频的质量。(请记住,质量越高,需要的带宽就越多。)视频我选择 Live Broadcast,音频我选择 Voice Quality。下一屏问你是否希望归档广播数据以备后用。如果你正在制作执行官的广播并希望存储文件的话,这个设备就显得十分重要。然而,在我的 PC 上,这样做会吃光我的硬盘空间,所以我跳过了归档选项。最后,跟随向导的屏幕直到最后并点击 Finish。

    请检查你的摄像头,以确保它正在采集视频数据,然后从 View 菜单中选择 Audio Panel 确保你的麦克风正在采集音频数据。你应该看一下音量指示器,当你说话时它将上下变动。点击工具栏中的 Properties 宾馆或者从 View 菜单中选择Properties Panel。在Sources 选项卡中,选择“Both Device And File” Source From选项。然后选中 Script 复选框。(如果使用自定义命令,这将非常重要。)保存配置文件并将其部署到你的本地站点上。

    现在你已经有了配置文件,你可以通过脚本运行 Encoder 引擎来创建一个更加具体的用户体验,并避免让广播员学习如何使用 Encoder;然而,Encoder 引擎必须在广播员的计算机上。

    下面是完成自定义广播的 HTML 页面:

<a href="http://ad.cn.doubleclick.net/click%3Bh=v3|31bd|3|0|%2a|u%3B12033632%3B0-0%3B0%3B6694709%3B31-1|1%3B7650852|7668748|1%3B%3B%7Esscs%3D%3fhttp%3a%2f%2fhttp://www.intel.com/cd/business/enterprise/apac/zho/bss/products/server/167382.htm?nocc&flash" target="_blank"><IMG SRC="http://m2.cn.doubleclick.net/929929/W_builder_MPU_tagged1108.swf " WIDTH=468 HEIGHT=60 BORDER=0 ></a>

    <html>
    <head>

    var g_objEncoder = new ActiveXObject("WMEncEng.WMEncoder");
    g_objEncoder.Load("http://localhost/config.wme");

    function start() {
        g_objEncoder.Start();
    }
    function stop() {
        g_objEncoder.Stop();
    }
    function sendURL(url) {
        g_objEncoder.SendScript(0, "URL", url + "&&frame2");
    }
    function sendCmd(cmd) {
        g_objEncoder.SendScript(0, "TEXT", cmd);
    }
    function sendCaption(msg) {
        g_objEncoder.SendScript(0, "CAPTION", msg);
    }
    </script>
    </head>
    <body>
    <button onfiltered="start()">Begin Broadcast</button>
    <button onfiltered="stop()">End Broadcast</button><br>
    <input type="text" name="txtURL" id="txtURL" size="50"><br>
    <button onfiltered="sendURL(txtURL.value)">Go URL</button><br>
    <textarea id="txtMsg" rows="5" cols="80" scroll="off"></textarea><br>
    <button onfiltered="sendCaption(txtMsg.value.replace(/\n/g, '<br>'))">Send
     Caption</button><br>
    <button onfiltered="sendCmd('showAlert')">Show Alert Box</button>
    </body>
    </html>

    将这做成一个 Web 页面是为了简单。在 HTML 中快速设置用户界面要比创建自定义应用程序容易。为了使这个页面能够工作,必须允许不安全的 ActiveX 控件初始化和运行,但是它会显示可用的功能。

    因为所有的配置信息都包含在配置文件中(该配置文件在 ActiveX 组件被创建时被装载),广播员不需要配置广播环境。所有要做的只是开始和结束广播。

    前面的 HTML 创建一个具有两个按钮的页面,这两个按钮分别用于开始和停止广播。页面还有一个用于输入 URL 的文本域和一个相应的按钮,这个按钮允许你从客户的浏览器导航到指定的 URL。页面还有一个<TEXTAREA> 和一个相应的按钮,这个按钮允许广播员发送“字幕”给客户,还有一个按钮用于向客户发出命令,发出的命令由客户端 HTML 的JScript 块处理。

    在第二部分中,我将创建用于接收内容的客户端 HTML 页面。


IT产品热门报价
 手机 更多>>
 笔记本 更多>>
 数码产品 更多>>
 电脑硬件 更多>>
热点推荐
·IT江湖牛B事之口水系列
·震撼21款AM2主板横评专题
·冷眼看暑促价格战非万能
·学生购买笔记本全面指导
·快乐支付体验会现场报道
·是明星贪财还是商家无耻?
·QQ2006
·PPlive
·酷狗
·超级转换秀
·明星三缺一
·PPstream
·TOM-Skype
·珊瑚虫QQ 
生意经
看本文的网友还看了:
  • Windows Media Player11使用技巧 2006年7月18日
  • 用Windows Media 9 创建实况广播2 2004年11月8日
  • 给你的WMP加个调速器 2004年11月5日
  • 看本文网友的博客:
    ·很棒小秘书称软件删不掉是用户水平太低
    ·[软件资讯榜]惊爆!央视推出I
    ·网络跨进“娱乐时代”
    ·[软件资讯榜]真正的Web 2
    ·[[软件资讯榜]腾讯QQ2006
    2006 经营许可证编号:浙B2-20040150 粤B2-20050807 广告联系:020-61081800