一、 引言
随着互联网的迅速发展,流媒体服务正在迅猛地闯进人们的工作和生活。流媒体服务系统主要由运营商、网络和客户三个要素构成,然而随着人们生活的日益丰富多彩,要素之间的差异性也不断增大。服务运营商有电信部门、网站、企事业单位、小区和宾馆等。他们对流媒体系统的要求也不完全一样,有的要求并发媒体流数要多,而有的用户可能是局域网,带宽资源充足,则更强调要求媒体的质量要好;网络的差异性:宽带网络、局域网和modem等;客户的差异性:交费的高级用户、普通用户、未成年用户等等。
但是现有流媒体系统不能针对他们之间的差异,提供灵活多样的个性化服务,暴露出其严重不足。面对运营商的要求各不相同、网络类型纷繁复杂、客户要求也迥然各异的新形势,设计能提供灵活多样的个性化服务的流媒体系统,以实现在差异中求求优化的要求已经成为流媒体领域一个重要的发展方向。本文输入阐述了傲行流媒体系统的个性化服务的设计和实现。
二、系统组成
傲行流媒体系统(如图1)主要由流媒体服务器和客户端两部分组成。流媒体服务器主要由存储设备、个性化控制器和媒体分发控制器三个部分组成。客户端主要由与服务器端相配合的个性化服务控制器和播放器组成。
媒体分发控制器主要有两个作用(如图2):将mpf(mpf是汉唐科技MPEG-4文件格式)文件流化并发送出去,转发直播器送过来的媒体流。提供现场直播、点播、在线广告及Multicast多点传送等各种流媒体服务;可运行于Windows、Linux、Solaris等多种系统平台下;支持RTSP、RTP、RTCP、HTTP、RSVP、UDP、TCP等多种标准通信协议。
个性化服务管理器主要是实现对流媒体系统进行个性化的服务管理,在本项目中主要包括了用户管理、计费管理、广告管理和影片管理。例如个性化用户管理可以实现对多级身份验证实现。对每个用户规定一定的权限,点播时通过RTSP协议验证用户身份等。并在安全传输方面,本系统平台采用了RTSP的两种授权机制:Basic与Digest。用户账号与密码都经过MD5算法加密后存储于本地文件或数据库中。
播放器播放器是流媒体系统的终端用户软件,用于本地或远程播放MPF、DVD、VCD、AVI、MP3、WAV、WMV、WMA等大多数目前流行的音视频流媒体格式,并且可以作为ActiveX控件嵌入各种浏览器进行播放。在远程播放时能实现对接受来的媒体进行播放的同时在后台继续接受数据。
二、 个性化服务的设计与实现
流媒体服务作为一个产业,主要由客户、网络和服务供应商三个要素组成。但是每个要素都有多种类型,客户有免费的普通用户、收费的贵宾用户,网络有局域网、宽带网络、modem等,服务供应商有电信运营商、小区、宾馆等。各自的要求也不完全一样,电信运营商对并发流数一般要求特别高,对广告插播、计费管理也很需要。而宾馆因为一般是局域网,带宽资源丰富,所以对音视频的质量要求特别高。
个性化服务控制就是要针对用户的这些个性化的要求,设计各自个性化的服务管理。用户可以根据各自的需要,选择、配置或者自行定制自己的管理规则。新一代流媒体系统的个性化服务主要包括四个方面的个性化管理:个性化用户管理、个性化计费管理、个性化广告管理和个性化影片管理(如图3)。
图中服务器记录信息数据库主要是记录集群中各个服务器的运行信息,主要包括服务器名称,服务器IP地址,服务器负载参数,服务器上点击的影片记录统计等信息。用户信息数据库主要是记录用户信息,主要包括用户姓名,用户ID,用户类型(匿名,普通用户,贵宾),用户权限等。广告数据库主要是包括广告信息,主要包括广告名称,广告类型(文字,图标,音视频),广告文件所在地址,该广告文件总共播放的时间等。影片信息数据库主要是影片信息,包括影片名称,影片地址,该影片播放频率,影片类型(属于几级)等。下面具体予以阐述。
1、个性化用户管理
流媒体系统的个性化用户管理主要包括用户信息数据库管理和用户接入控制两个方面。用户信息数据库管理主要是实现用户信息的注册、注销、修改、查询、统计等功能;设置用户类型和优先级;根据用户IP地址、子网掩码等设置访问权限;进行用户特点统计;可以针对不同用户收看不同级别影片。
用户接入控制主要是根据用户信息和设置的访问规则,决定对用户访问请求做何种响应。一般采用抢占式接入控制算法,具体运行过程如图4。
由图4可知,首先要进行用户认证,判断用户是否有访问的权限(认证实际上包括判断用户是否为合法用户,系统中有没有该影片和该用户有没有权限访问该影片三个步骤);然后从集群控制管理器询问是系统是否还有接受服务的资源;如果没有就采用抢占式接入控制算法,终端现有连接中有没有优先级比该用户低的用户,如果有,就终端其中优先级最低用户的服务,为给该用户提供服务腾出资源;判断该用户是否需要插播广告,应该插播哪个广告;最后通知集群控制服务器为该用户提供相应的服务。
2、个性化计费管理
个性化计费管理主要功能是根据用户在不同时间点播不同影片的信息,再按照设定的计费方式,然后实现对用户计费管理,主要由个性化计费方式的选择和设置、计算生成客户帐单两个部分组成。系统提供按时间、次数、流量、内容、包月共五种方式可供选择,也提供了二次开发接口便于用户开发更为灵活多样的计费方式。计算生成客户帐单是就是根据计费方式和用户点播信息计算用户的的费用。可供选择的五种计费方式介绍如下:
(1) 按时间
计费在一分钟之后开始,计费过程是根据用户点击影片的类型确定费率(元/部),再根据影片的总时间(秒)和用户本次观看该影片的时间(秒);由公式算出本次消费的金额,计费精确到0.01元,如果不到0.01元就以0计算。实现人性化的计费方式,影片看到中途资费不够时允许继续观看(可设置),用户点播开始一段时间(可设置)内和暂停时间内不计费。
(2) 按次数
可以给不同的用户制定不同的价格,计费通常在一分钟之后开始,计费过程是根据用户点击影片的类型确定费率(元/次),然后直接用该费率进行计费。用户观看的计费起始时间可以设定。
(3) 按包月
在点播开始时,首先验证用户是否已过期,然后验证用户本次包月