IPTV节目的流媒体信息的表现方式
发布时间: 2022-06-10 11:43:57

当用户启动
IPTV的终端浏览器程序将主页面呈现出来时,组成该页面的信息可能不仅是由单个文件组成的。实际上一个页面可能是由几十个不同的文件组成的,这些文件还可以来自不同的服务器,所有这些文件有机的组合在一起构成所看到的页面并呈现给用户。浏览器向服务器提出请求并最终组成和显示一个画面的典型的过程如下:
(1) 浏览器从服务提供商网站请求显示主页面;
(2) 服务器返回页面描述源代码,它可能包含有来自不同服务器上的音频、视频、图片、文本、动画和其他组成页面的元素;
(3) 浏览器通过分析页面中的文件,并根据页面描述源代码完成这些文件的请求;
(4) 服务器得到请求并发送所要求的文件和合适的文件内容层次与结构类型;
(5) 浏览器根据文件的内容层次和结构信息将页面信息显示出来。
文本文件通常包含在原来的HTML文档中,但是如果这是一个基于框架的页面就需要涉及更多的请求。IPTV终端使用特定的端口、各种网络协议以及文件的内容层次和结构类型来保证数据能够到达用户终端,并转交给正确的应用程序。
1. 用户界面内至屋次和结构
为了确定用户界面的内容层次和结构,IPTV可以釆用多用途互联网邮件扩展(MIME)类型来实现。MIME类型是一种简单的字符串文本,它包含在文件头中。用户终端中的浏览器在接收到这类文件时,会比较这个字符串和一个已经注册的MIME列表中的每一项来决定这个文件中包含的是什么类型的数据,以决定用何种方式来对其加以呈现。
IPTV系统中呈现给用户的页面可能包含有视频、音频、文本、图片,甚至还有动画。如果浏览器知道每个文件包含什么类型的数据,它便可以播放并显示这些不同数据类型。根据数据类型的内容,浏览器还可以决定它能不能使用本地应用程序打开这种文件,或是需要其他的帮助性质的程序或是插件。例如,当一个页面包含有Flash动画时,浏览器在查询MIME类型时会发现它必须下载相应的Flash播放器。如果没有MIME类型,在默认情况下浏览器可能会试图把这种数据当作文本打开。在实际应用中可能会遇到由于MIME类型的设置错误,而使浏览器打开的一些文件显示的都是乱码。
(1) MIME类型的注册
只有MIME类型的正常运行,用户终端上的应用程序才可以互相协作、很好地运行。为了在MIME类型检测时能正常运行,媒体播放器必须和计算机上安装的所有浏览器一起注册。而当MIME类型的所有权设置不当时,可能会导致用户终端系统的混乱。比如,当浏览器遇到一个MIME类型是QuickTime的文件时,它会决定采用QuickTime播放器播放接收到的内容;类似的,如果接收到的类型是RealMedia文件,则需要RealPlayer播放器或RealPlayer的插件。尽管如此,仍然有些数据类型可以被很多不同的应用程序打开;同时很多程序试图注册尽可能多的MIME类型。如果在用户终端有两个程序都可以用来打开同一类型的文件,那么为了成为打开该种类型文件的默认的播放器就会发生冲突。
另一个问题是流媒体播放器只能和终端中已经安装了的浏览器一起注册MIME类型。如果安装了流媒体播放器后,安装或是重新安装了一种浏览器,就必须重新安装这些播放器的插件,使它们重新注册MIME类型。
网页浏览器还必须拥有所有合适的注册了的MIME类型,这样可以保证当一个文件被请求打开时,正确的MIME可以被发送给浏览器。大多数的网络服务器事先处理好了绝大部分的MIME类型,但是仍然经常需要为流媒体文件作特定的配置。
(2) 流媒体的MIME类型
由于浏览器是可以和流媒体播放器交互操作的,因而网络服务器必须为流媒体文件配置正确的MIME类型,同时播放器必须正确地注册了MIME类型。
但通常服务提供舂没有权利控制用户终端,它只能寄希望于用户能够正确地安装媒体播放器,并能够控制网络服务器上所注册的所有MIME类型。用户一般没有必要知道如何注册MIME类型,这个注册的过程也因为所运行的网络服务器各异而有所不同。MIME类型是有规范化标准的,而它们是如何用到不同的终端和浏览器上却没有标准。
2. 流媒体文件的链接
当在用户界面上打开一个流媒体文件链接的时候,可能出现如下几种情况:
• 文件通过HTTP协议传输,浏览器拥有播放器或是其插件用于解码流文件;
• 文件通过HTTP协议传输,浏览器不参与处理,而是由一个单独的播放器播放;
• 文件通过其他协议传输,浏览器不参与处理,而是由一个单独的播放器播放;
• 文件通过其他协议传输,浏览器拥有播放器或是其插件用于解码流文件。
由于浏览器使用的是HTTP协议,这样流媒体文件的初始请求总是使用HTTP协议传输。如果文件是通过HTTP协议传输或是下载的,那么网页浏览器可以用播放器插件播放所需的媒体流或是使用单独的流媒体播放器。当然,这里还需要其他的一些途径来控制从浏览器到流媒体播放器的数据传输,这种控制传输一般使用元文件。当流媒体播放器接管播放时,它可以使用其他的协议接收文件。
元文件是一些使用MIME类型并标记了使用流媒体播放器打开的小文件。这些文件可以是元文件,也可以是重定向文件,或是引用电影。元文件是一些小的包含有媒体流文件地址的文本文件。元文件还可以包含其他信息,比如元数据、播放列表或是供播放器使用来选择打开文件的条件状态。
当页面浏览器接收到元文件时,它根据MIME类型将这些文件交给合适的流媒体应用程序。流媒体播放器在打开元文件后寻找到流媒体文件的地址,不需通过浏览器便可以单独与流媒体所在的服务器在另一个端口用不同的协议进行通信。通过与浏览器脱离并使用其他的端口号和协议,媒体播放器可以在使用浏览器浏览网页的同时欣赏流媒体广播站点的节目。
另一种控制媒体播放的方法是在网页上嵌入媒体播放器。这样可以让用户来控制播放的环境,这是由设计的网页决定的。嵌入式流媒体播放器能够选择让媒体播放器的那些元素可见,以及希望它们出现在什么位置上。可以使用HTML表格或是框架中的图片文件为任何流媒体播放器创建用户界面。
3. 嵌入式媒体播放器的控制
当用户单击页面上的链接打开一个单独的播放器时,浏览器会将元文件交给播放器处理,此后浏览器不再介入媒体播放的进程。嵌入式播放器的工作则与此稍有不同,除了拥有所有独立播放器功能,它们在某种程度上还受到浏览器的控制。
浏览器与嵌入式播放器的通信使用下面两种方式之一:使用浏览器插件或是使用ActiveX控件。RealSystem和QuickTime提供这两种嵌入式技术的支持,而WindowsMedia只支持ActiveX控件。大多数浏览器会忽视它们不能理解的代码,而用它们能够解析的代码控制网页,同时支持插件和ActiveX控件。
在网页中嵌入播放器只是创建定制用户界面的第一步。为了完成多方面的交互功能,JavaScript提供了一个用于控制网页上的各种元素的交互平台,其中包括嵌入式播放器。JavaScript是为了让网页生动起来而应运而生的一项技术,它不用每次向服务器发送请求。比如,如果网页上有一个表格需要填写,那在向服务器提交信息处理之前,需要检查每一项是否填写正确。这样不只会调用服务器的资源,而且也会调用用户终端直接进行处理。使用客户终端处理能力的好处包括当鼠标在页面上面移动时,可以改变图片内容。JavaScript为浏览器增添了智能,浏览器不仅仅是显示文本和图片这样的被动部件,还能够和用户动态交互。
JavaScript不是HTML的一部分,它是独立的软件,可以嵌入浏览器,可以操纵HT-ML和其他在浏览器窗口内的软件。JavaScript很大程度上是跨平台兼容的,其JavaScript代码理论上可以工作在任何平台下使用JavaScript的浏览器中。尽管JavaScript是跨平台定制标准的,但在不同的浏览器和不同版本的浏览器中,使用的是不同层次的应用标准。设计跨平台或是跨浏览器的JavaScript代码,关键是要尽可能地保证代码简单小巧。