1、t p视易星云KTV系统培训教材一一原理篇W河北鼎杰科贸e esTB第1页L 读者对象原理篇的目的让大家了解熟悉星云KTV7.。系统的各重要模块组成及功能、各模块之间 的关系、系统各主要功能的流程等内部原理。学习完本教材后,就像庖 丁解牛一样,让大家对星云KTV7.0系统的工作原理和流程有清晰的认识,最终形成清晰的解决思路。/使用读者(安装使用过星云KTV系统的读者:学习建议 y原理性的教材内容必须至少学习3-5遍才能彻底理解并牢记。同时也可 以做为手册使用,在碰到问题时进行查阅。s T 第2页内容提纲星云KTV系统的主要功能介绍星云KTV系统的主要功能模块介绍星云KTV系统主要功能模块工作原
2、理星云KTV数据库重要的表系统实施拓扑图详解 VODsys.log运行信息解读第3页科技创新-融合应用KTV系统主要功能AK TV系统功能看似复杂,其实我们只要抓住主要的功能模块入手学习,就能去 繁就简,快速掌握系统运行的经脉。A选歌星云K TV提供图形化的点歌界面供客人选歌。不管点歌界面如何千变万化,客 人选歌的过程其实就是机顶盒根据客人操作,进行如下功能模块的过程:查询数据库获得歌曲信息:是容易因参数配置等外界原因出现问题的模块,大家需要认真理解机顶盒是如何查 询获取到歌曲信息的。显示查询结果:不容易受外界因素影响出现问题,除非是程序有错误、机顶盒内存不足原因,一般 不容易出现错误。保存操
3、作结果:是容易因参数配置等外界原因出现问题的模块,大家需要认真理解机顶盒是如何保 存点歌列表、我的歌库等信息的。播歌客人选中歌曲后,机顶盒就要通过网络从服务器获得歌曲数据播放,并响应暂 停、停止、重唱等播放控制请求。此过程很容易受网络、服务器影响而出现问题,但还是有规律可循,这部分功能的 工作原理对大家排查现场问题菲常重要。http:/www-evideosTB-com创新第5页KTV系统主要功能h A稳定性和容错性功能热迁移功能系统自动屏蔽故障的VOD服务、分发服务,并自动识别已经恢复的服务器。这部分的 工作原理很重要,大家需要仔细了解。负载均衡功能系统自动在服务器之间、不同服务器的网卡间、
4、同一服务器的不同硬盘之间对点播相 同歌曲的并发流进行均衡分配。此功能由程序代码自动实现,受外界因素干扰小。硬件容错功能系统自动识别屏蔽不能正常工作的网卡、硬盘、歌曲。此部分功能由程序代码自动实 现,受外界因素干扰小。A后台管理后台管理模块独立性强,为系统运行提供内容和设置保证,出现问题容易排查。曲库管理:用来维护歌曲库文件和歌曲信息 包厢管理:用来维护包厢设置和状态信息 系统设置维护模块:设置系统运行必需的参数,大家要理解每个参数的作用、影响的 模%A运营管理也就是K TV酒水收银管理系统,相对点歌系统独立运行,会另有培训教材进行培训。http:/www-evideosTB-com创新第6页h
5、 t t Pwed e oS T Bm科技创新合应用第7页星云KTV VOD服务模块A 功能:响应机顶盒的点播请求,把对应的歌曲按照一定的码率,按照视频点播协议,采用流媒体 机制传输给机顶盒。每台VOD服务器上都要运行此服务。运行形式:VOD服务模块就是:星云K TV安装目录evideoK TVbinvodservice.exe文件。作为后台服务 程序,没有人机交互界面,Win2K系统启动后自动以服务的形式运行。可以进入”管理工 具”服务”中,服务名称是 START VOD Service”。资源需求:内存资源:VOD服务启动时,会检测系统物理内存是否满足需要,不满足则不自动。判断规则为:系统
6、物理内 存=256M(留给Win2K系统使用)+授权并发流数*4M字节(每个点播并发流需要的内存)。所以512M内 存最多只能负载64个并发流。数据库资源:VOD服务运行过程中,需要访问SQL数据库,获取ID号对应的歌曲存放目录。配置参数文件:VOD服务需要的参数都保存在c:StartVOD.ini中,特别是VOD服务要访问的SQL服务器信息。此配置文件说明见备注。版本区别:演示版本:为了演示方便,不需要加密狗,但最多只能同时支持3个并发流。正式版本:需要加密狗才能运行。以上两个版本的Vodservice.exe文件不一样。第8页http:/www-evideosTB-com4 C3新星云KT
7、V VOD服务模块A授权限制:加密狗不认服务器:注册加密狗时可以在任一台服务器上进行,加密信息写入 加密狗中,插到任何一台服务器都可以使用,与服务器硬件没有关系。授权次数:总共只有6次输入授权的机会,5次输入限时授权机会,一次输入正式授权 机会。所以每个授权都有标明对应的次数。授权优先级关系1.第一次授权的优先级最低,正式授权的优先级最高,即NOkNO2vNO3vNO4vNO5正式。2.在使用对应次数的授权过期后,再注册必须使用更高优先级的授权。例如,第4次授权过期后,必须使用第5次或者正式授权。3.如果低优先授权没有过期,而输入了更高优先级授权,则低优先级授权自动作废,启用更高优 先级授权;
8、4.一旦输入正式授权码,则加密狗变成正式授权,不能再使用限时授权。如果想再使用限时授权,必须更换加密狗。功能授权:授权码中含有是否能够使用某些需要付费购买功能的授权信息,例如多合 一、热迁移等。http:/www运行监控:VOD属于后台运行的服务,无GUI界面。VOD服务的所有运行信息都保存进入c:vodsys.log 文件中,按时间顺序写入,最后的信息是最近发生的。要查看VOD所宥的运行信息,只能 通过查看此文件,这一点非常重要。e V i d e o s T B VOD服务运行命令行参数:VodService.exe-install:注册VODService.exe程序成为Win2K系统的
9、服务。VodService.exe-remove:从Win2K的服务列表中删除此服务 VodService.exe-start:启动VOD服务。第9页创新融合应用 J星云KTV VOD服务工作流程 VOD服务启动和工作流程:1.VOD服务启动,读取c:startvod.ini中配置信息进行初始化。如果初始化失败,则把失败原因写入c:vodsys.log文件然后退出。2.读取加密狗获得授权并发流数信息,申请一定数量的内存。如果申请内存失败,则 把失败原因写入c:vodsys.log文件然后退出。3.开始监听机顶盒的点播请求。4.有点播请求时,判断当前的并发流是否已经超过授权数。如果没有,再根据R
10、TSP点 播协议进行交互。5.机顶盒通知VOD服务需要点播歌曲的文件ID号(非歌曲编号)。VOD服务查询本地信 息文件,获得歌曲文件ID号对应的歌曲存放目录和文件名。如果此歌曲不存在,则 通知TSServer进行坏歌屏蔽。6.按照节目的码率,遵循RTSP协议,以数据流的形式把歌曲数据源源不断的传输给机 顶盒。机顶盒端一边通过网络接收歌曲数据放入内存缓存中,一边从缓存中取出数 据交给解码芯片播放。就像一个水池,一边进水一边出水。进水的速度必须大于出 水的速度,否则会出现接收缓存区欠载出现歌曲播放停顿的现象。如果出现读取歌 南类败、超时等错误,对通妥口TSserver进行球歌屏蔽。7.相应机顶盒端
11、的暂停、停止操作指令。http:/wwwevid e OSTB-com8.以上每个动作对应的运行状态信息都记录进入c:vodsys.log文件中。第10页星云KTV TSserver分发服务模块 TSserver服务模块是非常重要的模块,也称作分发服务,每台VOD服务器上都需要运行此服 务。功能相当于K TV系统各功能模块之间的交通警察,进行负载均衡调度、硬件故障屏蔽处 理、指挥实现热迁移功能、汇报指挥调度情况。;t 对应文件就是:星云K TV安装目录evideoK TVbinTSServer.exe文件,非后台服务程序,有操作界面。通过屏幕右下 角系统托盘上的图标指示工作状态。创新运行监控调
12、出TSserver监控界面的方式是:双击系统托盘上K TVwatch状态图标-在弹出的对话框上双击状态栏,即可 进入。监控界面会实时显示分发服务的工作状态和运行信息。请务必注意TSserver属于应用程序进程,不能 通过系统工具栏进行关闭。e功能描述:统计记录系统负载情况;VOD服务在开始、结束一个点播流时,都会通知所有服务器上的TSserver。分发服务会在内存中维护 一张所有网卡、硬盘的负载情况表,并根据VOD服务通知而动态修改。硬盘负莪均衡TSserver在启动时,会从本地信息文件(不是SQL数据库)中获取到所有服务器硬盘盘符和其上保存的歌 曲的文件ID(文件IDW歌曲编号)对应表。当机
13、顶盒点播一个节目前,分发服务查询得到保存有此歌曲所 有硬盘中负载最轻的,把此硬盘上该歌曲的文件ID告诉机顶盒,机顶盒以此文件ID向VOD服务申请点 播。.网、负载均衡在形成点播链发送给机顶盒前,分发服务会从内存记录中,确定歌曲所在的哪个服务器负载最轻,该 服务器哪个网卡负载最轻,告诉机顶盒从哪个网卡进行点播。硬件容错当VOD服务发现文件、硬盘、网卡故障时,会通知分发服务。分发服务会记录下来,时,排除这些设备。第12页,触合应用星云KTV TSserver分发服务模块A功能描述:判断和触发VOD服务热迁移分发服务在生成点播链之前,会先按照RTSP协议进行虚拟交互,判断负载均衡机制选 择的VOD服
14、务是否可以正常工作。如果发现改VOD服务不能正常服务,则会标示该 VOD服务不可用,不再参与负载均衡机制。后续机顶盒再点播到此服务器上歌曲时,分发服务直接让机顶盒切换播放下一首歌曲。这个过程就是VOD服务的热迁移。当服务器有冗余备份时,热迁移后,机顶盒还是可以点播到所有的歌曲。当服务器没有冗余备份,热迁移后,机顶盒可以查询和选择故障服务器上的歌曲,但播放时会跳歌。后续的版本会实现机顶盒端对此情况下故障服务器上的歌曲自 动屏蔽显示,客人不会看到这些歌曲。故障服务器的恢复识别分发服务会定时自动判断已经被屏蔽的VOD服务是否恢复了正常。如果已经恢复,则 自动把该VOD服务标示为正常,参与负载均衡机制
15、,对外提供服务。服务器之间信息同步分发服务会自动在不同服务器之间同步包厢状态信息、已点歌曲列表、个人歌库等(设 计本地数据库机制,后面会详细讲述)。付费功能限制:分发服务启动时,会自动判断是否授权使用多合一功能、热迁移功能。系统自动对时:分发服务会自动同步PC时钟,以时间最晚的服务器为准,修改其它服转瞿的时女 确 保所有分发服务所在的机器时彝甘度。避免出现开关房时间不统一等曳为1 2、削q 如果要更改服务器时间,必须先关闭所有的分发服务后,才能进行。妾刁htt p:/w w WevideosTB-com星云KTV系统服务监控模块运行形式:服务监控模块就是:星云K TV安装目录evideoK T
16、Vbinktvwatch.exe文件。星云系统安装后,会在系统启动时自动运行,并自动最小化以托盘图标的形式 体现。t t p关键功能介绍:监控服务运行:实时监控VOD、TS服务的运行状态,当监测到服务停止时,可自动启动这些服务。生成机顶盒端本地数据库信息文件:启动后,自动根据SQL数据库内容,查询、转换生成机顶盒本地数据库机制需要的固 定格式的信息文件。Dbyou目录下所有文件、servershare目录下部分文件是由 K TVwatch每次启动时根据数据库重新生成。回写数据库:把ServerShare目录下记录的机顶盒工作信息数据,回写进入数据库。例如点播排行、个人歌库信息等 提供系统工作信
17、息查询提供系统工作状态的信息提示,例如网卡、硬盘屏蔽的信息、TS服务运行信息的提供。提供授权信息查询可以查询加密狗授权信息,例如第几次授权、已经授权次数、剩余授权时间。:/WWWevid e OSTB-com第14页创新-融合应用星云KTV系统本地数据库机制A以前的网络数据库机制:歌曲信息、包厢状态信息、已点歌曲列表、个人歌库等信息都是保存在SQL Server币的,必须实肝访问SQL Server才能获取/更新这些信息。机顶盒因为采用嵌入式Linux系统,不能直接访问SQL数据库,故通过一个数据库 访问代理程序DBSer ver来中转一下。机顶盒每次需要显示信息时,都需要访问DBServer
18、o例如翻页显示歌曲列表时。所有机顶盒都在使用时,导致DBServer和SQL Server负载很重,效率低,且容易 出现问题。:为保证数据库查询实时性,35个点以上时都需要单独的SQL服务器。网络一旦出现问题,机顶盒端就不能进行歌曲查询的工作;A本地数据库机制:服务器启动时,自动查询SQL Server,获得机顶盒工作需要的数据库信息,并以 文笨落式居文彳牛葆存下来。机顶盒启动时,会自动下载这些文件,然后在内存中建立一个本地数据库表。机顶盒需要查询歌曲信息时,是从本机内存中的数据库中查询显示结果。所有机 顶盒都是各自查询自己的本地数据库,大大减轻了服务器的压力和对网络的依赖。本地数据库查询速度
19、快,工作可靠稳定,间接提升了服务器端的稳定性。机顶盒只在更新已点歌曲列表、个人歌库等情况下,才发给分发服务器,保存在 文本格式的数据文件中。如果不重新生成本地数据库且重新启动机顶盒,机顶盒端不会立即看到对曲库做:-弟通专星云KTV 7.0系统本地数据库机制介绍A星云K TV从6.0版本开始使用本地数据库机制,7.0及后续版本把本地数据库机制进行 了改进,极大的减少了对SQL Server的依赖。A机顶盒工作需要的所有数据库信息,在原先的网络数据库机制下,是通过读取/更新 SQL数据库实现。在本地数据库机制下,全部保存在每台分发服务所在的机器中 evideoktvdownload目录下的本地文本
20、格式的薮据庠文件中。数据库信息文件 由K TVWatch程序在每次启动时,会查询SQL数据库,生成文本格式的数据文件,保存在 evideoktvdownloaddbyou目录下。彳列如歌曲信息、歌星信息、注册路径等。并直讨以随时重 新生成本地数据库信息文件 机顶盒启动时,通过分发服务器所在的IIS服务,以http协议自动下载这些文件,并转换为内存 中的本虑薮据库。机顶盒工作信息记录文件 机顶盒在工作过程中,会产生一些需要保存的信息,如已点歌曲列表、个人歌库等信息。机顶盒 会通知分发服务进行保存,以文本支件的形式保存在服务器上的evideoktvdownloadServerShare 目录下相关
21、文件中。http:/wwwA星云K TV 7.0及后续版本只在启动时,K TVwatch生成dbyou目录下数据文件时需要访 问SQL server,当本地数据库生成后,点歌系统就完全脱离SQL,即使关闭SQL服务,而不影响系统的运行。e V i d e o s T BA虽然在本地数据库机制下,包厢管理工具、机顶盒不会再访问SQL服务。请注意曲库 管理工具、星云酒水收银管理系统还是基于SQL数据库的。第16页新触合应用星云KTV 7.0系统本地数据库文件介绍A提供机顶盒运行时需要查询信息的本地数据文件,存放目录为:evideoktvdownloaddbyou0 setting.ini:记录机顶
22、盒播放相关设置的配置文件。song.txt:总曲库信息文件。Songcfg.ini:因总曲库信息文件太大,下载处理不方便,故把总曲库song.txt分成几部分下载,此文件记录总曲库分割的信息;:MaxSongNum=*,总库文件中歌曲数量 SongFileNum=N,记录总库文件被分割为几个文件下载,例如=3,贝就会有songl.txt song2.txt song3.txt songl.txt,song2.txt、song3.txt:把总库分割后的子文件,数量与songcfg.ini中SongFileNum数值 对应。htt p:/w w w singer.txt:记录所有歌星信息。Movi
23、eType.txt:记录电影类型信息。NewSong.txt:记录新歌列表信息。Polling.txt:记录设置的公播歌曲信息。vip.txt:记录属于VIP才能观看的歌曲信息。vip_type.txt:记录VIP类型,目前暂时用不上此文件,保留给以后使用。Welcome.txt:记录走马灯默认的欢迎信息。serial.idx:检测以上记录正确性的信息文件。Rank目录及下面的文件:记录所有歌曲、不同类别歌曲的点播排行 Zong.txt:总曲库的排行列表 GuoYu.txt,LiuXing,txt,MinNan.txt,QingGe.txt,QiTa.txt,YueYu.txt,别、语种歌曲的
24、子点播排行。/创新Zong.txt,同类evideOSTB-com4C3星云KTV 7.0系统本地数据库文件介绍保存机顶盒运行过程信息的本地数据文件,存放目录为:evideoktvdownloadServerShare。请大家注意,此目录必须以共享名Servershare进行共享。evideoktvdownloadServerShareShareCall 目录,保留目录,目前没有使用。evideoktvdownloadServerShareShareData目录,存放包厢、服务器设置、注册路径等关键 信息的目录 Server.txt:记录服务器设置信息的文件,对应数据库中的Server表。t
25、t p列名对应数据库中的字段备注服务器名Server.ServerName服务器是否可用Server.IsValid0-不可用1-可用服务器IP1Server.IP 1IP1是否屏蔽Server.IP 1 Disabled0-可用1-不可用网卡1的权重Server.Weight 1服务器IP2Server.IP2IP2是否屏蔽Server.IP2Disabled0-可用1-不可用网卡2的权重Server.Weight2服务器IP3Server.IP3IP3是否屏蔽Server.IP3 Disabled0-可用1-不可用网卡3的权重Server.Weight3服务器IP4Server.IP4IP
26、4是否屏蔽Server.IP4Disabled0-可用1-不可用网卡4的权重Server.Weight4例如.Serverlllllll92.168.20.17llllll5lll92.168.21.17lI0II45IIIIIIIIIIII格式为:服务器名II服务器是否可用II服务器IP1HP1 是否屏蔽II网卡1的权重II服务器IP2111P2是否 屏蔽II网卡2的权重II服务器IP3111P3是否屏蔽 II网卡3的权重II服务器IP4111P4是否屏蔽II网 卡4的权重IIWed eS TBm创新4C3星云KTV 7.0系统本地数据库文件介绍 evideoktvdownloadServe
27、rShareShareData 目录,存放包厢、服务器设置、注册路径等关键信息的目录 path.txt:记录每个服务器上歌曲存放目录信息,对应数据库中filepath表。列名对应数据库中的字段服务器名Server.ServerName路径IDFilePath.FilePathlD路径名FilePath.Path例如:Serveri II1 llc:evideoktvdownload 服务器名.son:记录该服务器名对应服务器上存放的歌曲信息http:/www列名对应数据库中的字段备注文件IDMediaFile.Fileld歌曲编号Media.MediaSerialNo同组号Media.grou
28、pid组歌曲的歌曲编号路径IDFilePath.FilePathlD文件目录MediaFile.Path文件名MediaFile.FileName例如:2ll93000ll93000ll2lld:musicll93000.vobevid e OSTB-com第19页创新星云KTV 7.0系统本地数据库文件介绍A evideoktvdownloadServerShareShareData目录,存放包厢、服务器设置、注册路径等 关键信息的目录 RecordServer.txt:记录保存录音服务器配置信息。列名对应数据库中的字段共享名K TV_RecordServer.ShareName用户名K T
29、V_RecordServer.UserName密码K TV_RecordServer.PasswordIP1K TV_RecordServer.IP1IP2K TV_RecordServer.IP2IP3K TV_RecordServer.IP3IP4K TV_RecordServer.IP4例如:recordllAdministratorllabclll92.168.20.17H192.168.21.17llll K TV.TXT:记录包厢设置信息、开房时间信息、包厢选用的皮肤、区域信息、包厢类型、员 工信息等表。SongBankPwd.txt:把所有个人曲库密码都记录在此文件中。BadPa
30、th.log:记录系统工作过程中发现的坏路径信息 BadFile.log:记录系统工作过程中发现的怀歌曲信息 evideoktvdownloadServerShareshareorder目录下存放每个机顶盒的待播歌曲列表,文 件名就是包厢的IP。t evideoktvdownloadServerShareSharepersonalsong 目录下存放个人歌库信息,件名就使个人账户名,文件内存放此个人歌库的歌曲编码。*仅七 记录个人歌库的信息,由ktvwatch负责生成*1o 记录个人歌库的更改信息,由分发服务根据机顶盒请求生成第20页4 C3创新星云KTV 7.0包厢管理功能模块介绍 两个包厢
31、管理工具:酒水收银系统的包厢管理把包厢信息直接保存进入SQL数据库中,不使用server share共享目录星云K TV系统自带的包厢管理把包厢信息直接保存进入K tv.txt中,需要使用servershare共享目录进行相关数据更新 K TV管理收银系统的包厢管理:设置包厢时,包厢信息都直接保存在SQL数据库中。修改包厢状态时,状态改变也直接写入SQL数据库,并通过分发服务改变包厢状态。当连接的分发服务不能工作时,自动迁移到其它可用的分发服务上。A星云自带的包厢管理:所有包厢设置信息都保存在ktv.txt文件中,通过分发服务改变包厢状态。当连接的分发服务不能工作时,自动迁移到其它可用的分发服
32、务上。进行包厢信息的设置修改,只能在任意一个分发服务器上运行星云包厢管理工具,才能进行。目前需要注意的一个地方:不论是否使用K TV收银管理系统,分发服务都是读取ktv.txt文件,获得包厢设置信息的。通过管理收银系统的吧台管理设置包厢信息后,都直接保存在了SQL中,并没有直接生成ktv.txt。所以,必须再通过星云包厢管理工具中的包厢信息导入功能,ESQL中的包厢信息保存成ktv.txt供分发服务使用。后续如果通过管理收银系统更改了包厢设置,也必须通过星云包厢管理工具重新导入,更新ktv.txt文件。这样的设计存在一些不方便,后续星云系统会进行改进。第21页m创新本地数据库文件内容生成、更新
33、、回写K TVWa tch程序完成的工作:直接根据数据库内容生成:DByou目录下所有文件,都是“生成本地数据库”时,查询数据库后覆盖重写的,进行所以这些文件的修改时间基本都一样。ServerShareSharedata目录下path.txt、recordserver.txt,server.txt.服务器名.son,也是“生成本地数据库”时,查询数据库后覆 盖重写的,文件修改时间与DByou目录下基本一致。先回写数据库,再生成:ServerShareXSharePersonalSong:先读取此目录下的所有记录个人歌库变化信息的”手机号.log”文件,回写进入SQL数据库。然 后再根据SQL数
34、据库中记录而个人曲库信息生成”手机号.txt”文件。ServerShareShareSongOrder:读取songorder.txt中记录的歌曲点播次数信息,更新数据库,然后清空此文件。ServerShareShareData:把BadPath.log、BadFile.log文件中记录的信息写入数据库,然后重新生成。t t p包厢管理工具完成的工作:W建立包厢信息:根据输入的设置,在运行包厢管理工具的服务器中ServerShareShareData目录下生成K TV.txt文件。注意,在无收银管理系统时,包厢的信息都是保存在此文件申,SQL中没有这些信息。e 设置包厢信息时,包厢管理工具直接
35、写本地的ktv.txt文件,然后把此文件拷贝覆盖其它分发服务器共享目录下ktv.txt文件。修改包厢信息:当进行包厢设置修改时,必须在分发服务器上进行,否则无修改功能入口。修改的信息直接写入本机K TV.txt中,并直接通过目.录共享机制,更新其它分发服务器上的ktv.txt中相关信息。当修改包厢设置时,包厢管理工具直接写本地的ktv.txt文件,然后把此文件拷贝覆盖其它分发服务器共享目录下ktv.txt文件。开关房操作:可以在任意机器上运行,包厢管理程序发包通知分发服务。分发服务不但要更新本机上的K TV.txt,还要通知其它分发服务进行 S更新。TBA分发服务完成的工作:开关房信息更改:包
36、厢管理工具直接发信息通知连接的分发服务,此分发服务直接更新本机ktv.txt中包厢开关房状 c态,然后再通知其它分发服务更改。点播次数信息:分发服务根据机顶盒点播请求,更改本机上的songorder.txt文件,然后再通过servershare共享目 录拷贝到其它服务器。坏歌信息、坏路径信息:分发服务根据V0D服务的通知,更改记录。第22页创新触不同分发服务器上关键信息的同步 由于可能存在多台服务器,每个服务器上都有servershare目录和本地数据库文本 文件。如果这些信息不能同步更新,则系统热迁移之后就会出现包厢状态信息不准、包厢已点歌列表丢歌等问题。所以星云K TV系统中必须有同步机制
37、保证这些信息的 同步 K TV.txt包厢信息的同步 不论是否使用K TV收银管理系统,分发服务都是读取ktv.txt文件,获得包厢设置信息的。所以,不同服务器上的K TV.txt文件内容必须同步更新。同步机制:tP 当修改包厢信息后,K TV.txt中会记录包厢信息的最后修改时间。分发服务启动时,会加载包厢信 息的最后修改时间。每个分发服务会定时把本机ktv.txt中包厢最后更改时间通知其它分发服务。当某个分发服务对比发现其他服务器上的包厢信息设翼时间更晚时,则从那台服务器上通过 servershare共享目录拷贝包厢信息,并重新加载包厢信息。分发服务进行的同步:当机顶盒点歌列表、个人歌库、
38、VIP歌库更改时,分发服务会在更新本机的信息文件后,通知其它分发服务进行更改。当VOD服务发现坏歌、坏硬盘后,会通知所有的分发服务更新本机的信息文件。当个人歌库、VIP歌库变化时,分发服务会先更改本机对应的文件,然后拷贝覆盖到其它 分发服务器上。没有进行同步的信息:ServerShareShareSongOrdersongorder.txt 中的记录的歌曲点播次数信息第23页AC3数据保存方式:通过Windows共享机制将原始的录音数据文件保存在录音服务器上,故无需专用的录音后 台服务软件,只需通过录音配置工具进行相关设置即可。连接方式:机顶盒在接收到用户发出的录音信号后,首先检测其下载的机顶
39、盒配置文件中 是否开启了录音功能,如果开启了录音功能,则查询内存中K TV_RecordServer 文件获得windows系统共享目录的访问帐号及密码,最后利用1 inux操作系统中 提供的smb功能来连接windows共享目录(请注意设置录音服务器时设置的帐号 及密码必须对共享目录具有写权限)服务帐号、密码的保存方式:访问windows共享目录的帐号和密码存放在K TV_RecordServer表中,机顶盒启动时会自动 下载此表http:/www-evideosTB-com第24页创新星云KTV系统录音模块介绍文件保存路径:录音文件的存储路径被存放在K TV_RecordServer表中,
40、机顶盒启动时会自动下载此表t t P录音文件格式及占用的网络带宽:录音时没有对音频数据做任何处理直接保存为wav格式的音频数据,音频数据 的采样率为48K,码率约为1.6M 单张百兆网卡在没有点歌负载的情况下,可以负载30个包厢同时录音。也可以 认为,PCI-E接口的千兆网卡在有VOD负载的情况下,也可以负载30个包厢同时 录音 用户可在网络启动n代管理工具中为每台机顶盒设置通过哪张网卡访问录音服 务器,故每个录音服务器不同网卡之间应该平均分配要负载的包厢数,同理,不同录音服务器之间也应该平均分配设置比较合理WWW-evideosTB 录音并发数不等于K TV包厢数,例如30个包厢的K TV,
41、同时录音的人数有1/4就 相当高了。所以,中小型的K TV可以把歌曲服务器同时作为录音服务器使用,请注意应在网络启动设置中对机顶盒访问录音服务器的网卡进行人工负载均衡4 C3第25页科技创新星云KTV系统录音模块介绍 录音服务器的设置:录音服务器上需要设置网卡ip、用户名、口令等,网络启动中设置每个机顶盒通过哪张 网卡录音线的连接:功放把麦克风中唱歌者的声音、机顶盒Audio out输出的音乐声进行混合处理,然后再通过功放的Audio out接口向外输出,请将功放的Audio out输出口与机 顶盒的录音输入口连接。这样,机顶盒就可以获取到包含人声、歌曲旋律的混 合声音,通过录音服务器共享的目
42、录,以非压缩的Wav形式保存到服务器上。单张百兆网卡在没有点歌负载的情况下,可以负载30个包厢同时录音。也可以 认为,PCI-E接口的千兆网卡在有V0D负载的情况下,也可以负载30个包厢同时 录音http:/wwwevid e OSTB-com新第26页星云KT V系统录音模块介绍常见问题:设置完录音服务器,机顶盒报告没有设置共享目录 这主要是因为7.0的系统采用的是本地数据库的访问机制,机顶盒在获取访问密码及 其它相关信息时,是查询的本地数据库,而本地数据库上又没有相关信息,故导致 机顶盒报告这类错误。可通过在服务器端重新生成本地数据库,并重启机顶盒来解决此错误 也可能是由于共享文件夹及共享
43、目录名都是中文文件名,linux系统无法支持中文共 享目录名,故导致机顶盒报告这类错误 将共享文件夹及共享目录名设置为英文,并重新生成本地数据库,最后重启机顶盒 即可解决此问题http:/www-evideosTB-com第27页创新三:星云KTV主要功能模块工作原理:科技创新合应用STB第28页机顶盒端主要功能的工作原理和流程机顶盒上电至网络启动完成阶段的流程:参见培训教材入门篇中的”机顶盒启动过程”部分。主要是上电BIOS自检、寻找网络启动服务、下载启 动文件、加载运行文件四个阶段。网络启动完成后,机顶盒内将自动运行K TV点歌客户端程序,开始下一阶段。机顶盒加载点歌程序至准备开始播放歌曲
44、阶段的流程:1.K TV客户端程序首先查询网络上有哪些可用的分发服务,获得所有分发服务器网卡的IP列表后,随机排 序生成新的列表。然后连接列表第一个分发服务IP,机顶盒访问分发服务的均衡就是通过这个随机排序 实现的。如果某个分发服务IP无法继续通信或者受到屏蔽通知,则会自动尝试列表中下一个分发服务IP,这就是分发服务热迁移的原理。2.根据要连接的分发服务器IP地址,通过HTTP协议下载此IP上download目录下的歌星包、键码配置表、DByou目录下的文件、ServerShare目录下的文件。3.显示皮肤的缩略图,根据下载的信息在内存中建立本地数据库。4.准备结束后,显示皮肤首界面和走马灯。
45、根据公播歌曲设置,向分发服务发出播放请求。t t P机顶盒歌曲的选歌过程:根据用户操作,机顶盒查询内存中的本地数据库文件,获得用户查询的结果,通过不同的皮肤显示出来。用户操作过程中产生的需要保存数据,直接发给当前连接的分发服务进行保存。机顶盒的接收缓冲池概念 进数据:VOD服务发送过来的数据,直接放入机顶盒的接收缓存区中。出数据:解码芯片直接从机顶盒接收缓存区中取数据,进行解码播放。进出速度的平衡:正常情况下,进的速度出的速度,才能保证播放流畅。否则,接收缓存区欠载,会出现播彼时声音、画高一段时间内莲续停顿。速度不平衡的原因:网络存在带宽瓶颈 服务器负载并发点播超限 通过拔网线的方式可以对比判
46、断是否此原因。拔掉网线后机顶盒内接收缓存区的数据还可以供解码芯片播放几秒。如 果拔掉网线,机顶盒立即停止播放,则很可能是缓存区欠载导致。如果还能播放1-2秒钟,则可能是歌曲问题导致播 放停顿,可以在别的包厢测试一下此歌曲播放。-evideosTB-com第29页创新AC3机顶盒的点播流程机顶盒端主要功能的工作原理和流程VOD版务d e o s T B第30页创新机顶盒端主要功能的工作原理和流程机顶盒原伴唱切换概念 机顶盒通过双路解码机制,可以同时把DVD歌曲的原伴唱音轨进行解 码,切换原伴唱就相当于选择输入哪个音轨解码后的数据,故实现了 零秒原伴唱切换。目前只有7008、8008、双面伊人机顶
47、盒有此功能。没有双路解码机制的机顶盒,还是要解码芯片切换解码另一条音轨,故多音轨歌曲原伴唱切换要慢。VCD歌曲因为只有一条音轨,原伴唱通过切换左右声道实现,也相当 于零秒原伴唱切换。机顶盒的热迁移机制:分发服务的热迁移:当分发服务器通讯中断后,立即根据随机排序的分发服务器列表,切换 到其它分发服务器。VOD服务的热迁移:每次机顶盒请求点播时,分发服务自动会在未屏蔽的VOD服务中,根据负 载均衡选择合适的V OD服务。http:/www-evideosTB-com第31页创新使用星云包厢管理工具开/关房过程示意图t t p星云包厢管理工具1NOI,开关向指令一J分发版务h 八出z-白 包厢信息文
48、件K tv.txt卜No2.更 新包刖状态信息*No4.通知包厢当前状态 No5.通知K它分发服务NO3.多次发包通知机顶盒、包厢管理工具只是发出开关房指令,由分发服务完成相关的工作,最后分发 服务再通知星云包厢管理工具最终的包厢状态。i d e o s T B-com第32页技创新管理收银系统控制包厢状态他甫膏血诙翥素疑转相前美房注彘呆焉函.NOL边彳:开关房动作I-管理收银系统 b 吃呼吧一|分发服务h 包厢信息文件K tv.txt卜1 连接的分发服务 No5,更新包制状态缶息j N04.申请分发服务开关房|-No7,通知其它分发服务N06.多次发包通知机顶盒 进行开关房动作S第一步写数据
49、库成功后才会进行后面的操作。A为了保险,管理收银系统会通知分发服务、机顶盒都进行开关房动作。二者 都进行开关房的动作,确保执行成功。第33页创新使用星云包厢管理时包厢申请开关房使用星云包厢管理工具时包厢申请开关房t t p星云包厢管理工具NO5.定时查询 更新包厢状态-No2.更新包用i状态信息,包厢信息文件K tv.txt一No4.通知其它分发服务N01.申请开关历No3,通知包厢开关房结果I机顶盒其它分发服务星云包厢管理工具是通过定时访问分发服务获得包厢当前状态信息的,不是 直接读取ktv.txt文件。I d e o s T B-com第34页创新使用管理收银系统时通过包厢进行开关房示意图
50、使用管理收银系统时包厢申请开关房星云包厢管理工具No8.定时杳询包珈状态,并更新管理收银系统NO2.进行开关房动作NO1.申请进行开关房动作No4.通知当前 连接的分发服务NO3.通知机顶盒开关房动作分发服务N05.中请强制进行开关房动作No5.更新包厢状态信息,包厢信息文件K tv.txtNo7,通知其它分发服务其它分发服务A第三步后,机顶盒就切换到开关房状态。然后申请分发服务进行强制更新包厢状态。A可同时使用星云包厢管理工具,定时从分发服务获得当前包厢状态。第35页技创新星云KTV系统主要模块关系图ScrvcrSharc目录下 Ik 的木地信息文件M读取或弄史伊牖信息 包相招eJ/命令通知
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100