在显示电视节目及相关文本的方法和装置中使用的数据库的制作方法

文档序号:7586255阅读:202来源:国知局
专利名称:在显示电视节目及相关文本的方法和装置中使用的数据库的制作方法
技术领域
本发明涉及电视领域,更具体地说,涉及通过使用节目时间表系统在电视屏上显示电视节目信息中使用的数据库。
电视节目时间表系统(例如在申请序列号08/475,395中披露的系统)允许使用者通过使用节目指南可视查询电视观看选择。在这些系统中,电视节目信息存储在一个与电视接收机相连的电子存储器中。一个数据库用于组织和存储电子存储器内的电视节目信息。
根据本发明,电视节目时间表数据从电视信号的垂直空白间隔中被接收,被分析和存储在数据库内。该数据库包含一个静态区用于不受频繁改变的信息;以及一个动态区用于经常改变的信息。
在每个区中,信息存储在数据结构中,它使电视节目时间表系统能解释和分析该信息。数据结构被设计成有利于快速查寻和显示节目信息。这些数据结构还被设计成减小电子存储器空间和提高查寻数据的效率。
该系统有利于对数据库排序和为使用者创建各种信息显示的方法。在当前的实施例中,这些查寻、排序和显示包括显示指定时间或频道的时间表信息的节目指南;对一类节目显示时间表信息的主类指南,这些节目类别有电影、体育、儿童表演等;对一子类节目显示时间表信息的子类指南,即在主类“电影”下,其子类可能是戏剧、动作片、喜剧等;记录队列,它有利于安排记录和显示要记录的节目集;用标题而不是时间或台站显示节目信息的标题指南;当使用者希望观看或记录两个冲突的节目时显示关于时间或频道冲突的信息的冲突解决方案;以及查询和显示何时将播放所选定节目的“别的什么时候”特性。
该数据库还包含频道图,它用于把电视频南序列号与提供频道号和台站呼叫字母的数据链接起来。该数据库还包含频道禁止特性,它允许使用者封住对某一频道或某些频道节目信息的显示。
通过使用指定的提供数据频道,该数据库被周期性更新,于是对操作者选定的节目指南,总能得到更新了的电视节目信息。在另一个实施例中,每个频道提供者能独立地更新关于在那个频道上出现的电视节目的时间表数据。
在附图中显示了企图实现本发明的具体的最佳方式实施例,这些附图是

