用于同步多模态内容呈现器中的视、听演示的方法和系统的制作方法

文档序号:71357阅读:311来源:国知局
专利名称:用于同步多模态内容呈现器中的视、听演示的方法和系统的制作方法
技术领域
本发明一般涉及多模态视-听内容呈现器(renderer),更特别地,涉及以同步方式同时可视和可听地呈现内容的多模态内容呈现器。
背景技术
在目前的技术中,内容呈现器(例如Web浏览器)并不能直接同步地进行相关资料的可听和可视演示,而且,在多数情况下,它们是互相排斥的。在标准浏览器(如Netscape或Internet Explorer)以超文本标记语言(HTML)编码的内容的演示主要是可视的。整个演示进展的速率和方法是在用户的控制之下。用户可以从头到尾阅读全部内容,如果呈现内容是可滚动的话,依需要(即,当可视内容超出演示窗口的边界时)进行滚动。用户也可以对内容进行采样或扫描,并且例如仅读取开始和结尾的内容。基本上,适合阅读书籍、报纸或其他印刷资料的所有策略对于标准浏览器的用户都是适用的。
可听内容的演示则表现为更为线性化。一般口语交谈的内容的进展是从开始、经过中间、再到结尾;用户对这种进展过程没有直接的控制。虽然这一问题可以在记录媒体上通过加入索引和快速检索在一定程度上加以克服,但是这很难达到印刷材料所具有的可随机访问这样的方便程度。通常,语音控制的浏览器涉及浏览器语音控制的输入或在可听输出期间可听地分辨HTML链接的各种方法。现有技术中已知的各种浏览器并未涉及可听成分与可视成分之间的总体同步问题。
在有些情况下人们可能对同时接收某主题的同步化的可听和可视演示感兴趣。例如,在一部汽车内,司机和/或乘客可能会与某一设备进行交互。在驾驶中,显然司机不能阅读屏幕或监视器上显示的可视信息。但是,司机可以选择他或她想要浏览器可听地给出哪些信息。可是,在可听部分被大声地读出时,乘客则可能想要跟着阅读屏幕。
同样,考虑一下一个文盲或半文盲成年人的情形。他或她可以跟着浏览器正在阅读的文本,利用它学习如何读或认识新字。这种浏览器也可以通过提供成年人内容来协助成年人学习阅读,而不是提供旨在儿童学习阅读的内容。最后,一个要与浏览器交互的视力上有缺陷的人,尽管他或她也许不能阅读浏览器,但他/她却能“看见”和找到加重的文本。
同时在可听和可视模式之间进行内容展示方面存在几种挑战性的问题。主要的一个问题是同步两种演示。例如,一长段的内容可能可视地呈现在多页上。
还有一个复杂之处在于可视演示和可听演示可能不是一一映射的。有些应用可能需要仅可视地呈现某些内容,而不必读出。某些应用则需要读出内容,而不需要可视呈现。在有些情况下介于二者之间。例如,一种应用可能需要读出一个人的全名,而以可视方式显示他的昵称。
授与Dvorak的、题标为“Audio Interface for Document Based onInformat ion Resource Navigation and Method Therefor(用于基于信息资源导航文件的音频接口及其方法)”的美国第5,884,266号专利,实现了利用可听的独特声音,或者利用例如不同的发音等语音特征,向用户提供标记链接的概念,使得用户能够从非链接标记中区分出来这些链接。
授与Brown等人的、标题为“System and Method for VoiceControlled Video Screen Display(用于语音控制的视频屏幕显示系统和方法)”的美国第5,890,123号专利,与在呈现内容时用于控制浏览器的语音指令有关。该专利主要着眼于在显示内容时对内容进行摘要处理,并利用其增加可能的语音交互。
授与Raman的、标题为“Multimodal Information PresentationSystem(多模态信息演示系统)”的美国第5,748,186号专利,与信息获取、以一种公共中间表示建模、并为该数据提供多路或多视图显示的技术有关。但是,Raman的专利并没有公开如何完成同步。

