13、一旦服务器端的电视节目被共享后,局域网内的其他客户端机器就能够访问共享电视节目了;不过在正式访问之前,大家还必须在工作站中做一点小设置:首先在开始菜单中打开windows media player媒体播放器,并在该程序界面中依次执行“文件”/“打开”命令,在随后出现的打开对话框中直接输入服务器端的地址信息,其地址格式为“mms://xxx.xxx.xxx.xxx:8080”。
使用 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。
前面的 html 创建一个具有两个按钮的页面,这两个按钮分别用于开始和停止广播。页面还有一个用于输入 url 的文本域和一个相应的按钮,这个按钮允许你从客户的浏览器导航到指定的 url。页面还有一个<textarea> 和一个相应的按钮,这个按钮允许广播员发送“字幕”给客户,还有一个按钮用于向客户发出命令,发出的命令由客户端 html 的jscript 块处理。
在第二部分中,我将创建用于接收内容的客户端 html 页面。作者: shillan 时间: 2005-12-24 16:17
当需要在 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 页面:
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);
}
将这做成一个 web 页面是为了简单。在 html 中快速设置用户界面要比创建自定义应用程序容易。为了使这个页面能够工作,必须允许不安全的 activex 控件初始化和运行,但是它会显示可用的功能。
因为所有的配置信息都包含在配置文件中(该配置文件在 activex 组件被创建时被装载),广播员不需要配置广播环境。所有要做的只是开始和结束广播。
前面的 html 创建一个具有两个按钮的页面,这两个按钮分别用于开始和停止广播。页面还有一个用于输入 url 的文本域和一个相应的按钮,这个按钮允许你从客户的浏览器导航到指定的 url。页面还有一个