图1是电子存储器图,显示出存储器的静态区和动态区。
图2显示表演信息包数据结构。
图3显示表演信息包数据结构的片段。
图4代表该数据库静态区中包含的预先建立的时间列表数据结构。
图5代表表演信息包数据结构的片段。
图6代表该数据库静态区中包含的频道图数据结构。
图7代表该数据库静态区中包含的控制阵列数据结构。
图8代表该数据库静态区中包含的呼叫字母图数据结构。
图9代表该数据库静态区中包含的记录队列数据结构。
图10是由该数据库接收的下载包的图。
图11是说明由该数据库利用的存储器优先级方案的表。
图12代表由该数据库利用的存储器位图。
图13是一个电视接收机的示意方框图,该电视接收机有一个纳入了本发明原理的电子电视节目指南。
图14是由本发明原理产生的指定时间节目指南。
图15是由本发明原理产生的指定频道节目指南。
图16是由本发明原理产生的标题指南。
图17是由本发明原理产生的按字母查寻标题指南。
图18是由本发明原理产生的节目类别指南。
图19是由该数据库接收的下载包图。
图20是由该数据库存储的包图。
在本发明的下述实施例中,共同的参考数字代表相同的部件。如果所有实施例的特点结合到单个系统中,则这些部件能被共享并完成所描述实施例的所有功能。
图13至15取自序列号为08/475,395的申请。参考图13,电视信号源10,如地上天线或电缆,连到电视调谐器11。调谐器11的输出是含有视频和音频电视信息的调制后的中频信号。调谐器11由中频放大器(IF AMP)12连到图像检测器(PICTURE DET)13和声音检测器(SOUND DET)14,它们分别产生基带视频和音频信号。音频信号由声音放大器(SOUND AMP)耦合到扬声器16。视频信号由视频放大器(未画出)耦合到开关18的一个输入端。声音检测器14和图像检测器13分别连到视频盒带记录器(VCR)17的音频和视频输入端。(另一种作法是,如果要使用VCR 17的内部调谐器和解调电路,则可把电视信号源10直接连到VCR17的RF输入端。)VCR17的输出连到开关18的另一输入端。开关18的输出连到传统的画中画(PIP)集成电路芯片19的一个输入端、PIP芯片19的输出连到有屏幕(未画出)的电视接收机或监视器(TV)20的视频输入端。
对于预定时间段(例如一天或一周)全部可得到频道的节目目录时间表的可更新数据库被电子存储在时间表存储器22中。这些节目目录通常包括每个节目的标题、节目描述、这一周的哪一天、该日的起始时间、节目长度、以及发送该节目从而可在源10接收的频道。在本发明的一个实施例中,节目目录的存储时间周期对各指南是不同的,这取决于观看者确定的优先级和偏好。例如,显示TISPG和CSPG所需要的信息可能被破存储一或两天,而显示TSPG所需要的信息可能被存储一周或更长。该数据库可通过以公知方式向电视接收机广播的一个电视频道的垂直空白间隔(VBI)中的连续数据链路进行更新。另一种作法是,该数据库可通过拔掉存储器22并以具有更新后数据库的存储器替换它。存储器22与微处理器24相连,它被编程以控制所描述装置的操作。微处理器24使用的操作程序存储在只读存储器(ROM)26中。观看者输入装置28(最好是远程IR(红外线)控制器形式的)与微处理器24耦合,以提供来自观看者的命令。视频处理器30与微处理器24耦合。当观看者希望看电视节目目录时,微处理器24从存储器22中调出节目时间表数据库的一部分并将其耦合到视频处理器30,在那里节目目录被格式化以供显示。最好是,在视频处理器30中存储的信息是在电视接收机20屏幕上显示的东西的位图。视频处理器30连到PIP芯片19的另一输入端。最好是,观看者输入装置28通过在电视接收机20屏幕上的游标运动来控制微处理器24。为此目的,微处理器24和视频处理器30都耦合到一个游标位置寄存器32。(另一种作法是,观看者可通过在观看者输入装置28中键入指定给信息条目的代码号来选择在屏幕上显示的信息条目。)微处理器24还与调谐器11耦合以变换频道,与VCR17耦合以回放/记录选择和启/停,与开关18耦合以选择其输入之一,以及与PIP芯片19耦合以选择PIP操作方式。
在图14、15、16、17和18中显示了电子节目指南的若干格式。每个格式有一个背景区40和一个重叠在在屏幕左上角的PIP窗42。实际时间(例如6:15p.m.)显示在PIP窗42的子区42a。背景区42在屏幕顶部有一个标志和消息提示区43,在与PIP窗42相邻的屏幕右上角有节目描述区44,在42和44区下方是节目时间表区46。节目描述区44包括所描述节目的起始时间和长度(持续时间)。观看者可垂直移动游标来点亮区46中显示的节目目录之一。被点亮的游标48背景和节目描述区44的背景有相同的色彩或阴影。在每种格式中,当前实时广播的电视节目完整图像以及当前时间被显示在PIP窗口42,而在PIP窗口42中显示的电视节目的音频部分由监视器20的声音系统回放。在区43、44及46中显示的信息根据格式变化。
在图14中,在区46中显示一个指定时间节目指南,它包含在一指定的未来时间(即8:00p.m.)要广播的节目目录。观看者可以以时间间隔例如半小时来选择要显示的节目目录的时间。对区46中显示的节目目录的选定未来时间(即8:00p.m.)被显示在区43的子区43a中。
由游标48在区46中点亮的节目目录的简要描述被显示在区44中。当前被广播的节目仍显示在PIP窗口42中,以频道名、频道号和频道标题标识当前节目的标志49显示在PIP窗口42和区46之间,其背景的色彩或阴影不同于游标48。
在图15中,在区46中显示一个指定频道节目指南,它包含指定频道上要广播的节目目录。对选定频道(即FOX频道7)的所有节目目录被显示在区46,从当前广播的节目到指定时间段(例如24小时)或直至下一天末尾的未来广播节目。区46有一列是时间,一列是节目标题;区46的每一行代表一个单独的节目目录。在PIP窗口42中显示当前电视节目的动的实时图像。如果游标也点亮前节目,则在区44中显示对当前节目的简要节目描述。如果游标点亮另一节目目录,如图4中所示,则在区44中显示被点亮节目的简要节目描述,而在标志49中由时间和标题标识当前节目。
在图16中,在区46中显示一个标题指南,它包含按标题分类选出的被广播节目目录。在存储器中的所有节目以标题显示在区46中,从字母A开始,直至字母Z,然后是以数字或符号开头的标题。区46有一列是时间,有一列是节目标题;区46的每一行代表单独的节目目录。当前电视节目的动的实时图像显示在PIP窗口42中。如果游标也点亮当前节目,则在区44中显示对当前节目的简要节目描述。如果游标点亮另一节目目录,如图4中所示,则在区44中显示被点亮节目的简要节目描述,而在标志49中由时间和标题标识当前节目。
在图17中,在区46中显示一个标题指南,它包含按节目标题中第一个字母分类选出的被广播节节目目录。在存储器中以使用者选定字母开始的所有节目的标题列在区46中。在这一举例中,使用者选择字母“M”供显示。区46有一列是时间,有一列是节目标题;区46的每一行代表单独的节目目录。当前电视节目的动的实时图像显示在PIP窗口42中。如果游标也点亮当前节目,则在区44中显示当前节目的简要节目描述。如果游标点亮另一节目目录,如图4中所示,则在区44中显示被点亮节目的简要节目描述,而在标志49中由时间和标题标识当前节目。
在图18中,在区46中显示一个节目分类指南,它包含与选定类别对应的节目目录。在存储器中与该类别对应的所有节目的标题列在区46中。区46有一列是时间,有一列是节目标题;区46的每一行代表单独的节目目录。当前电视节目的动的实时图像显示在PIP窗口42中。如果游标也点亮当前节目,则在区44中显示当前节目的简要节目描述。如果游标点亮另一节目目录,如图4中所示,则在区44中显示被点亮节目的简要节目描述,而在标志49中由时间和标题标识当前节目。
背景40中的全部四个区在视频处理器30中被格式化。与PIP窗口42在屏幕上所在区域对应的视频处理器30存储器空间是在空白的;即虽然重叠在背景区40上,但PIP窗口42不会复盖背景区40的任何信息。利用观看者输入装置28的上/下箭头,观看者能垂直移动游标以点亮区46中显示的当前显示电视节目之一的目录。最好是,为减小显示节目时间表的延迟,对特定屏幕格式的所有节目目录都存储在视频处理器30中,即使在同一时刻只显示它们的一部分。当游标达到区46的顶部或底部目录时,微处理器24从视频处理器30中调出另一些节目目录供显示在电视接收机20的屏幕上。
最好是,对节目描述有两级详细程度。就是说,节目描述的第一级详细内容如上述显示在区44中。当需要更详细时,观看者操作输入装置28以显示节目描述的第二级详细内容。对第二级详细内容的显示有两种选择。作为一种选择,第二级详细内容可取代区44中的第一级详细内容。这样做的好处是在显示关于该节目描述的更详细内容的同时,观看者能继续看到节目目录。作为另一种选择,第二级详细内容能取代区46中的节目目录。这样做的好处是可得到比第一级更大的空间去显示第二级详细内容。
在该最佳实施例中,一个电视节目时间表系统(“时间表系统”)含有一个数据库用于存储为创建节目指南和实现使用者请求所需要的全部信息。该数据库存储在可由时间表系统微处理器访问的存储器中。
该数据库含有一个静态区和一个动态区。静态区含有若干固定的表用于存储不受频繁改变的数据,如每个所接收频道的呼叫字母。动态区用于存储被频繁更新的数据,如实际电视节目表数据。把存储器分区成静态区和动态区是为了不同的数据库操作,因为每个存储区(静态或动态)能单独寻址,导致较小的地址长度和较快的查寻。分区还允许有效的存储器管理,因为只有动态区301会需要被切断。
图1描述电视节目时间表数据库。静态区300包含呼叫字母图、预先建立的时间列表、频道图、存储器图以及记录序列。下面将更详细地描述这些结构。动态区301用于存储落入一个七天窗口内的电视节目时间表数据。这些数据采取表演信息包(SIP)的形式。也在下文中更详细地描述这些结构。
在当前的实施例中,该数据库只存储当前日、下一日的SIP,以及含有下一个七天的分类信息的任何SIP。这一有选择存储的方法减小了所需存储器并增大了时间表系统的处理速度。在另一个实施例中,该数据库能扩展成包含其他天的节目时间表数据。当然,存储节目时间表数据的天数将影响所需存储器的大小和时间表系统的处理速度。
在电视时间表数据库中的数据被存储在数据结构中。数据结构使时间表系统能解释其中存储的数据。若干数据结构固定的大小,它们驻留在静态区300。其他数据结构的大小是可变的,它们驻留在动态区301。固定的数据结构包括预先建立的时间列表、频道图、控制阵列、呼叫字母图、存储器图、以及记录队列。可变数据结构包含表演信息包。
表演信息包表演信息包是含有实际电视节目时间表数据的可变长数据结构。每个表演信息包包含对指定频道电视节目的四小时块。表演信息包的大小是可变的,因为在任何四小时块中表演的个数将依赖于每个单独表演的持续时间。例如一个四小时块可能包含8个半小时表演,2个2小时表演,4个1小时表演,一个两小时电影和4个半小时表演,等等。
图2描述一个表演信息包。一个表演信息包含有若干个一般数据字段,它们表示整个包。这些字段是存储器量-用于确定需要多少存储器空间来存储该表演信息包;控制日期-用于确定该SIP包含数据是哪一天的;节目类别-用于指出SIP内部节目的类别,如果存在类别的话;节目标题的第一字母(FLPT)-用于指出该SIP中包含的节目标题第一字母。
在一般数据之后是落入该四小时块中的每个表演的指定数据。对于由块314代表的给定表演,在表演信息包中存在如下字段多重表演标志字段-用于确定这个表演是否是该包中的最后一个表演,或者是否在该四小时块中这个表演之后跟随其他表演;起始时间字段-包含从该四小时块起始时间算起的偏移,这个偏移加到四小时块起始时间上以确定该表演的起始时间;持续时间字段-指定该表演的广接时间;节目类别-含有关于表演类型的信息,例如,该表演可能是一体育事件,一新闻节目,或一部电影;节目子类别-含有关于表演类型的信息,例如该表演可能是戏剧性(子类别)电影(类别);CC字段确定该表演是否被加上了详细字幕;立体声字段-确定该表演是否是以立体声广播;附加字段-这是供扩展的额外字段,这一字段可以包含关于该表演的其他信息(即该表演的分级),当那个信息在技术上成为标准时使用。在另一实施例中对每个表演可包括多种其他信息。
在这些字段之后是代表节目标题的字段,主描述-该节目的短描述,次级描述-该节目的更长描述以及VCR+PLUSCODE(VCR+附加代码)。这些条目中每个由两个单独字段代表,一个含有指定条目的长度,如标题长度,另一个含有该条目本身,如标题。长度字段用于确定后面有多少个字节构成该数据条目。例如,如果次级描述字段是40字节,则时间表系统将知道下面的40个字节包含次级描述。
在这些信息之后是表演结束字段。表演结束字段用于指出那个特定表演的信息到此结束。表演信息包可以含有一个或多个表演的信息,取决于在该四小时块中广播多少个表演。由315和316代表存在多个表演。
表演信息包的结构提供了存储数据的若干独特特性。标题长度、主描述长度、次级描述长度、以及VCR+PLUSCODE长度这些字段在其值太大不能放在一个字节中时可以扩展。例如,参考图3,如果次级描述长度大于255(在一个字节中能存储的最大长度值),该长度字节设为255(最大值)。把长度字节设为最大值表明后一个字节也是长度字节,而且这两个字节应该加起来以确定次级描述的长度。以这种方式,表演信息包可用于动态地分配空间以适应于更长的描述或更长的标题。
表演结束字段允许用于把这样一些数据包括在表演信息包中,这些数据不被时间表系统的当前版本读出但可能被以后的版本利用。又如图2所示,在VCR+PLUSCODE字段之后,有两个无指定数据的字段。这是可能由时间表系统未来版本读出但当前未处理的数据。当处理表演信息包时,时间表系统将放弃这一数据直至它读出一个表演结束字段为止。在发现一个表演结束字段之前,时间表系统将不会开始处理一个新表演的数据。这一特性允许一个时间表系统访问一个不同时间表系统的同样数据,那个不同的时间表系统可能包含标题、描述等以外的其他信息。
预先建立的时间列表预先建立的时间列表用于对时间表系统中的每个频道确定电视节目信息的位置。电视节目时间表信息是通过使用指针定位的,它包含存储器中存储的表演信息包的地址。每个指针指向含有时间表数据四小时块的一个表演信息包。预先建立的时间列表对每个信道包含42个指针,所以能访问7天节目时间表数据。在另一些实施例中存储多于7天的时间表数据,因此预先建立的时间列表中应包含相应更多的指针数。
图4显示该预先建立的时间列表。该预先建立的时间列表是一个时间和频道网络。在静态区300中的一个指定位置被赋予每个广播时间和频道。具体地说,广播时间四小时块由基字母A-AO指定,广播频道由脚标1-N指定-它们包含时间表系统中每个频道的42个指针的集合313。每个指针对应于一个表演信息包,其中含有电视节目四小时块的数据。例如,在图4中,指针E1对应于在1频道上从午后4点到午后8点的节目数据。12个指针代表48小时节目信息(24小时为当前日,24小时为下一日)。
参考图4,A2到AO2用于代表与时间表系统中第二频道相关联的节目数据。每个指针含有一个地址,它是含有实际电视节目数据的可变长表演信息包在动态区301中的地址。当查寻指定的电视时间表数据时,时间表系统首先查看该预先建立的时间列表以获得适当的指针,然后那个指针中发现的地址去确定数据存储的地方。例如,如果需要时间表系统中第二频道午后8点至午后12点之间电视节目数据,则时间表系统将使用指针F2中的地址来确定含有相应数据的表演信息包在动态区301中的位置。
总之,给定电视节目的表演信息包的地址存储在静态区300中赋予那个节目的广播时间和广播频道的一个位置,例如在午后8点至午后12点之间在第二频道上要广播的节目的演出信息包地址被存储在位置F2。
频道图该数据库还含有一个频道图,位于静态区300中。在图6中描述的频道图把电视节目提供者频道号与内部频道号链接起来。例如,在图6中,频道7被赋予内部频道1,而频道11被赋予内部频道3。频道图用于建立节目指南显示时标识提供者频道号。
控制阵列该数据库还包含一个固定的控制阵列,位于静态区300中。控制阵列由时间表系统用于标识已被使用者禁止显示的频道。该控制阵列示于图7。对每一频道,如果该频道要被显示,则显示字段320被置“1”,如果该频道要禁止,则显示字段320被置“0”。参考图7,频道1、2、4、5将在节目指南中被显示,而频道3将被禁止。
对每个频道还有一个字段用于额外的“附加”信息。这个字段允许在时间表系统的未来版本中增加由用户控制的其他功能,例如指定的禁止显示一频道的时间段。
呼叫字母图该数据库还含有一个呼叫字母图,位于静态区300。呼叫字母图把与一电视提供者对应的呼叫字母与该内部指南频道链接起来。例如,在图8中,呼叫字母KABC被链接于内部频道1,而字母WWOR被链接于内部频道2。呼叫字母图用于标识提供者频道呼叫字母供在节目指南中显示。
记录队列在记录队列中存储记录未来节目的使用者请求。记录队列是有12个条目的固定长度表,位于静态区300中。记录排列显示在图9中。
队列中的每个条目包含将播出该表演的频道和表演起始时间。该记录排列的结构是使节目按时间序列的顺序排列。就是说,在列表中的第一个条目将广播得比任何其他条目要早,如此类推。这一结构消除了为找出要记录的下一个节目必须查询记录队列的必要性。
数据传送电视时间表数据连续地从数据提供者频道的垂直空白间隔(VBI)传送到该数据库。为了接收时间表数据,电视机必须调谐到该数据提供者频道。例如,如果数据提供者频道是频道7,则在能接收时间表数据之前该电视机必须调谐到频道7。时间表系统试图每天4次从提供者频道接收数据。
因为当时间表系统试图下载数据时使用者可能正在看另一频道,在一次下载的努力中要试4次以保证该数据库接收完全的数据集。这4次下载尝试在24小时中每间隔6小时一次,以提供在这些尝试中的一次过程中有高概率一使用者将不会使电视机调谐到另一频道。例如,下载尝试可在午夜12点、上午6点、中午12点和下午6点发生。不大可能某人在这4个时间都在看电视。
在另一实施例中,可对每个频道单个地进行时间表数据更新。每个频道提供者能在那个频道的VBI信号中提供时间表更新。当使用者选择一个供显示的频道时,时间表系统能质询该频道上的VBI并接收时间表更新。
在该日的第一次下载之前,整个动态区301被擦掉。这一完全擦掉保证已经广播过的表演的全部数据从时间表系统中去掉。所有电视节目数据都是在下载包中发送和接收。下载包包含时间表信息以及一个头段,在头段中含有路径数据,使时间表系统能确定如何存储该包的内容。
图10显示一个下载包。该包以一个含有包ID号302的头段开始,该ID号用于将该包区别于其他包、包头段还包含字节数303和块数304。这些值用于确定包的大小。
包头段后跟表演信息包(SIP)头段。在该包中每个表演信息包有一个表演信息包头段。SIP头段含有指南号305,它指定该信息包中数据的内部频道号;频道ID306,它指定该表演信息包中数据的来源;以及时间片307,用于指定该表演信息包中数据的目的时间。在SIP头段之后是表演信息包308。
一个表演信息包308一收到便被从下载包中提取出来并暂存在存储器中。该表演信息包中含有一个控制日期字段用于确定这些数据是哪天哪时的,一个指南频道字段指定这些数据的内部频道号,以及一个节目类别用于指定在该包内包括哪些节目类别。
在存储一个新的表演信息包之前要进行检验以确定在该表演信息包中的内部频道号是否对应于一个能供显示的频道。如果该SIP是在17日系统窗口之外,或者对于一个未使能显示的频道,则该包被放弃。
在存储一个新的表演信息包之前要进行检验以确定该SIP是否超出了2日全部节目目录窗口和含有对应于预定类别的节目。如果是,则在存储之前该SIP被重写,以只包括对应于预定类别的那些节目。这一步骤示于图19和图20。所有不匹配的节目类别被抛弃。如果该表演信息包处在当前2日窗口之外而且不包含节目类别信息,则该表演信息包被抛弃。
所有其他SIP必须落入2日全部节目目录窗口并按如下方式存储SIP写入存储器位置301。在预先确定的时间列表数据结构中的指针被更新以指出相应的SIP存储在何处。
时间表系统含有一个存储器优先级化方案用于有效地使用可得到的存储器空间。该方案示于图11中。该优先级化方案的关键是选定供显示的频道个数。如果操作者已选择29个或少于29个频道供显示,则落入2日窗口的所有节目的标题、第一级描述和第二级描述都被存储。
如果使用者已选择30个以上频道供显示,但少于39个频道,则将在当天广播的所有演出将被存储,包括标题、第一级和第二级描述。然而对于第二天广播的所有表演将只存储标题和第一级描述。节目类别表演将只存储它们的标题。如果操作者已选择超过40个频道供显示,则只存储标题。
存储器管理该数据库包括一个存储器位图,以便追踪动态区301中当前保持节目数据的部分,这些部分不同于节目时间表存储器的那些用于存储新节目数据的自由空间部分。存储器位图把存储器分成32字节的块。每块由存储器位图中的一位表示。
存储器位图示于图12。在图310中的每一位代表存储器中的一个32字节块。在位位置311的“1”表示在那个块中存储了节目数据。在位置312的“0”表示那块是自由空间。当要存储新数据时,可通过存储器位图进行查寻,以定位足够数量的自由空间位置供存储数据。当确定位置后,数据被存储,并且在存储器位图中有相应数量的“0”变成“1”以指出那些存储器位置被占用。
例如,参考图12,如果接收的数据需要10个存储块,则时间表系统将扫描存储器位图并把数据存储在由行3中的位0-7及行4中的位0-1代表的空间中。然后在存储器位图中的这些位将置为1。
时间表系统还能周期性地对存储器重新排序,从而使自由空间能连续地组合在一起。例如,参考图12,在由行0中位2代表的块中开始而在由行1中的位1代表的块中结束的数据将要滑过由行0中位3代表的块。这将去掉行0中的“0”间隙。通过存储器图重复这一过程将使所有自由空间组合到存储器的末尾。
如前所述,在动态区301中的全部信息将每日清除一次。这一过程保证了数据库不含有老过1日的数据。时间表系统还能切断数据以去掉关于已经广播过的表演的数据。通过查寻动态区301中的表演目录,以识别出起始时间发生于当前时间的表演,从而完成这一切断。关于这些识别出的表演的数据被从数据库中去掉,一个收集垃圾例行程序通过改变存储器位图中的适当位将获得含有这些老演出的存储器。
时间表系统还可以去掉关于已被取消的频道的数据。例如,如果操作者使一频道不能显示,则时间表系统能删除关于那个频道的任何节目时间表数据。然后收集垃圾例行程序将获得由被删除频道的表演所展现的存储器空间。如果操作者要再次选择那频道供显示,则在下一个更新周期之前该时间表系统没有关于那个频道的数据。
数据库处理除了使用公共检索和语法分析函数进行传统的数据库处理外,时间表系统还通过使用放在SIP包头段中的索引位得到对某些查寻类型的更快查寻。在本实施例中,存在资格认证位字段用于节目类型(2字节)、节目子类型(2字节)及节目标题中的第一字母(26位-每个字段一位),如图2中所示。例如,图5显示一个SIP包的头段,该SIP包包含节目类别“MOVIE(电影)”、子类别“ACT10N(动作片)”,标题为“ZORRO(佐罗)”。对于这个SIP,映射到节目类别字段内的“MOVIE”500的位被置为“1”,映射到节目子类别字段内的“ACTION”501的位被置成“1”,以及映射到FLPT内的“Z”的位被置成“1”。
对于含有多个节目的SIP,使用“OR(或)”函数对SIP中所有节目适当设置多个位。例如,如果一个SIP含有3个节目,即ZORRO、Magnum PI以及Monty Python,则节目第一字母位对“Z”和“M”为“1”,对所有其他位设为“0”。
当进行涉及一个位字段的查寻时,时间表系统首先验证SIP头段中的相应位是否与查寻判据匹配。如果满足判据,则该系统分析来自SIP的数据,如果不满足判据,则该系统整个跳过那个SIP。这一方法通过限制要分析的SIP个数而减少了查寻时间。
通过以下各例说明数据库与电视节目时间表系统之间的相互作用。
1.使用者请求一个指定时间节目指南(TISPG),当前时间是午后7点。
当使用者请求一个TISPG以得到关于当前正在广播的电视表演的信息时,该系统首先从一个微处理器时钟中读出当前时间(午后7点)。然后时间表系统确定与图4所示预先建立的时间列表中当前时间相对应的指针。因为当前时间是午后7点,时间表系统将查看对每个频道的第五指针(这个指针对应于午后4点至午后8点),这些频道是频道1-E1,频道2-E2,频道3-E3,…,频道N-EN。
对于每个指针,时间表系统访问相应的表演信息包,见图2。时间表系统把四小时块的起始时间(午后4点)加到表演信息包中每个表演的时间偏移上,以确定当前在那个频道上正在广播的表演。然后从表演信息包中检索出关于该表演的信息。检索出的信息包括标题、主描述、次级描述、以及VCR+PLUSCODE。
还使用内部频道号对频道图编索引,见图6。具体地说,使用频道号选择指南中供显示的指定源频道ID频道1-7,频道2-6,频道3-11,…,频道n-172。内部频道号还用于对呼叫字母图编索引,见图7。具体地说,使用频道号拉出台站标识呼叫字母供指南中显示频道1-KABC,频道2-WWOR,…,频道3-KTVR。所有来自表演信息包的信息、频道图和呼叫字母图都用于创建格式化的文本行,供指南中显示。
2.使用者请求一个指定频道节目指南(CSPG),当前观看的频道是频道6,当前时间是午后3点。
当使用者请求一个CSPG以得到关于在指定频道上(例如频道6)在指定时间(例如午后3点)正在广播或将要广播的电视表演的信息时,时间表系统通过质询一系统变量确定与被显示频道对应的频道号。对于这个例子,频道是频道2。然后,时间表系统从微处理器钟读出当前时间(午后3点)。时间表系统确定在预先建立的时间列表(见图4)中对选定内部频道与当前时间对应的指针。因为当前时间是午后3点,而且选定的内部频道是频道1,所以时间表系统将在第二组指针中寻找第4指针(这个指针对应于从中午12点到下午4点)。这个指针是D2(见图4)。
然后,时间表系统对指针D2访问相应的表演信息包(见图2)。时间表系统把四小时块起始时间(中午12点)加到表演信息包中每个表演的时间偏移上,以确定当前在广播的表演。然后,从表演信息包中检索出该表演的信息。检索出的信息包括标题、主描述、次级描述、以及VCR+PLUSCODE。时间表系统检索表演信息包中由D2指向的在选定表演之后发生的所有表演的数据。然后检索表演信息包中由指针E2-L2指向的所有表演的信息。
内部频道号还用于对频道图编索引,见图6。具体地说,内部频道号用于拉出指定源频道ID频道6供指南中显示。内部频道号还用于对呼叫字母图编索引,见图7。具体地说,内部频道号用于拉出台站标识呼叫字母WWOR供指南中显示。所有来自表演信息包的信息、频道图和呼叫字母图都用于创建格式化的文本行,供指南中显示。
3.使用者请求一个节目分类指南(PCG),选定的类别是“MOVIE(电影)”,当前时间是上午10:30。
当使用者请求一个PCG以得到关于正在广播或将要广播的指定类别内的电视表演的信息时,时间表系统首先从微处理器时钟读出当前时间(上午10:30)。然后时间表系统确定在预先建立的时间列表(见图4)中与当前时间对应的那些指南。因为当前时间是上午10:30,时间表系统将寻找每个频道的第3指针(这个指针对应于上午8点至中午12点的数据)频道1-C1,频道2-C2,频道3-C3,…,频道N-CN。
对于每个指针,时间表系统访问相应的表演信息包,见图3。时间表系统核查每个SIP头段中的类别位以确定在该SIP中是否包含一个类别(电影)。如果在该SIP中包含一个“电影”,则时间表系统把四小时块起始时间(上午8点)加到该表演信息包中每个表演的时间偏移上以确定在那个频道上当前正在广播的表演。如果当前的表演是“电影”,则从该表演信息包中检索出关于该表演的信息。检索出的信息包括标题、主描述、次级描述和VCR+PLUSCODE。
然后时间表系统把当前时间增加5分钟(10:35)并对该SIP包重复上述过程。时钟再增加5分钟并重复这一过程,直至时钟处在该四小时块的末尾,即中午12点。然后时间表系统以类似方式访问所有其余的指针D1-DN,E1-EN,…,AO1-AON,并对含有类别“电影”的所有表演提取相关信息。
4.操作者请求所有以字母“Z”开头的节目标题的标题指南(TG),当前时间是上午10:30。
当使用者请求一个TG以得到关于正在广播或将要广播的以指定字母开头的电视表演的信息时,时间表系统首先从微处理器时钟读出当前时间(上午10:30)。然后时间表系统确定在预先建立的时间列表(见图4)中与当前时间对应的那些指针。因为当前时间是上午10:30,时间表系统将寻找每个频道的第3指针(这个指针对应于上午8点至中午12点的数据)频道1-C1,频道2-C2,频道3-C3,…,频道N-CN。
对于每个指针,时间表系统访问相应的表演信息包,见图2。时间表系统核查每个SIP头段中与节目标题第一字母(FLPT)相对应的位,以确定是否存在匹配。如果一个表演含有“Z”,则时间表系统把四小时块起始时间(上午8点)加到该表演信息包中每个表演的时间偏移上以确定在那个频道上当前正在广播的表演。如果当前的表演以“Z”开头,则从该表演信息包中检索出关于该表演的信息。检索出的信息包括标题、主描述、次级描述和VCR+PLUSCODE。
然后时间表系统把当前时间增加5分钟(10:35)并对该SIP包重复上述过程。时钟再增加5分钟并重复这一过程,直至时钟处在该四小时块的末尾,即中午12点。然后时间表系统以类似方式访问所有其余的指针D1-DN,E1-EN,…,AO1-AON,并对含有类别“电影”的所有表演提取相关信息(*)。
5.使用者请求一选定节目ZOPRO“还存在何时”(WE)显示(即还在何时广播ZORRO?),当前时间是上午10:30。
当使用者请求一个WE以得到关于一选定电视表演的信息时,时间表系统首先从微处理器时钟读出当前时间(上午10:30)。然后时间表系统确定在预先建立的时间列表(见图4)中与当前时间对应的那些指针。因为当前时间上午10:30,时间表系统将寻找每个频道的第3指针(这个指针对应于上午8点至中午12点的数据)频道1-C1,频道2-C2,频道3-C3,…,频道N-CN。
对于每个指针,时间表系统访问相应的表演信息包,见图2。时间表系统将来自选定节目的FLPT位与该SIP头段的FLPT位进行比较以确定是否存在匹配。如果存在匹配,则时间表系统从SIP中读出数据并将该表演标题与选定表演进行比较。
时钟增加5分钟并重复该过程,直至时钟处在该四小时块的末尾,即中午12点。然后时间表系统以类似方式访问所有其余的指针D1-DN,E1-EN,…,AO1-AON,并显示所有的匹配,包括该表演的频道号和广播的日子及时间。
禁止频道控制阵列(图7)提供封住供显示的频道的能力。封住一个频道可禁止该频道在一时间表系统上显示,所以该频道将不是TISPG、CSPG或CG的组成部分。
当使用者选定一个不要显示的频道时,在控制阵列中的显示标志被置“0”。每当时间表系统的使用者请求一个节目指南显示时,该时间表系统首先核查控制阵列然后再进行对预先建立的时间列表的处理。如果对一指定频道该控制阵列被置“0”则对那个频道不进行任何其他处理,而时间表系统继续下一个频道。如果在其后的处理中使用者要再选择那个频道供显示,则时间表系统在下一次创建一个节目指南时使这一改变生效。
控制阵列还可用于禁止存储选定频道的数据。例如,一个电视节目时间表系统将在存储指定频道的数据之前核查该控制阵列。如果该控制阵列对一指定频道含有“0”则将不存储与该频道对应的数据。请注意,一频道可以如前述那样被禁止显示,但不一定封住数据存储。
记录当使用者选择一节目供记录时,时间表系统把选定节目的频道号及节目的起始时间存入记录队列,见图9。节目起始时间是把表演信息包中包含的偏移加到相应的四小时块起始时间上计算出来的。
每当增加一个新条目时,记录队列便按时间顺序队列。这一排序有利于周期性地登记队列中第一个表演的起始时间以确定下一个要执行的记录命令。队列的地址可被容易地访问,因为它存储在静态区300。在一个表演被记录之后,队列中的下一个表演移到队列的开始位置。
权利要求
1.一种显示电视节目信息的方法,包括如下步骤在电子存储器中存储电子节目指南信息,包括每个电视节目的标题、起始时间以及区域频道名;在电子存储器中存储一频道图,它把频道名与本机频道号链接;选择一特定的屏上指南供显示;从电子存储器中检索被请求的电子节目指南(EPG)信息,以显示选定的屏上指南,包括标题、起始时间、以及区域频道名;从电子存储器中检索出本机频道号,它与从电子存储器中检索出的每个区域频道名链接;作为选定的屏上指南,显示检索出的标题、起始时间、区域频道名、以及本机频道号。
2.权利要求1的方法,还包括在该区域广播的广播信号的VBI中传送EPG信息的步骤,存储EPG信息的步骤包含从VBI中下载所发送的广播信号EPG信息。
3.权利要求2的方法,还包括在广播信号的VBI中发送多个地理区域的频道图的步骤,把频道名与本机频道号链接起来的频道图的存储步骤包含从VBI下载频道图,它可应用于我们完成的显示步骤。
全文摘要
由所发明的数据结构构成的数据库包含静态区(300)和动态区(301),该数据库与电视节目时间表系统一起使用,以利于创建电子节目指南。该数据库以电视节目时间表信息周期性地更新并由一时间表系统查询以创建节目指南。
文档编号H04N7/16GK1314046SQ99808748
公开日2001年9月19日 申请日期1999年6月9日 优先权日1998年6月9日
发明者亨利·C·于恩, 罗伊·J·曼克维兹, 丹尼尔·S·夸, 埃尔西·Y·列昂, 彼得·克里斯托佛·斯考夫 申请人:英戴克系统公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1