发明内容
因此,本发明的一个目的在于提供一种多模态呈现器,该多模态呈现器以同步的方式,同时可视和可听地呈现内容。
本发明的另一目的在于提供一种多模态呈现器,该多模态呈现器可以将利用一种基于标记标志集的可扩展标记语言(XML)编码的内容可听地读给用户。
本发明提供一种以同步的方式,同时可视和可听地呈现内容的系统和方法。本发明以可视方式和可听方式向用户呈现文档。理想的内容呈现器应能做到,当用户正在聆听到一部分内容时,该部分内容被可视地呈现在屏幕上,而且,正在可听地呈现的特定的可视内容(例如单词或词组)被可视地加重。此外,本发明还涉及多模态输入(触觉式输入或语音输入)。通过使呈现器处理内嵌式浏览器标记语言(EBML)代码,使得应用或服务器对于某人成为以可听方式而不是以可视方式来访问的,使得可将其可听地读给用户。EBML语句也可以如此组合,使得可听地读给用户的内容与可视文本相关联但不相同。本发明通过标记语言变化而不是应用程序代码变化,解决变化内容的可听与可视演示的同步问题。
EBML标记语言是超文本标记语言(HTML)的子集,是一种众所周知的、主要用在与因特网的万维网(WWW)部分相关方面的标记集合。EBML还集成了不同的标记集中的几种标记,例如Java语音标记语言(Java SpeechMarkup Language)(JSML)。JSML包含控制可听呈现的标记。本发明的标记语言提供了用于同步和协调一个网页的可视和可听成分的标志。例如,出现在<SILENT>和</SILENT>标记之间的文本,将出现在屏幕上,但不是可听地呈现的。出现在<INVISIBLE>和</INVISIBLE>标记之间的文本,将被“说”出来而不可见。改编于JSML的<SAYAS>标记,使得不同于可视呈现内容的文本(或者记录的音频部分例如WAV文件、微软视窗(Microsoft Windows)操作系统中使用的本机数字音频格式)被“说”出来(或播放出来)。
用于同步多模态浏览器中的可听和可视演示方法包括以下步骤通过计算机网络接收文档,对文档中的文本进行语法分析,提供与该文本相关的可听成份,同时地传输并输出该文本和可听成份。
本发明的一个较佳实施例提供了一种方法和系统,当用户听到内容的某部分时,该部分在屏幕上是可视的,并且这些被可听地呈现的特定的可视内容(例如,单词或词组)、被以某种方式可视地加重。这意味着随着可听演示过程自动滚动,逐词加重。
附图简述从以下结合附图对本发明最佳实施例的详细描述中,可以更好地理解本发明上述及其他目的、方面和优点。

图1是表示本发明方法的逻辑流程图;图2是带有可触摸成份的呈现页面的一个例子;图3是可以实现本发明的一个系统的框图;图4A是一个模型树的实例示意图;图4B是总体代表一个模型树和可听及可视视图之间关系的示意图;图5表示在视图建立过程中产生的语法分析树的一个实例;图6示出一个视图/模型相互关系的实例;以及图7示出在抛弃不必要节点后,经调整的视图/模型相互关系的一个实例。
本发明的优选实施方式现在参照附图,更具体地,参照图1,其中示出了表示本发明方法的逻辑流程图。在功能框100,经过一个计算机网络输入或接收一个文档。在功能框102,对该文档进行语法分析,将文本与EBML标记分离开来。在功能框104,将经语法分析的文档传送到EBML呈现器。然后在判断框106进行测试,判断是否存在更多的需呈现的文档。如果为“否”,过程在步骤108终止;如果判断为“是”,在判断框112作出测试判断是否文字上读出子文档中的文本。如果为“否”,在功能框114显示可视成分,并读出不与该可视成分文字上相对应的可听部分;如果在判断框112作出的判断为该文本应当按文字读出,则在功能框116显示可视成分,并且读出与该可视成分文字上相对应的可听成分。当功能框114和116的操作都完成之后,处理过程回到判断框106,直到没有更多的呈现操作为止。
图2是带有可触摸成分的呈现页面的一个例子。用户可以在该页面上的文本被大声地读出的同时可视地阅读该文本。在将每个词可听地读给用户时,将屏幕上被读出的词加重,这使得其能够更快和更容易地识别和触摸刚刚读出的(或者几乎是刚刚读出的)内容。另外,显示的按钮202和204,分别使得读者容易地前进到下一屏或返回到前一屏。通过正确地生成它的EBML,该应用程序能够按顺序阅读所有文章,但是如果,例如,按动屏幕上的按钮202,则跳过当前文章。一个机动车驾驶员,例如,因而能够集中视线在路上,耳听文章的题目/标题,并且如果对该文章不感兴趣的话,可以迅速地在触摸屏上找到前进按钮202。在一个优选实施例中,浏览器例如通过说出“按前进按钮跳过本文至下一屏”,可听地提示用户前进到下一屏。另外,可以将该按钮做得相对于屏幕的其他部分是突出的,比如通过闪烁和/或采用某种彩色使其能够被立即分辨出来。这种使用户能够容易地按动按钮202跳过当前文章或按动按钮204返回到前一篇文章的方便性,相当于使用户能够容易地调谐收音机或选择其他无线电频道。
图3是可以实现本发明的一个系统的方框图。EBML浏览器300从网络100接收嵌入了EBML的内容。浏览器300将该内容传送到EBML语法分析器302,后者对收到的内容的EBML语言进行语法分析。语法分析器302然后将要呈现的内容送到可听-可视同步器304,后者同步原始EBML的每一可听-可视部分的输出。显示模块306和文本-语音(TTS)模块308都接收来自可听-可视同步器304的输出。TTS模块308准备将要被读的EBML页面的可听部分,而显示模块306显示该可视部分,使得其与来自TTS模块308的可听部分同步。
在本发明的一个最佳实施例中,在进行EBML语法分析和完成能够执行同步呈现可视和可听内容的过程中,有三个阶段a)建立模型;b)构建模型的视图;以及,c)呈现。
现在转到本发明的模型构建阶段。在该阶段同步可听和可视成分;当语法分析器302对标记语言进行语法分析时,建立起包含用于标记语言中每一标记的模型单元的模型树。在该模型树中,用于嵌套标记的各单元出现在它们父代单元之下。例如<EBML> (1)<BODY> (2)<SAYAS SUB=“该文本被“说”出.”> (3)<P>该文本是可视的.</P> (4)</SAYAS> (5)</BODY> (6)</EBML> (7)以上代码将得到如图4A所示的模型树。特别地,P单元456(用于段落的)出现在SAYAS单元454之下。SAYAS单元454依次出现在BODY单元452之下。最后,BODY单元452是EBML单元450的一个子单元。文本本身(例如“该文本是可视的”)则被包含在该树底部的一个特定文本单元458中。
现在转到本发明构建视图的步骤上来。如图4B所示,一旦根据提供的源代码建立模型树424,就对其进行遍历以生成该模型的分离的可听视图402和可视视图416。可听视图402包括一个可听单元(404、406、408、410、412和414)队列,它们是用于表示例如由文本-语音发声引擎或由某种媒体播放器“说”出的项目,或者表示一些可以控制可听流的项目(例如可听队列中的分支、暂停,等等)的对象。可视视图416包括可由一些视窗系统440使用的内容的表示,用于可视地呈现这些成分(418、420、422)。
随着对模型树424中各单元(426、434、428、430、432、440、442、438、436)进行遍历,得到指令建立其可视视图416和可听视图402。标记在模型树424中出现的位置不同,在一给定标记内的文本的可视或可听呈现也不同。一般地,各单元在模型树424中从它们的父代单元中获得其可视和可听属性。模型树424的遍历保证了父代单元先于它们的子单元得到处理,也保证了例如任何嵌套于一个<SILENT>标记内的单元(不论其嵌套有多深),得到一个无声属性。遍历是本领域技术人员已广泛知晓的技术,在此没有必要作过多的解释。
然后当前的单元修改属性,以反映其自己的行为,从而使树中位于它以下的节点变得有效。例如,Silent单元将可听属性设置为“否”。树中在<SILENT>节点以下的各节点(亦即,它们被包括在<SILENT>EBML结构以内),都采取与由它们的祖先建立起来的属性一致的可听属性。一个单元也可以改变视图。例如,在一个最佳实施例中,由于将要被说出的不是包含的文本内容而是其他别的,所以一个Sayas单元,象Silent单元一样,将把可听属性设置为“否”。但是相应地,它将在可听视图402上加入一个或多个对象,以便说出包含在标记属性内的替代内容(SUB=“说出这个文本”)最后,处理包含的标记和文本(即,子单元)。在树424中的一个节点,对于位于其以下的任何节点来说,都被认为是父代的。所以,例如,模型树424的节点434和436是节点426的子节点,节点426是节点434和436的父代节点。除了负责生成可听输出单元(图4B中404、406、408、410、412和414)的节点之外,它们也生成可视演示(图4B中418、420和422)。
对于包含的标记单元(例如434和436),它们简单地被要求建立它们自己的视图(即,继续进行树的遍历)。对于包含的文本单元,根据累积的所有属性来处理该文本。于是,例如,如果属性指示出是可听但不是可视内容时,修改可听视图402,但不将任何内容加到可视视图416中。在最佳实施例中,大多数关于如何处理文本的信息被累积到文本属性中,使得大多数单元不需要处理它们自含文本。相反,它们向上检索模型树424,寻找一个带有处理该文本的方法的单元。只有那些后来被引入用以保持可视和可听演示的同步的单元带有处理该文本的方法(例如单元432)。这些单元,例如SayAs单元,提供说出的内容和可视内容之间的链接。它们将自身登记到可听队列402上的对象中,于是当单词或可听剪切被说出或播出时,它们接收通知,并且它们保持对于相应的可视视图成分的引用。所以,正是这些单元,才带有与读出和加重相关的独特行为,有必要带有它们自身处理文本的方法。例如,一个SayAs单元必须管理这样的事实,即,必须加重显示一个文本块而同时要在通过一个TTS合成器或者一个预记录的音频剪辑,呈现完全不同的可听内容。那些没有这种特殊行为管理和不出现在树中的其他具有特殊行为的单元之下的大多数单元,利用由一个根EBML单元提供的默认文本处理而结束,其集中正常逐词加重显示。
由于仅仅使用模型树424的选择单元,以保持可听和可视视图之间的链接,它们需要保持在构建视图的阶段之外、呈现内容的阶段之中。构建视图的这种方法的一个优点是,树中所有其他单元(典型地包括绝大多数单元)在呈现阶段不再被需要而可以被删除。那些消耗性单元(434、436、438、440、442)在图4B中用虚线示出。其好处是可以大大节约存储器。一个典型的标记页面可以导致建立大量标记和文本节点。在可听和可视视图已经建立起来之后,这些节点中少量的节点,在视图演示期间保持用来处理语音事件(并保持各视图之间的同步)。
在内容的呈现期间,呈现器迭代通过可听视图402。可听视图402现在由一系列指定和控制可听进展的对象组成,包括包含被说出的文本的对象;标出进/出单元的对象;向可听展示发出可中断暂停请求的对象;以及请求可听示视图402再定位的对象(包括循环回和重复可听队列部分的能力)。
当这些事件进行时,通知在模型树424中的适当保持的单元(426、428、430、432)。模型树424依次通知对应的可视成分(428、420、422)作出适当的加重显示行为,要求它们成为可见的(即,要求它们告诉它们包含的视窗根据需要自动滚动)。
为了进一步理解建立/呈现一个文档所需步骤,可考虑以下简单EBML文档<EBML>
<SAYAS SUB=“Here comes alist!”>
<FONT SIZE=“10”FACE=“Sans”>
My list</FONT>
</SAYAS>
<UL>
<LI>Apples</LI>
<LI>Peaches</LI>
<LI>Pumpkin Pie</L1>
</UL>
</EBML>
语法分析器302创建如图5所示的模型树。图中用黑体椭圆形示出节点<EBML>502和<SAYAS>504,因为这些节点被指定处理那些用于在它们的子节点树中的文本(在这一分类中有其他标记,但在此实例中恰巧为有两个标记)。正是这两个节点,实际将文本添加给可听/可视视图。非文本的节点(506、508、510、512和514)用包含标记名称的椭圆形示出。在可听和可视视图的构建期间,浏览器使用此模型树524。应注意终端节点(516、518、520、522)用多边形示出。这些节点包含来自文档的实际文本。此树以下的节点只是将建立请求上传至该树中,而不管该请求将由哪个节点来处理。
在完成文档的语法分析之后,浏览器遍历模型树524,并开始各种所需视图的构建。由于在各节点中都可到达建立例程,所以它可以有几个作用。首先,当前文本属性对象可被改变,其将影响由树中在它以下的那些节点给出文本的演示。例如,如果到达一个<FONT>标记,该<FONT>标记节点改变文本属性对象,以表明对于任何所含的文本,后续的可视视图建立请求应当采用一种特定的字体。这些在下节点承兑这一属性,因为在开始工作之前,每一节点都获得它的父代属性对象的副本。其次,建立例程能够要求模型树524回到其父代,并要求一特定文本段得到处理。对于文本节点而言,这是默认行为。最后,建立例程可以直接影响视图。例如,<P>标记节点能够将一个新行对象放到当前的可视视图上,从而使得文本的可视流被中断。类似地,<BREAK>标记可以将一个可听分隔对象加到可听队列中,从而在可听输出中引起暂停。
由于节点要求父代树寻找要被处理的文本,实现这一功能的这些节点(在此例中的<EBML>和<SAYAS>)负责建立可听/可视视图,并协调任何在演示期间所需的同步。
图6示出在建立已经完成之后,视图和用于实例EBML的模型之间的关系。由于可听队列402的建立,相对于负责可听/可视视图同步的节点保持参考。例如,可听视图402项目602指向SAYAS标记504,可听队列项目604、606和608指向EBML标记502。这允许由语音引擎304发出的事件被切换到正确的节点上。然后,该模型保持对可视演示中的适当成分的参考。这允许这些模型节点在文本正在被可听到地显示的时候,执行任何所需的同步行为。在此例中,<SAYAS>节点504负责同步项目602和526的不同可听和可视演示。当可听和可视演示相同时,<EBML>节点502提供默认行为,分别如图中单元604、606、608和单元528、530及532所示。
一旦已经建立起来视图,就指令模型去掉保持在树中的参考。例如,Java编程语言允许在Java虚拟机中的“垃圾箱”(garbage collection)收集那些在演示期间不需要提供同步的节点。可以使用其他的“垃圾箱”系统可来自动地回收节点。那些需要同步的节点则由可听视图402所锚定,因而避免被收集掉。
图7示出参考得以渐消的树。其中可被收集到垃圾箱中的节点用虚线示出(506、508、510、512、514、516、518、520及522)。
权利要求
1.一种由计算机实现的用于在多模态呈现器中同步可听和可视演示的方法,包括步骤接收包括含有用于可听成分标记和用于可视成分标记的浏览器标记语言代码的文档;对所接收的文档中的文本进行语法分析,以建立包含一些用于所述代码中的每一标记的模型单元的模型树;遍历该模型树以建立可视和可听视图;根据指向一个用于可听成分的标记的可听视图项目,生成与文本相关的可听成分;以及在再现所生成的可听成分时,根据指向一个用于可视成分的标记的可视视图项目显示文本。
2.如权利要求
1所述的由计算机实现的用于在多模态呈现器中同步可听和可视演示的方法,进一步包括步骤以可视方式将显示文本中对应于所再现的生成的可听成分的部分加重显示。
3.如权利要求
2所述的由计算机实现的方法,进一步包括步骤自动滚动显示的文本,以保持显示本文与再现的生成的可听成分之间的对应关系。
4.如前述任何一个权利要求
所述的由计算机实现的方法,其中可听成分在文字上与文本相对应。
5.如权利要求
1-3的任何一个所述的由计算机实现的方法,其中可听成分与文本相关联,但不与文本在文字上相对应。
6.如权利要求
1-3的任何一个所述的由计算机实现的方法,其中可听成分是一个预记录的剪辑。
7.如权利要求
1-3的任何一个所述的由计算机实现的方法,其中所述文档是从网络上接收的。
8.如权利要求
7所述的由计算机实现的方法,其中多模态呈现器是一个网络浏览器。
9.如权利要求
1-3的任何一个所述的由计算机实现的方法,进一步包括步骤显示按钮,当用户按动按钮时,使得显示的文本跳过当前文章或返回到前一文章。
10.如权利要求
9所述的由计算机实现的方法,进一步包括步骤加重显示按钮以利于用户选择。
11.一种用于在多模态呈现器中同步可听和可视演示的计算机系统,包括输入装置,用于接收包括含有用于可听成分标记和用于可视成分标记的浏览器标记语言代码的文档;语法分析器,用于对所接收文档中的文本进行语法分析,以便建立包含一些用于所述代码中的每一标记的模型单元的模型树;用于遍历模型树以建立可视和可听视图的装置;用于根据指向一个用于可听成分的标记的可听视图项目,生成与文本相关的可听成分的装置;以及显示器,用于在再现所生成的可听成分时,根据指向一个用于可视成分的标记的可视视图项目显示文本。
12.如权利要求
11所述的计算机系统,其中所述显示器包括用于将显示文本中对应于再现的生成的可听成分的部分加重显示的装置。
13.如权利要求
11所述的计算机系统,包括用于自动滚动显示的文本,以便与可听成分重合,从而在视图中保持与再现的生成的可听成分相对应的本文的装置。
14.如权利要求
11至13的任何一个的计算机系统,其中可听成分在文字上与显示的文本相对应。
15.如权利要求
11至13的任何一个的计算机系统,其中可听成分与显示的文本相关联,但不与显示的文本在文字上相对应。
16.如权利要求
11至13的任何一个的计算机系统,其中可听成分是一个预记录的剪辑。
17.如权利要求
11至13的任何一个的计算机系统,包括用于从网络上接收文档的装置。
18.如权利要求
17所述的计算机系统,其中多模态呈现器是一个浏览器。
19.如权利要求
11至13的任何一个的计算机系统,其中所述显示器在操作上设置为显示一些按钮,当用户按动按钮时,其使得显示的文本跳过当前文章或返回到前一文章。
20.如权利要求
19所述的计算机系统,其中显示的按钮被加重显示以利于用户选择。
专利摘要
本发明提供了一种用于多模态浏览器/呈现器的系统和方法,其以同步的方式呈现可视和可听内容,不需改变服务器应用程序。该系统和方法包括通过计算机网络接收文档,对文档中的文本进行语法分析,提供与文本相关联的可听成分,同步地将文本和可听成分传送到输出端。呈现器所需的行为是当内容的某些部分对用户是可听时,该部分在屏幕上是可见的,而且将可听地呈现的特定可视内容可视地加重显示。本发明还作用于来自可视成分或可听成分的输入,还通过使浏览器处理EBML语言,允许用户经可听装置而非可视装置对任何应用程序或服务器进行访问,使得能将其可听地读给用户。能够结合已有的EBML语句,使得可听地读给用户的内容与EBML文本相关联但不相同。本发明还通过标记语言变化而非应用代码变化,解决同步现有内容的可听和可视演示的问题。
文档编号G10L13/04GKCN1184613SQ01816336
公开日2005年1月12日 申请日期2001年9月19日
发明者L·布罗西尔斯, S·福伊斯特尔, J·亨尼西, M·豪兰, S·普里特克 申请人:国际商业机器公司导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1