CN100507811C - 用于生成可缩放的用户界面的系统及方法 - Google Patents

用于生成可缩放的用户界面的系统及方法 Download PDF

Info

Publication number
CN100507811C
CN100507811C CNB2005800178592A CN200580017859A CN100507811C CN 100507811 C CN100507811 C CN 100507811C CN B2005800178592 A CNB2005800178592 A CN B2005800178592A CN 200580017859 A CN200580017859 A CN 200580017859A CN 100507811 C CN100507811 C CN 100507811C
Authority
CN
China
Prior art keywords
data
user interface
scene
coding
mpeg
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005800178592A
Other languages
English (en)
Other versions
CN1961281A (zh
Inventor
弗兰克·A·亨莱特
查尔斯·W·K·格里东
凯文·M·康罗伊
赖安·斯托纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IDHL holding company
Original Assignee
Hillcrest Laboratories Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hillcrest Laboratories Inc filed Critical Hillcrest Laboratories Inc
Publication of CN1961281A publication Critical patent/CN1961281A/zh
Application granted granted Critical
Publication of CN100507811C publication Critical patent/CN100507811C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4314Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4438Window management, e.g. event handling following interaction with the user interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4821End-user interface for program selection using a grid, e.g. sorted out by channel and broadcast time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8549Creating video summaries, e.g. movie trailer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/45Picture in picture, e.g. displaying simultaneously another television channel in a region of the screen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window

Abstract

提供了一种利用通过电缆网络传输的数据在电视上生成缩放的用户界面的方法和系统。所述系统包括上游处理器,用于利用第一类型的编码和第一数据流来发送第一数据,以及用于利用第二类型的编码和第二数据流来发送第二数据,并且所述第二类型的编码不同于所述第一类型的编码;以及客户端处理器,用于利用所述第一数据和所述第二数据、在所述客户设备上生成所述可缩放的用户界面,其中,所述第一类型的编码是MPEG编码,所述第二类型的编码是场景数据编码;以及其中,所述第一数据是与将要在所述用户界面上生成的背景层有关的图像或视频数据,所述第二数据是与将要在所述用户界面上生成的前景层有关的图像或文本数据。

Description

用于生成可缩放的用户界面的系统及方法
技术领域
本发明涉及在电视上生成缩放的用户界面的方法和系统,尤其涉及利用通过电缆网络传输的数据生成缩放的用户界面的方法和系统。
背景技术
本申请与2004年6月3日提交的、题为“PVR架构规范上的ZUI”的第60/576,786号美国临时专利申请相关,并要求其优先权,该专利申请公开的内容通过引用并入本文。
本发明描述了用于在通信系统(例如互动的电视系统)中的节点之间处理和传输多媒体数据,这些多媒体数据可用于创建例如家用的高级娱乐用户界面。
与通信信息相关的技术在过去的几十年里有了迅速的发展。电视、蜂窝电话、互联网和光学通信技术(这里仅列出几样)结合起来将消费者淹没在可得到的信息和娱乐选择中。以电视为例,最近30年来已经引入了有线电视服务、卫星电视服务、按次计费电影和视频点播。然而,20世纪60年代的电视观众在他们的电视机上通常只能够接收到也许是四或五个无线TV频道,今天的电视观众有机会在数以百计和潜在的数以千计的节目和信息频道中选择。目前主要在旅馆等中使用的视频点播技术提供了一种用于从数以千计的电影节目单中进行家庭娱乐选择的潜能。例如TiVo股份有限公司(加利福尼亚州奥维索金街2160,95002)推出的数字视频记录(DVR)设备进一步扩大了可以得到的选择。
为终端用户提供那么多的信息和内容的能力的技术给系统设计人员和服务供应商提供了机会和挑战。一个挑战是尽管终端用户通常更愿意拥有更多的选择而不愿意选择变小,但这种喜好与他们希望的即快速又简单的选择处理所相背。不幸的是,终端用户通过其来访问媒体节目的系统和界面的发展使得选择处理既不快又不简洁。再次考虑电视节目的例子。在电视处于初期时,确定看哪一个节目是相对简单的事情,这是因为可选择的数目较少。人们可以查阅印制的节目指南,该节目指南被格式化为例如一系列的行和列,这些行和列显示出了在(1)邻近的电视频道、(2)被传输到这些频道的节目以及(3)日期和时间。通过调节调谐钮,电视被调谐到所需的频道,并且观众观看到所选择的节目。在这之后,允许观众远距离调谐电视的遥控控制装置被引入。这种对用户-电视界面(interface)的增添产生了被称为“频道冲浪”的现象,借此,观众能够迅速地观看在大量频道中广播的短片段,从而可以快速得知在任意给定的时间什么节目是可看的。
尽管频道的数量和可观看的内容急剧增加,但通常可得到的用于电视的用户界面、控制设备选择和架构在过去的30年里没有太大的改变。印制的节目指南仍然是用于传递节目信息的最流行的机制。具有上下箭头的多按钮遥控器仍然是最流行的频道/内容选择装置。设计和实现TV用户界面的人们对可得到的媒体内容的增加的反应仅仅是对现存的选择处理和界面对象的直接延伸。这样,印制的节目指南中的行数被增加以容纳更多的频道。遥控装置中的按钮的数目也被增加以支持附加的功能和内容处理。然而,这种方法大大增加了观众浏览可得到信息所需的时间和执行选择所需动作的复杂度。有争议的是,现存界面的麻烦的本质阻碍了一些服务(例如视频点播)的商业应用,这是由于消费者反对给在他们看来已经是太慢和太复杂的界面再增加复杂度的新服务。
在由弗兰克A亨莱斯于2004年1月30日提交的,美国第10/768,432号专利申请中描述了一种典型的控制架构,该架构具有用于组织、选择和运行媒体节目的可缩放图形用户界面。该专利公开的内容通过引用并入本文。该架构为上述的传统界面中存在的问题提供了示例性的解决方案。其中,该示例性的架构可以提供这样一种机制,即,用户可以显示与可用的媒体节目相关的元数据,用于使用户通过简单的使用方式来进行选择,但是使用户能够得到大量不同的媒体节目。本专利申请中描述的示例性框架的一个特征是,利用缩放在用户界面所显示的媒体对象的不同语义级别之间提供(和其他事情一起)视觉上的信息转换,并且作为用于将用户当前正在考虑的对象突出显示的机构。
系统架构和通信节点使这些类型的高级用户界面的实现复杂化,其中在处理用于生成这些界面的数据和将所述数据从各种数据源传输到例如电视机的终端用户设备时会涉及到系统架构和通信节点。如后面将要更加详细地描述的那样,该数据包括用于描述媒体内容的所谓的元数据。在本文中使用的术语“元数据”是指描述与用户可选择的媒体节目相关联的所感兴趣的特定内容的所有补充信息,以电影为例,元数据可例如包括:电影名称,内容叙述,种类,演员阵容,DVD封面的样式,价格/可用性,以及与其内容有关的权限(right)。除此之外,它还可以包括演员们的个人简历和所出演的全部电影目录,相似电影的链接,评论家的评论,电影观众的评论以及与元数据本身相关的权限。它还可以包括链接到用户感兴趣的内容的广告元数据等。在2005年1月18日提交的题为“元数据代理服务器及方法”的美国第11/037,897号专利申请中,描述了用于捕获、处理、合成和传递适于这种高级用户界面的元数据的示例性的系统,该专利申请公开的内容通过引用并入本文。
然而,所述数据一旦被捕获和处理,便需要采用以下方式将数据从例如系统的数据头端器(head-end)部分发送到例如机顶盒,即,利用这种方式能够提供足够的数据来绘制高级用户界面,同时要对时间延迟敏感并且在由传统硬件限制的范围内操作。因此,希望提供可以解决这些冲突的特性并能够产生高级用户界面的架构和方法。
发明内容
本发明的示例性实施方案提供了用于在例如电缆网络和/或互动电视网络的通信网络中通信和处理数据的方法和系统。不同数据流和编码技术的选择性使用使得能够在具有各种处理能力的客户设备上生成高级用户界面。
根据本发明的一个示例性的实施方案,提供了一种利用通过电缆网络传输的数据在电视上生成缩放的用户界面的方法,所述方法包括:
在所述电视上生成第一用户界面屏幕,所述第一用户界面屏幕具有与之相关的多个图像,利用MPEG编码,通过所述电缆网络将所述多个图像作为与所述第一用户界面屏幕相关的第一数据集的一部分,发送到与所述电视相连的机顶盒;
在与所述电视相连的机顶盒处提供客户端用户界面状态机,所述客户端用户界面状态机接收所述多个图像,并基于所述多个图像控制所述第一用户界面屏幕的生成;
所述客户端用户界面状态机接收与所述第一用户界面屏幕有关互动数据;
向设置于所述机顶盒上游的请求处理器请求信息,以基于所述用户互动数据提供从所述第一用户界面屏幕到第二用户界面屏幕的缩放转换;
所述机顶盒接收与所述缩放转换和所述第二用户界面屏幕有关的第二数据集,其中所述第二数据集的一部分作为MPEG数据流被接收,所述第二数据集的另一部分作为不同于所述MPEG数据流的另一数据流被接收,其中所述另一数据流与所述第二用户界面的场景描述数据有关;以及
在所述客户端用户界面状态机的控制下,利用所述第二数据集在所述电视上生成所述缩放转换和所述第二用户界面。
根据本发明的另一个示例性的实施方案,提供了一种用于在电缆通信网络中基于从上游节点发送到客户设备的数据生成可缩放的用户界面的方法,包括以下步骤:
利用第一类型的编码和第一数据流接收第一数据;
利用第二类型的编码和第二数据流接收第二数据,所述第二类型的编码不同于所述第一类型的编码;以及
在所述客户设备端,利用所述第一数据和所述第二数据生成所述可缩放的用户界面;
其中,所述第一类型的编码是MPEG编码,所述第二类型的编码是场景数据编码;以及
其中,所述第一数据是与将要在所述用户界面上生成的背景层有关的图像或视频数据,所述第二数据是与将要在所述用户界面上生成的前景层有关的图像或文本数据。
根据本发明的又一个示例性的实施方案,提供了一种用于在电缆通信网络中从上游节点向客户设备发送用于生成可缩放的用户界面的数据的系统,包括:
上游处理器,用于利用第一类型的编码和第一数据流来发送第一数据,以及用于利用第二类型的编码和第二数据流来发送第二数据,并且所述第二类型的编码不同于所述第一类型的编码;以及
客户端处理器,用于利用所述第一数据和所述第二数据、在所述客户设备上生成所述可缩放的用户界面,
其中,所述第一类型的编码是MPEG编码,所述第二类型的编码是场景数据编码;以及
其中,所述第一数据是与将要在所述用户界面上生成的背景层有关的图像或视频数据,所述第二数据是与将要在所述用户界面上生成的前景层有关的图像或文本数据。
附图说明
图1(a)和1(b)示出了用于显示悬浮缩放特征的用户界面屏幕,其中所述用户界面屏幕可以利用根据本发明所处理的数据生成;
图2描述了可以利用根据本发明处理的数据来生成的另一用户界面屏幕;
图3是示出示例性的元数据类型和来源的表格;
图4示出了根据本发明的示例性实施方案的客户-服务器架构;
图5更加详细地说明了根据本发明的示例性实施方案的、图4的MPEG-2转换和场景编码器;
图6更加详细地说明了根据本发明的示例性实施方案的、图4的场景请求处理器;
图7更加详细地说明了根据本发明的示例性实施方案的、图4的客户端UI状态机;
图8描述了根据本发明的示例性实施方案的事件处理器、场景加载器、独占场景以及重叠场景之间的示例性的消息互动;
图9示出了与根据本发明的架构和方法有关的另一示例性的消息互动;
图10描述了根据本发明的示例性实施方案的、用于对与悬浮缩放效果有关的数据进行编码的技术;以及
图11说明了根据本发明的示例性实施方案的、用于传输到客户设备的数据的选择性编码。
具体实施方式
下面参照附图对本发明进行详细的说明。在不同的附图中,相同或相似的元件用同一参考标号表示。此外,以下对本发明的详细说明并不是对本发明的限制。相反,本发明的范围是由所附权利要求来限定的。
为提供上下文以便于讨论,图1(a)和1(b)示出了根据本发明的示例性实施方案的、利用服务器发送给客户的数据和指令创建的示例性的用户界面屏幕。在图1(a)和1(b)中,示例性用户界面屏幕的一部分示出了10个媒体选择项,其中所述用户界面屏幕可以基于传送到末端用户的系统(例如,机顶盒/电视或个人计算机)的信息来生成。若想获得与这一纯粹示例性的界面的更多信息(包括先前的屏幕和导航技术),感兴趣的读者可参看以上并入本文的第10/768,432号美国专利申请。应当理解,这种用户界面纯粹是示例性的,而且根据本发明的架构和方法能够被实现为支持其他界面。
图1(a)示出的用户界面屏幕具有多个媒体对象,这些媒体对象可被选择作为图像,例如DVD封面图像(cover art)。在图1(b)中,与电影“阿波罗13”有关的图像因初步选择(例如用户将光标(图中未示出)移到显示屏上的该图像上)而被放大。这种特征被称作悬浮缩放(hoverzoom)效果,并在标题“悬浮缩放”下的部分对其进行更为详细地描述。根据本发明的示例性实施方案,上述特征可以通过在节点(例如头端器和机顶盒)之间发送数据(例如元数据)和指令实现。在较下层次的用户界面中,可采用附加的数据,例如内容供应者传递的元数据,生成用户界面屏幕。例如,如图2所示,用户通过按下一个输入设备(未示出)上的按钮选择上述放大了的图像后,可以进一步放大来显示其他详细信息。例如,显示关于电影“阿波罗13”的上演时间、价格、演员信息等内容。本领域的技术人员应该理解,在这里还可以提供其它类型的信息。另外,该图形用户界面(GUI)还包括GUI控件对象,例如包括用于购买电影、观看预告片、或返回上一级GUI屏幕(这一动作也可以靠按下输入设备上的“缩小(ZOOMOUT)”按钮来实现)的按钮控制对象。从以下述方式处理后的元数据生成的超链接也可以使用户跳转到,例如与在图2的GUI屏幕右下角中标识出的电影相关的GUI屏幕,或者跳转到与该电影的演员相关的信息。在该实施例中,在标题“全部影片目录”下的部分或者所有电影标题可以按照超链接的方式实现,当用户通过输入设备启动这些超链接时,将为所选中的电影显示一个与图2形式相对应的GUI屏幕。用来生成图1(a)、1(b)以及图2中的界面屏幕的部分或所用信息来自于,由一个或多个元数据供应者提供、并根据本发明实施方案进行处理的元数据。
图1(a)、1(b)以及图2中的界面屏幕纯粹是示例性的,并且根据本发明发送和处理的元数据(以及其他数据)还可以用来支持其他界面或用于除了生成界面之外的其他用途。同样,根据本发明,可以接收和处理许多不同种类的元数据。图3的表格中列出了元数据的种类、来源和相关用途(例如TV浏览器界面、视频点播(VOD)界面以及音乐浏览器等)的实施例。对于该详细讨论,特别令人感兴趣的是与根据本发明的这些示例性的实施方案生成的用户界面有关的缩放特征。尽管本发明并不局限于用于生成可缩放的用户界面的技术或系统,但是对于与包括用户界面屏幕之间的缩放转换(transition)的用户界面一起使用来说,本文中所讨论的某些客户/服务器特征则是特别有益的。为了详细描述,术语“缩放”、“可缩放的”以及“缩放的”是指这样的一种技术,其中用户界面动作导致改变到用户界面的被显示的部分的技术,其中用户界面的被显示部分产生一致的并且为用户提供资讯的视景变化。缩放通常包括目标放大倍数(例如,照相机型的缩放)的改变,但是并不特别局限于此。例如,根据用户界面的缩放的另一方面是语义性缩放,其中包括以独立于放大的方式对经缩放的对象进行修改,例如,在语义性缩放之前,(在任意的放大级别下)向并未作为对象的一部分而出现的对象中增加文本或图形。若想获得与可缩放的用户界面有关的更多的信息,感兴趣的读者可以参考上面提到的、作为参考而并入本文的专利申请。
对于上下文来说,根据本发明的示例性实施方案的缩放转换的一个实施例是图1(a)和图1(b)的用户界面屏幕之间缩放转换,其中包括悬浮缩放的对象的放大倍数的改变,并且可选地包括对该对象的语义性缩放。另一个实施例是图1(b)和图2的用户界面屏幕之间缩放转换,其中与“阿波罗13”有关的图像的放大倍数发生了改变(例如,相对于图1(b)中示出的类似的图像来说在图2中被放大),并且为了在图2中使用而被转换。移动效果(Panning effect)也可以用来推动缩放转换。
图4示出了根据本发明示例性实施方案的、用于提供数据处理和传输的一般的客户-服务器架构40。其中,用户界面服务器42与客户端设备44通信,以便结合来自例如指示设备48的输入而在显示设备46上生成用户界面。用户界面服务器42和客户端设备44之间的数据(例如元数据和内容数据)通信可涉及用户界面服务器42和客户端设备44之间的任何数量的中间节点(未示出),其中包括网络集线器、分布式服务器以及类似的装置。此外,作为用户界面服务器42的一部分而示出的某些或所有的功能元件可以设置在这些中间节点的一个或多个内,或者位于系统40的头端器中。显示设备46例如可以是电视、计算机监控器/显示器、或任何其他的显示设备。客户端设备44可以实施为机顶盒、个人计算机、或包含处理单元的任何其他设备。指示器(pointer)48例如可以包括自由空间指示设备、鼠标、远程控制设备、跟踪球、操纵杆、或能够提供指示能力并可通过电线或以无线方式连接到客户端设备44的任何其他设备。
根据本发明的该示例性实施方案,服务器42包括转换和屏幕捕获器50、MPEG-2转换和场景编码器52、MPEG和ZSD高速缓冲存储器54、场景请求处理器56以及MPEG流发射器58,这些元件用来生成和管理到客户端设备44的MPEG-2数据流、以及接收和响应来自客户44的上游请求。转换和屏幕捕获器50自动收集用于生成用户界面的场景数据。在较高级别,这一点可以通过以下方式实现:导航通过被提供作为转换和屏幕捕获器50的输入的场景图(以及元数据和内容),以及调用MPEG-2转换和场景编码器52生成与所选的将要在显示设备46上显示的场景有关的、MPEG-2片断(clip)和场景描述文件。在标题为“场景描述数据格式”下面的部分,提供与根据本发明的示例性实施方案的场景描述文件和格式(在本文中也称作“ZSD”数据)有关的详细信息。
导航通过场景图涉及捕获并处理与可由用户界面生成的各种场景有关的数据。本文中所使用的术语“场景”通常是指与可以由用户界面生成的任何用户界面屏幕有关的框架,其中,虽然用于填充场景的至少某些数据将会发生变化,例如随着时间的推移,内容供应者会改变例如与他们提供的内容有关的元数据,但是上述场景是先验公知的,而不管根据本发明的用户界面的复杂性而动态性。因此,虽然图1(a)、1(b)以及图2仅仅示出了用户界面屏幕的一部分,但是完整屏幕的各个部分都将被视为场景。下面的表1列出了可以被收集用于每个转换的示例性的数据,表2列出了用于每个场景的示例性的数据:
 
字段 描述
起始场景ID 起始场景的场景ID
目标场景ID 目标场景的场景ID
聚焦指令 该指令用于使界面中的焦点移动到图标、按钮等,当所述图标或按钮被选中时,促使转换。聚焦指令的实施例是使鼠标指示器移动到图标上,从而使图标成为焦点。另一种聚焦指令可以直接激活悬浮缩放效果。
激活指令 该指令激活图标、按钮等,以便开始从“起始位置”到“目标位置”的转换。
表1——每个转换的信息
 
字段 描述
场景ID 该场景的场景ID
位置 用于起始场景的界面位置实例
 
(instance)
场景描述 用户提供的描述或自动生成的描述
表2——场景信息
因此,转换和场景捕获器50能够从例如包含完整的用户界面“全域”的数据库(图4中未示出),获取用于在用户界面中模拟所有期望的转换的所有必要信息。转换和场景捕获器50包括导航控制器和捕获控制器元件,当用户向界面生成命令场景转换的输入时,这些元件变为激活的。在较高级别下,导航控制器负责在每个转换和场景进行往返导航。示例性的导航控制器执行以下操作:(1)获得下一个转换,
(2)导航到“起始”场景,(3)执行用于该转换的聚焦指令,(4)将场景和转换信息通知给捕获控制器,(5)执行激活指令,(6)动画制作(animation)结束时通知捕获控制器,(7)将相反的场景和转换信息通知给捕获控制器(用于方向转换),(8)调用goBack()程序,以及(9)动画制作结束时通知捕获控制器。
捕获控制器与MPEG-2转换和场景编码器52结合,以创建MPEG-2片段和ZSD文件。当转换开始和结束时捕获控制器接收来自导航控制器的通知,并且在每个动画制作步骤中调用MPEG-2转换和场景编码器上的程序。为了向用户提供进展的视觉指示,捕获控制器确保画布静静地(still)将可见的场景图绘制在场景上,并添加用于表明已经执行的转换的百分比的文本重叠(text overlay)。
图5示出了根据本发明的示例性实施方案的、MPEG-2转换和场景编码器52的详细实施例。例如图像、文本、元数据等的原始场景数据由转换和屏幕捕获器50传递,并被提供给对象提取单元502、客户绘制的特征提取单元504以及视频信息提取单元506。对象提取单元502(处理用户界面屏幕上的用户可互动的对象)和客户表现的特征提取单元504(例如处理悬浮缩放和文本、以及将要由客户端设备44绘制的特征),在绘制位置控制器508的控制下操作,以从原始数据流中提取出信息,并将其提供给ZSD编码器507,ZSD编码器507利用后面详细描述的场景描述格式对提取出的信息进行编码。可以不发送ZSD编码数据、或者利用MPEG-2数据封装器(encapsulator)509在MPEG数据流中发送某些或全部ZSD编码数据,作为MPEG帧内的私有数据字段的一部分,同时可以利用上面参照图4所描述的OOB链路来发送其他的ZSD编码数据。
视频信息提取单元506用于在绘制位置控制器508的控制下,提取出适于MPEG-2编码的视频信息。下面将参照图11来更加详细地描述,绘制位置控制器508选择性地确定将何种类型的编码(在该实施例中为MPEG或ZSD编码)应用于特殊数据的能力,以及采用该类型编码的益处。
如本文中所使用的那样,术语“MPEG编码”是MPEG-I、MPEG-2以及类似编码的总称,尽管本发明的某些示例性实施方案明确是指MPEG-2编码。与MPEG编码有关的一般的细节本质上是本领域的技术人员所公知的,并且进一步可以标准草案(例如ISO CD 11172)的形式获得。示例性的MPEG-2编码器500包括多个未编号的模块,这些模块根据上述标准来操作,以执行MPEG-2编码(运动估计单元510是例外,后面将对其进行更为详细的描述)。在各种MPEG-2标准文档中可以找到提供对MPEG编码器500的未编号模块更加详细的描述的MPEG编码器示例,例如,经过演化在ITU-T SG1 5.1(在ATM视频编码上公知为CCITT SG XV、工作组(Working Party)XV/1、专家组(Experts Group))与ISO/IEC JTC1/SC29 WG11(MPEG)之间起到结合作用的测试模型(Test Model)5文档。具体地,测试模型5的MPEG版本公知为MPEG 93/225b,而测试模型5的ITU版本公知为AVC-445b,上述标准公开的内容通过引用并入本文。MPEG编码数据存储于MPEG/ZSD高速缓冲存储器单元54中,以便随后发送到客户端设备44。
对于图5中示出的示例性的MPEG-2转换和场景编码器52特别感兴趣的是编码器提示收集器512和运动估计器510。在MPEG-2转换和场景编码器52中,MPEG编码器500的一个方面是其能够快速而有效地对正在编码的MPEG数据进行高级别的压缩。除了别的之外,可以利用每个场景相对于用户界面中的其他场景的位置信息来实现这一点,而在根据本发明的示例性的用户界面中,这种信息被先验地限定。这就选择性地简化了标准MPEG运动估计算法,进而加速MPEG编码处理和/或减少需要专门用于MPEG编码处理的处理功率大小。更具体地,当对MPEG数据流中的连续MPEG帧进行编码时,用于执行编码的信息的一部分是与像素块从一个MPEG帧移动到下一个MPEG帧(和/或从前一个MPEG帧后退到当前MPEG帧)有关的信息。例如,如果第一个MPEG帧中的像素块只是移动到第二个MPEG帧中的新屏幕位置,那么确定并发送与该像素块有关的运动向量,通常要比对整个像素块进行重新编码并重新发送它们更有效。类似地,如果该像素块已经经历了相对统一的色差(例如,经历了照明效果),那么提供运动向量和某些色差信息则比重新发送整个像素块更有效。
为了适应随机的对象移动以支持所有类型的压缩格式,例如视频数据压缩,标准MPEG运动估计算法搜索像素块数据,以确定哪些像素块(以及在哪个方向上)从帧到帧移动。例如,被称作完整像素搜索的某些搜索利用16×16的块,而被称作半像素搜索的其他搜索利用16×8的块。这些搜索尤其是对高清晰度的视频数据来说计算负责,并且已经被估计为需要与标准MPEG编码器500执行的操作有关的处理时间/功率的80%(例如在没有通过引入编码器指示收集器512的修改的情况下)。因此,根据本发明的示例性的实施方案,由于这些客户/服务器架构所生成的用户界面不涉及对象的随机移动,所以简化了与MPEG编码有关的运动估计。例如,在图1(b)与图2的示例性的用户界面屏幕之间的转换中,与“阿波罗13”有关的图像从显示屏上的第一位置移动到显示屏上的第二位置(可选地带有一些放大),其中这两个位置是编码器指示收集器512先验公知的,并且编码器指示收集器512可以根据这两个位置来计算MPEG运动向量。
因而,编码器指示收集器512可以利用指令将MPEG运动向量传递到运动估计单元510,以便利用被传递的运动向量来执行MPEG压缩,而不是根据标准MPEG技术执行搜索。然而,使用相关的用户界面屏幕知识生成MPEG运动向量并不总是能够生成有效的MPEG运动向量(例如,由于被指定用来表达MPEG运动向量的位数的限制)。因此,编码器指示收集器512还能够命令运动估计单元510,采用标准MPEG搜索算法在逐帧(或其他)基础上确定运动向量。除了(1)利用完全采用标准MPEG搜索算法生成的运动矢量、或(2)利用全部由编码器指示收集器512(而不是采用标准MPEG搜索算法)生成的运动向量之外,可以根据本发明来确定的第三类运动向量是基于能够由编码器指示收集器512得到的信息,由MPEG搜索算法(具有的搜索范围是有限的)计算出的运动向量。
再返回来参照图4,模块50和52所生成的MPEG数据和场景描述数据可以存储在存储设备54中,以便在需要时由场景请求处理器56取回。场景请求处理器56处理客户端44对场景的请求,例如,如果客户端用户界面状态机62接收到与指示器48有关的光标停留在与
“阿波罗13”有关的图像(图1)上的指示,那么便向场景请求处理器56发送回一请求,以启动悬浮缩放场景(下面对此进行描述),或者如果客户端用户界面状态机62接收到用户想要浏览与“阿波罗13”有关的更详细的场景(图2)的指示,那么便向场景请求处理器56发送回一请求,以启动该场景。场景请求处理器56响应于该上游请求,将MPEG-2转换和场景描述数据返回给客户端44。根据下面更加详细地描述的示例性实施方案,对于某些上游请求,场景请求处理器56可以动态地确定MPEG数据、场景描述数据或二者的某些组合是否适于为该请求服务。图6说明了场景请求处理器56的详细的实施例。
在图6中,客户端请求处理器600协调所有的客户交互,例如通过解释客户请求并将这些请求分派给场景请求处理器56内的适当组件。例如,客户端请求处理器基于每个客户跟踪状态和统计数字,并将这些信息存储到数据库602中。带外(OOB)的客户端通信组件604处理通过OOB信道与客户进行的所有通信,其中包括响应连接请求和提取协议请求。视频重放控制功能606协调MPEG-2流生成组件(例如场景循环生成器608和转换重放功能610)的操作。场景环生成器608生成用户界面场景环,并且在没有发生转换时将其发送。转换重放功能610加载MPEG-2转换和场景编码器52先前生成的MPEG-2转换流(例如,经由高速缓冲存储器54),并将其发送到被请求的客户。转换重放功能610可以同时服务于多个MPEG-2转换流。MPEG-2传输流封装单元612在适当时对MPEG-2传输流进行更新,并将其转送到UDP封装单元614,其中UDP封装单元614将MPEG-2传输流分组聚集在一起,并通过UDP将其发送到IP,进而发送到MPEG流发射器58中的QAM网关(图中未示出)。
再参照图4,位于服务器一侧的MPEG流发射器58、以及位于客户端一侧的MPEG流接收器64和MPEG解码器66使得两个元数据能够通信,例如用于填充图2的用户界面屏幕中示出的文本字段的数据,以及经由视频流动协议链路的内容。可以利用现成的组件来实施MPEG流发射器58、接收器64和解码器66,因此在本文中不对其进行详细描述。然而,对与这些组件有关的细节、以及其中可以实施本发明的其他示例性的交互式电视系统架构感兴趣的读者,可以参考Jerding等人的第6,804,708号美国专利,该专利申请公开的内容通过引用并入本文。屏幕显示(OSD)图形控制器68从客户状态机62接收场景数据,以及从光标控制器69接收输入,以生成用于用户界面的重叠图形和本地动画,例如缩放的转换。分别由解码器66和OSD图像控制器68输出的MPEG视频数据和OSD视频数据由视频组合器70进行组合,并转交给显示设备46,以生成用户界面。如上所述,图1(a)中示出的DVD封面艺术图像是利用MPEG视频数据创建的用户界面元素的实施例,而图1(b)中的“阿波罗13”图像的缩放版本和图1(a)的用户界面屏幕右上角的圆形图标是利用场景描述数据生成的用户界面元素的实施例。
对于本发明的示例性的实施方案,特别感兴趣的是客户端用户界面状态机62,图7提供了客户端用户界面状态机62的更为详细的实施例。客户端用户界面状态机62解释场景数据和/或从场景请求处理器56接收的脚本,以便在客户端设备44上呈现用户界面场景(例如,如图1(a)、1(b)和图2所示)。客户端用户界面状态机62还可以从头端器42(如方框700所表示的)或本地硬盘驱动器702重新得到场景数据和MPEG-2转换片段。本领域的技术人员应该理解,根据涉及到的系统和/或客户端设备类型,只有一种数据源700,702可以出现在本发明的特定实施中,或者可以使用某些其他类型的数据源。带外(OOB)通信704可以用来通过例如PowerTV、Linux、Win32等的操作系统(OS)706和操作系统入口层708,向客户端用户接口状态机62提供信令和指令。OS 706和OS入口层708还可以跟踪与用户界面有关的用户活动,并向事件映射功能710提供数据。事件映射器710将用户界面数据(例如,光标移动、语音指令输入、自由空间指示器的运动等)转化成在用户界面中可能需要某些变化的事件,例如显示变化、音频变化、缩放转换等。例如,当用户的光标在图1(a)中的“阿波罗13”的图像上悬浮和经过时,事件映射器710可以从OS接收原始的光标数据,并将其映射为例如悬浮缩放事件,而悬浮缩放事件导致图像如图1(b)所示那样被稍微放大,后面将对此进行更为详细的描述。如另一个实施例所示,如果OS 706、708将按钮单击事件传递到事件映射器710,而光标位于图1(b)中的“阿波罗13”图像的放大版本上,表明用户想要获得与该电影有关的更多细节,那么事件映射器710可以识别与此有关的“向详细查看事件的转换”,从而导致向图2的用户界面屏幕的转换。
事件映射器710检测到的事件排列在事件队列712中,以便由事件处理器714处理。事件处理器714通过从事件队列712中接收事件,并基于例如当前的活动场景数据和/或脚本将其分派到活动库716中,以协调客户端用户接口状态机62的活动。基于检测到的事件,活动库716结合场景数据加载器720以及各种存储单元718、722进行操作以生成对当前被显示的用户界面屏幕的改变,后面将参照场景数据的讨论来对此进行更为详细的描述。
场景描述数据格式
已经描述了用于生成根据本发明的示例性实施方案的用户界面的某些示例性服务器/客户端架构,现在将描述可以与该架构一起使用的第二个示例性的数据格式(除了MPEG/MPEG-2格式之外)。尽管其他数据格式可以与本发明一起使用,但是该示例性数据格式有效地创建使客户端设备44能够对用户互动和系统事件作出响应的状态机。该数据格式可任意扩展到支持非常低功耗的客户端设备44和高端客户端设备44,例如PC。该示例性场景数据格式(也被称作“ZSD”格式)的其他目的包括主题支持、将来的语言支持、演示(demo)脚本以及自动测试支持。
ZSD格式支持两类场景:独占场景和重叠场景。在本文中,独占场景被简称为场景,因为独占场景占据了整个屏幕并且包含主要的用户互动元素。重叠场景描述了客户端用户界面状态机62在独占场景上方逻辑地重叠的全部或部分场景。当独占场景随着用户导航而变化时,重叠场景可以或不可以变化。这使得重叠场景能够支持可以跟随用户从独占场景导航到重叠场景的特征,例如音乐控制、全局导航、书签等。重叠场景最初由独占场景启动,但重叠场景可以启动其他重叠场景。尽管可能中止所有的重叠场景,但是重叠场景基于来自用户的互动或基于当前的独占场景来控制自身的寿命。独占场景和所有的重叠场景逻辑上存在于自己的命名空间中。为了使ZSD元素引用其他场景中的元素,本文中所描述的ZSD引用(reference)可被修改为包括指定命名空间的字段。场景内的通信对于例如通知重叠场景在独占场景中包含什么的操作来说是有用的。为了支持场景内通信,发送器触发动作以生成事件。这些事件然后由事件处理器714分派到各个场景。当事件中包含源ID时,该ID被映射到目的场景中的等价源。如果目的场景中不包含等价源,事件处理器714便继续尝试将该事件分派到下一个场景。
每个独占场景都在客户端连续经历以下状态:(1)已登陆,(2)已加载,(3)稳态,(4)卸载,以及(5)退出。当独占场景的ZSD数据开始被解码时,独占场景便进入登陆状态。此时,事件处理器714唤起加载事件,以便独占场景能够执行任何初始动作。一旦事件处理器714完成加载事件分派处理,独占场景便进入已加载状态。此时,事件处理器714可以使未决事件处于其队列712中。事件处理器714清除该队列712,然后将独占场景转换为稳态。图8说明了采用场景成员(membership)消息以示出所有状态中的事件处理的示例性独占场景的生命周期。用于卸载独占场景的过程本质上是加载处理的逆处理。对于这种情况,GoToScene或其他场景改变动作发起卸载处理。此时,独占场景改变为卸载状态。一旦所有的ZSD卸载处理结束,处理便转换到退出状态,其中客户可以可选地保留某些或全部独占场景的ZSD数据。独占场景的状态改变被传达到所有当前已加载的重叠场景,以便重叠场景可以采取行动(如果需要的话)。
重叠场景独立存在于独占场景上方。例如,在图1(a)中,右上角所描述的三个图标(首页、向上箭头和TV)可以实施为独占场景(在MPEG层中实施的各种DVD封面图像)上的重叠场景。图1和图2中未示出的另一示例是将音量控制和/或信道选择用户界面对象供应为重叠场景。重叠场景的中止可以在其自身场景内完成,或者通过独占场景的请求来完成。此外,场景成员通知(SceneMembershipNotifcation)事件可以用来将重叠场景的寿命限制为例如图9所示的独占场景的特定组。独占场景中属于该场景组的每个在被加载时可以发送场景成员通知(SceneMembershipNotifcation)消息。与该场景组有关的重叠场景可以利用独占场景改变(ExclusiveSceneChange)事件和场景成员通知(SceneMembershipNotifcation)消息,来表明重叠场景是否应当保持被加载状态或应当使自己停止。只要收到与其场景组匹配的场景成员消息(SceneMembershipNotifcation),重叠屏幕便可以保持被加载状态。下面将更为详细地描述(图9中提到的)三元组(triple)表。
根据本发明的一个示例性实施方案,每个场景包含下面的描述信息:
 
字段 描述
场景ID 用于该场景的全局唯一的ID
描述 可选的字符串描述以帮助开发者识别该场景
场景尺寸 用于布置场景的尺寸
ZSD格式版本 该字段具有整数值1
ZSD概况 该字段为最小被支持的概况的名称。当前它可以取的值为“简单和高级”。
 
最大动作堆栈尺寸 该字段指定可以压入该场景的动作堆栈的最大元素数。
高速缓冲存储器特性类型 该字段规定ZSD解释器如何可以高速缓冲存储该场景。
高速缓冲存储器特性值 该字段可以用来基于高速缓冲存储器特性类型规定32位整数值。如果该字段未被使用,那么它应当被设定为0。
表3——场景消息字段
为了改善ZSD加载时间性能,客户端设备44可以可选地实施ZSD高速缓冲存储器722。当高速缓冲存储行为不再有用时,ZSD编码的场景将高速缓冲存储特性指定给直接客户。例如,暂时重要的信息(例如运动分数)不应当被高速缓冲存储较长时间。表4列出了示例性的高速缓冲存储特性的类型,并描述了它们的用途。
 
高速缓冲存储器特性类型 描述 特性值单位
超时(timeout) 超过指定的秒数之后,该场景超时(0秒表示未进行缓冲存储)
表4——高速缓冲存储器特性
根据本发明的示例性的场景数据格式具有四种基本的类型(在本文中有时称作“元素”),具体为:对象、事件、动作以及源。在较高级别,对象描述例如用于MPEG层中的按钮和图标的边界、重叠文本和重叠图像的场景组件。事件描述与场景有关的通知。这些事件包括鼠标(指示器)移动事件、键盘事件、应用状态改变事件等。动作描述对例如进入另一场景的事件作出的响应,最后,源包含对象、事件和动作所使用的原始数据,例如图像数据。后面将更为详细地描述这些数据类型中的每一个数据类型。
表5-8描述了根据本发明的示例性实施方案的、示例性的对象类型以及与其有关的参数。
 
对象类型 参数 描述
整个场景 0 整个场景对象、OID 0具有该类型
边界 1 X,Y,宽度,高度 该对象指定场景坐标系统中的矩形边界。
PNode 2 X,Y,宽度,高度,父辈对象 该对象指定具有被指定的边界的PNode。
表5——对象类型
 
名称 对象ID 类型 描述
整个场景 0 整个场景 整个场景
预留 1-63 N/A 预留
表6——预留的对象ID
 
对象类型 简单概况 高级概况
整个场景
边界
PNode ×
表7——对象类型支持
 
特性类型 参数 需要用于: 可选用于:
光标 光标源ID 整个场景 边界,PNode
表8——对象特性
像其他的场景描述格式元素一样,每个事件分配一个全局唯一值。一些事件类型采用过滤器来限制它们触发的动作。例如,按压键(OnKeyPress)事件采用感兴趣的键。除了过滤器之外,事件可以将源压入动作堆栈,这将在后面描述。动作可以采用堆栈中的信息来修改它们的行为。表9在下面列出了示例性的事件类型。重叠场景通过调度程序(dispatcher)来影响事件的传播。调度语义学在表中被缩写为:
1.活动——调度程序只将事件发送到活动的场景。例如,当场景被加载时,加载(Unload)事件仅被发送到该场景。
2.具有源过滤器的场景——调度程序只将这些事件发送到包含用于该事件的源表的项的场景。在迭代通过场景的三元组表之前,事件调度程序将事件中的源ID重新映射到它们在场景中的等价的源ID。
3.唯一重叠(Overlays Only)——调度程序只将这些事件发送到重叠场景。
4.两者(both)——调度程序首先将该事件发送到重叠场景,然后再发送到独占场景。
 
事件类型 语义学 过滤器 动作堆栈 描述
加载(OnLoad) 0 活动 当对象被加载时,该事件被发送。
按压键(OnKeyPress) 1 两者 当用户按压键或远程控制按钮时,该事件被发送。
释放键(OnKeyRelease) 2 两者 当用户释放键或远程控制按钮时,该事件被发送。
敲键(OnKeyTyped) 3 两者 当用户敲键时,该事件被发送。如果该键支持自动重复,那么系统便在该键被按下的过程中重复发送该事件。
鼠标进入 4 两者 当鼠标指示器经过
 
(OnMouseEnter) 该对象时,该事件被发送。
鼠标退出(OnMouseExit) 5 两者 当鼠标指示器退出该对象的边界时,该事件被发送。
按压鼠标(OnMousePress) 6 两者 按钮 X,Y按钮 当用户按压鼠标按钮时,该事件被发送。
释放鼠标(OnMouseRelease) 7 两者 按钮 X,Y按钮 当用户释放鼠标按钮时,该事件被发送。
单击鼠标(OnMouseClick) 8 两者 按钮 X,Y按钮 当用户按压并释放鼠标按钮时,该事件被发送。
聚焦(OnFocusIn) 9 两者 当相关的对象接收焦点时,该事件被发送。其他事件通常导致聚焦,例如按压键和鼠标进入。
散焦(OnFocusOut) 10 两者 当相关的对象失去焦点时,该事件被发送。
通知场景成员(OnSceneMembershipNotification) 11 具有源的变量的场景 场景成员源ID 场景成员源ID 当发出通知场景成员动作时,该事件被发送。
向上滚动(OnScrollUp) 12 两者 对于指定的滚动轮向上移动的每个标记(notch),唤起该事件。
向下滚动(OnScrollDown) 13 两者 对于指定的滚动轮向下移动的每个标记,唤起该事件。
超时(OnTimeout) 14 两者 定时器 定时器 当定时器超时时,该事件被唤起。
激活(OnActivate) 15 两者 当对象被激活时,该事件被唤起。
独占场景改变(OnExclusiveScene 16 唯一重叠 已登录、 当独占场景改变时,该事件被唤起。该变量指定场景改变的准确时刻。参
 
Change) 已加载、正在卸载、已退出 见场景生命周期序列图。
卸载(OnUnload) 17 两者 当对象由于场景变化而被卸载时,该事件被唤起。
表9——事件类型
在本文所描述的机构和方法的操作中,对象事件的结果为动作。在ZSD动作表中,可以将动作连接在一起以构成程序。为了方便将参数从事件传递到动作、以及从动作传递到被连接的动作,ZSD解释器保持动作堆栈。在调度动作列表中的第一个动作之前,对动作堆栈进行初始化,其中,动作列表顺序地具有以下项:
1.位于三元组表的项中触发动作的对象
2.位于三元组表的项中触发动作的事件
3.来自事件的被压入动作堆栈的元素
在调度每个动作之前,ZSD解释器逻辑上将动作的参数压入堆栈。为了简化,在实施时可以将与内置的动作有关的行为短路。每个动作类型都指定其堆栈的用途。总的来说,ZSD解释器将只能分配较小的动作堆栈(例如16-32个元素),因此堆栈的使用应保持为最小限度。为了保证ZSD解释器总是具有足够的堆栈,ZSD编码器必须在首部(header)指定最大的堆栈尺寸。所有动作类型都应当避免递归,以简化最大堆栈尺寸的计算。表10中列出了示例性的动作类型。
Figure C200580017859D00271
Figure C200580017859D00281
Figure C200580017859D00291
Figure C200580017859D00311
表10——动作类型
表11  列出了可以与本发明一起使用的示例性的源。
 
源类型 参数 描述
UTF8串 0 UTF8串 该源类型保持来自UTF8字符集的字符串。这些串不可以超过256个字符。
统一编码串(UnicodeString) 1 统一代码串 该源类型拥有统一编码的字符。这些串不可以超过256个字符。
Figure C200580017859D00321
表11——源类型
根据本发明的示例性的实施方案,场景描述格式将所有场景互动信息分组在五个表中:对象表、事件表、动作表、源表以及一个或多个三元组表,如表12-17所述。分割成表可以消除大多数的冗余的信息,并且能够快速查找低端客户端44的互动行为。
 
描述
对象表 该表列出了场景中的所有对象。对象可以是例如PNode的高级别的实体,或者仅仅是场景上的区域。
时间表 该表列出了需要在该场景上处理的所有事件。客户可以忽略该表中未列出的任何事件。
动作表 该表列出了可以在该场景的对象上调用的所有动作。
源表 该表包含串和图像。其主要用途是从上
 
面的表中分离出串和图像数据,以便对于服务器来说切换主题和语言是不重要的。
三元组表 该表联合了对象、事件和动作。ZSD编码可以包括一个以上的三元组表,并且可以利用动作来在活动的事件之间切换。这使得能够在场景内创建状态机。
表12——ZSD表
 
字段 描述
对象ID 用于该对象的唯一ID。OID数字0代表整个场景
对象类型 对象的类型
描述 使XML更清楚的可选的串描述
参数 描述对象的附加参数
表13——对象表字段
 
字段 描述
事件ID 用于该事件的唯一ID
事件类型 事件的类型
描述 使XML更清楚的可选的串描述
参数 描述事件的附加参数
表14——事件表字段
 
字段 描述
动作ID 用于该动作的唯一ID。OID数字0代表整个场景
动作类型 动作的类型
下一个动作 将要运行的下一个动作的动作ID。将无动作(NoAction)实例指定为停止执行动作。指定动作循环是无效的。
描述 使XML更清楚的可选的串描述
参数 描述动作的附加参数
表15——动作表字段
 
字段       描述                                      
源ID       用于该源的唯一ID。0ID数字0代表整个场景  
主题ID     用于该源的主题ID                          
语言ID     用于该源的语言ID                          
源类型     源的类型                                  
描述       使XML更清楚的可选的串描述                 
参数       描述源的附加参数                          
表16——源表字段
 
字段类型   描述                                
对象ID     三元组的对象                        
事件ID     监控事件                            
动作ID     在收到事件后调用的动作              
布尔值 如果该三元组与事件匹配,其为真,以终止事件处理                        
描述       使XML更清楚的可选的串描述           
表17——三元组表字段
与根据本发明的示例性场景数据格式有关的各种附加信息,可以从上面通过引用并入本文的在先申请中获得。
没有本地存储的客户端设备44向服务器42发出场景和转换请求。表18提供了可以用来执行该功能的示例性的消息集。客户/服务器链路可以例如通过以太网连接、QPSK信道(目前用于OOB通信的电缆网络使用)或者任意其他的协议或连接类型来建立。本领域的技术人员可以理解的是,该消息集纯粹是示例性的,并且可以在该消息组中增加或删除消息。
 
消息名称   ID   源   描述  
 
请求场景(RequestScene) 0 客户端 请求指定的场景。
请求场景应答(RequestSceneAck) 1 服务器 对服务器发送请求的场景应答。
场景细节(SceneDetails) 2 服务器 如果服务器未发送具有MPEG-2场景转换的带内场景细节,则服务器可以将该场景细节发送给客户端。
调试控制(DebugControl) 3 服务器 该服务器将该消息发送到客户端以使能/停止调试记录和远程控制。
日志消息(LogMessage) 4 客户端 日志文本消息。客户端仅在调试模式中发送该消息。
通知事件(NotifyEvent) 5 客户端 通知事件已发生。客户端仅在调试模式中发送该消息。
通知动作(NotifyAction) 6 客户端 通知事件已被唤起。客户端仅在调试模式中发送该消息。
通知三元组(NotifyTriple) 7 客户端 告知匹配的三元组表的项。客户端仅在调试模式中发送该消息。
生成事件(GenerateEvent) 8 服务器 生成并唤起客户端的指定事件。这些事件为在保持模式中被唤起的事件。客户端仅在调试模式中接受该消息。
保持(Lookout) 9 服务器 保持/解锁客户端的所有由用户生成的事件。示例性的事件包括鼠标和键盘事件。客户端仅在调试模式中接受该消息。
识别(Identity) 10 客户端 每当客户端建立与服务器的连接时才会发送该消息来识别自己。
通知服务器上下文(NotifyServerContext) 11 客户端 当客户端的服务器上下文缓冲器不为空并且动作指令调用服务器通知或请求时,客户发送该消息。
请求屏幕捕获 12 服务器 服务器发送该消息来请求客户端获得
 
(RequestScreenCapture) 屏幕的快照,并在屏幕捕获(ScreenCapture)消息中将其发送回服务器。
屏幕捕获(ScreenCapture) 13 客户端 这是对请求屏幕捕获消息的响应消息。其包含所快照。
表18——客户-服务器消息
悬浮缩放
如上所述,根据本发明的示例性客户-服务器架构和方法的一个特征在于,能够在客户端生成的复杂用户界面,尽管考虑到与某些现有的客户端设备有关的可用的存储器和/和处理功率的数量相对较少。可以参照在本文中被称作“悬浮缩放”的用户界面互动,来了解上述系统和方法解决该问题的一个示例方式,例如这样一种过程:当用户在可以被选取的媒体节目上滚动光标和/或使指示器相对于其中止时,与该媒体节目有关的图像被放大,以使用户可以容易地看到哪个对象为选择做好了准备,图1(a)和1(b)说明了该过程的一个实施例。
在带宽有限的系统(例如其中客户端设备限制了存储器和/或处理功率的互动电视系统)中,实现悬浮缩放特征存在多个挑战。考虑这样一个实施例:其中使图1(a)中示出的用户界面屏幕,利用从用户界面服务器42发送到客户端44的MPEG数据流(包含与各种电影有关的封面艺术图像)进行绘制。用户界面屏幕的该视觉部分在本文中被称作背景层。当事件映射器710和事件处理器714意识到用户已经触发了悬浮缩放响应时,前景层(例如,“阿波罗13”图像的放大版本)被生成,并且被用来修改图1(a)的用户界面屏幕。有几种可能性来提供用于实现从图1(a)中示出的用户界面屏幕到图1(b)中示出的用户界面屏幕的转换的数据。实现悬浮缩放效果的一种方式是,使用户界面服务器42将对应于背景层和前景层的全部MPEG数据集发送到客户端44。然而,当考虑到用户可能快速地使光标滚动过用户界面中的潜在的大量屏幕对象时,用户界面服务器42需要发送相当大的数据量来实现本发明的该示例性实施方案,从而导致在实现客户端设备44上的屏幕转换时产生额外的延迟。
此外,从图1(a)与图1(b)的比较中可以看出,与图1(a)的未缩放版本有关的像素数据的重要(significant)部分,在创建图1(b)的悬浮缩放版本时被重新使用。因而,根据本发明的另一个示例性的实施方案,可以确定背景层中的像素与前景层中的像素之间的关系,并可以用它来减少需要发送到客户端设备44的数据的量,以产生悬浮缩放效果。依赖于将要被放大作为悬浮缩放效果的一部分的对象,这种关系可以相对简单一些或稍微更复杂一些。例如,放大图1(a)中的矩形DVD封面艺术图像的尺寸,主要涉及将矩形图形放大,以遮住作为转换的一部分的相邻的图像。另一方面,更复杂的形状(例如中心有孔的圆环形状的对象)在产生悬浮缩放效果时存在更复杂的情况。考虑到由于圆环形状的对象被放大,因此中间的孔将会扩张,从而使先前被隐藏的背景层像素在悬浮缩放效果出现之后显露出来。
根据本发明的一个示例性实施方案,图像的前景版本中的每个像素被归类为属于以下几类之一:(1)完全不透明的(可以从背景层中提取出像素颜色,因此不需要为了生成前景层而重新发送),(2)透明的(不相关的,因此不需要为了生成前景层而重新发送),(3)半透明的(例如,可以在图像边缘周围的像素上采用抗混叠技术,并且需要为这些像素发送前景层数据)以及(4)空(NULL)(例如,使背景像素显露出来的圆环性“孔”像素,需要发送背景层数据,因为不一定是从最初被发送用来创建未缩放的界面屏幕的背景层中,提取出了这些背景层数据)。能够使用任何希望的技术(包括人眼观察)和/或使用下面描述的伪代码处理技术,先验地进行这种分类,并生成前景/背景图,其中前景层中的每个像素被分类。悬浮缩放图被存储用于用户界面中触发悬浮缩放效果的每个图像。
捕获背景
for(node=scenegraph.rootO;node!=foreground node;node=nextnode)if(node bounds within foreground bounds)
paint node to background image
捕获前景
用前景初始尺寸(low-res foreground)绘制图像的前景节点
用前景最大尺寸(high-res foreground)绘制图像的前景节点
在映射之后,将该数据进行编码,以减少需要在步骤1010和1012保存和发送的数据的量,并且利用例如下面的伪代码、基于透明度(alpha)信息估计背景像素的相关性。
捕获透明度信息
计算前景节点起始边界,计算前景节点结束边界
创建具有前景起始边界尺寸的透明度图像,其中所述前景起始边界只包含透明度值,并且该透明度值被初始化为不透明
设定图像的透明度合成规则,以保持其当前值和绘制在前景起始边界上的像素值中的最小值
while(foreground.size()<ending bounds)对透明度图像画前景增
加前景的尺寸
当前景尺寸小于结束边界时,将前景绘制在透明度图像上,以增大前景尺寸
计算背景图像需要哪些像素
透明且不相关的原始背景图像中的任何像素
对于所有保留的相关背景像素
     If(low-res foreground pixel is transparent)
              Background pixel is irrelevant
     Else if(low-res foreground pixel is opaque and captured
alpha pixel is opaque)
            Background pixel is irrelevant
            Else
            Background pixel is relevant
根据需要,以这种方式对特定的图像进行解码,大多数前景层像素将被指定为不透明的,并且不需要被重新发送到客户端设备44以产生悬浮缩放效果。
图10概括地说明了根据本发明的该示例性实施方案的悬浮缩放处理。在图10中,提供了图像的MPEG(背景)版本1000和例如PNG或JPEG的将要被放大的图像(例如,图1(a)中的阿波罗13)的未缩放版本1002。背景图像1000与图像的未缩放版本1002合并,并且在步骤1006进行压缩之后,在MPEG数据流中将其发送到客户端设备44。在步骤1008,从存储器中重新获得上面描述的前景/背景图,并且利用该前景/背景图来确定需要发送与前景层和背景层有关的哪些像素数据。在步骤1010和1012,对这些像素数据进行编码(压缩),将其保存为ZSD图像文件,并将其发送到客户端设备44。尽管本发明的该示例性实施方案将这些信息作为场景数据(ZSD数据)(位于MPEG数据流之外)进行发送的,但是这些信息也可以可选地嵌入MPEG数据流中。
通过阅读前面对根据本发明的示例性实施方案的悬浮缩放技术的讨论,应当理解的是,通过智能地选取用于待发送的特定数据的编码流,可以解决在客户端设备(其连接到例如电缆网络)生成复杂的用户界面(例如,采用缩放的用户界面)时存在的某些挑战。在前述的悬浮缩放的实施例中,利用在这种网络中可以获得的MPEG编码流来发送背景数据,而利用不同类型的编码(如上所述)来发送前景信息(被处理用于通过OSD层进行呈现)。然而,本发明的示例性实施方案预期其他的服务器/客户数据传输从下面的处理方式中受益:在向客户端设备44供应数据上游节点之一处选择性地确定,什么类型的编码/数据流对于要被发送的数据(尤其是与缩放用户界面有关的数据)是适合的。
图11示出了上述的一般概念。在图11中,在模块1100对数据进行估计,以确定它是第一数据还是第二数据,并且选择性地确定用于处理数据的编码的类型(和相关的发送数据流)。第一数据和第二数据可以是不同类型的数据或者是具有不同特征的相同类型的数据。前者的一个示例为悬浮缩放数据(背景数据为第一数据,而前景数据为第二数据)。后者的一个示例为文本。MPEG编码对于文本的编码并不是特别有效,因此希望在某些情况下利用其他类型的编码来对文本进行编码,例如,如果要发送的文本小于预定的字体大小(例如,16个点)的话。
根据本发明的示例性实施方案的用于处理元数据的系统和方法,可以由运行存储设备(未示出)中所包含的指令序列的处理器来执行。可以从例如辅助数据存储设备的其他计算机可读的介质中将这种指令读入存储设备中。存储设备中所包含的指令序列的运行使得处理器例如如前所述那样操作。在可选的实施方案中,硬连线电路可以用来取代软件指令或者与软件指令结合,以实现本发明。
上述的实施方案在所有方面都是为了说明本发明,而不是限制。因此,在具体实现中本领域的技术人员可以从本文中包含的说明中推出本发明的许多变体。例如,尽管在前述的示例性实施方案中已经描述了MPEG编码和MPEG数据流,但是应当理解的是,不同类型的编码和数据流可以部分或全部取代MPEG编码和MPEG数据流,例如在基于Windows媒体内容中使用的视频编码和类似的编码。此外,尽管将(MPEG)图像和/或视频数据描述成是通过所有或部分电缆网络传输的,但是本发明同样适用于其中图像和/或视频数据在本地是可获得的(例如在家用磁盘上或者从本地服务器)的系统。所有这些变体和修改都被认为是落入了所附的权利要求所限定的保护范围。除非有明确说明,否则本申请的说明书中所使用的所有元素、行为、或是指令均不可被解释为本发明的关键点或基本点。同样,这里所使用的冠词“一”趋向于包括一个或多个。

Claims (14)

1.一种利用通过电缆网络传输的数据在电视上生成缩放的用户界面的方法,所述方法包括:
在所述电视上生成第一用户界面屏幕,所述第一用户界面屏幕具有与之相关的多个图像,利用MPEG编码,通过所述电缆网络将所述多个图像作为与所述第一用户界面屏幕相关的第一数据集的一部分,发送到与所述电视相连的机顶盒;
在与所述电视相连的机顶盒处提供客户端用户界面状态机,所述客户端用户界面状态机接收所述多个图像,并基于所述多个图像控制所述第一用户界面屏幕的生成;
所述客户端用户界面状态机接收与所述第一用户界面屏幕有关互动数据;
向设置于所述机顶盒上游的请求处理器请求信息,以基于所述用户互动数据提供从所述第一用户界面屏幕到第二用户界面屏幕的缩放转换;
所述机顶盒接收与所述缩放转换和所述第二用户界面屏幕有关的第二数据集,其中所述第二数据集的一部分作为MPEG数据流被接收,所述第二数据集的另一部分作为不同于所述MPEG数据流的另一数据流被接收,其中所述另一数据流与所述第二用户界面的场景描述数据有关;以及
在所述客户端用户界面状态机的控制下,利用所述第二数据集在所述电视上生成所述缩放转换和所述第二用户界面。
2.如权利要求1所述的方法,其中所述缩放转换是进行悬浮缩放,所述第二用户界面屏幕描绘所述第一用户界面屏幕中的所述多个图像之一的放大版本,所述多个图像之一由所述用户选取,并且部分遮掩所述多个图像中的其他图像。
3.如权利要求1所述的方法,其中所述缩放转换包括对所述多个图像之一进行放大和转换。
4.如权利要求3所述的方法,其中所述第二用户界面屏幕描绘与所述多个图像中被选取的一个图像有关的额外细节。
5.如权利要求4所述的方法,其中所述额外细节在所述电视机上被绘制成文本,所述文本由所述客户端用户界面状态机经由所述另一数据流接收。
6.如权利要求1所述的方法,其中所述第一和第二数据集包括场景描述,所述场景描述指导所述客户端用户界面状态机如何利用包含在所述第一数据集和所述第二数据集中的其他数据分别绘制所述第一用户界面屏幕和所述第二用户界面屏幕,所述的其他数据包括所述的多个图像。
7.一种用于在电缆通信网络中基于从上游节点发送到客户设备的数据生成可缩放的用户界面的方法,包括以下步骤:
利用第一类型的编码和第一数据流接收第一数据;
利用第二类型的编码和第二数据流接收第二数据,所述第二类型的编码不同于所述第一类型的编码;以及
在所述客户设备端,利用所述第一数据和所述第二数据生成所述可缩放的用户界面;
其中,所述第一类型的编码是MPEG编码,所述第二类型的编码是场景数据编码;以及
其中,所述第一数据是与将要在所述用户界面上生成的背景层有关的图像或视频数据,所述第二数据是与将要在所述用户界面上生成的前景层有关的图像或文本数据。
8.如权利要求7所述的方法,进一步包括以下步骤:
如果所述文本具有大于预定阈值的字体大小,则将所述文本作为第一数据通过所述第一数据流发送;否则
将所述文本作为第二数据通过所述第二数据流发送。
9.如权利要求7所述的方法,其中所述上游节点为所述电缆通信网络的头端器部分。
10.如权利要求7所述的方法,其中所述客户设备为机顶盒和个人计算机之一。
11.一种用于在电缆通信网络中从上游节点向客户设备发送用于生成可缩放的用户界面的数据的系统,包括:
上游处理器,用于利用第一类型的编码和第一数据流来发送第一数据,以及用于利用第二类型的编码和第二数据流来发送第二数据,并且所述第二类型的编码不同于所述第一类型的编码;以及
客户端处理器,用于利用所述第一数据和所述第二数据、在所述客户设备上生成所述可缩放的用户界面,
其中,所述第一类型的编码是MPEG编码,所述第二类型的编码是场景数据编码;以及
其中,所述第一数据是与将要在所述用户界面上生成的背景层有关的图像或视频数据,所述第二数据是与将要在所述用户界面上生成的前景层有关的图像或文本数据。
12.如权利要求11所述的系统,其中,所述上游处理器进一步操作执行以下步骤:
如果所述文本具有大于预定阈值的字体大小,则将所述文本作为第一数据通过所述第一数据流发送;否则
将所述文本作为第二数据通过所述第二数据流发送。
13.如权利要求11所述的系统,其中所述上游节点为所述电缆通信网络的头端器部分。
14.如权利要求11所述的系统,其中所述客户设备为机顶盒和个人计算机之一。
CNB2005800178592A 2004-06-03 2005-06-03 用于生成可缩放的用户界面的系统及方法 Expired - Fee Related CN100507811C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US57678604P 2004-06-03 2004-06-03
US60/576,786 2004-06-03

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CNA2008101679245A Division CN101399941A (zh) 2004-06-03 2005-06-03 用于可缩放的用户界面的客户-服务器架构及方法

Publications (2)

Publication Number Publication Date
CN1961281A CN1961281A (zh) 2007-05-09
CN100507811C true CN100507811C (zh) 2009-07-01

Family

ID=35463635

Family Applications (2)

Application Number Title Priority Date Filing Date
CNA2008101679245A Pending CN101399941A (zh) 2004-06-03 2005-06-03 用于可缩放的用户界面的客户-服务器架构及方法
CNB2005800178592A Expired - Fee Related CN100507811C (zh) 2004-06-03 2005-06-03 用于生成可缩放的用户界面的系统及方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNA2008101679245A Pending CN101399941A (zh) 2004-06-03 2005-06-03 用于可缩放的用户界面的客户-服务器架构及方法

Country Status (6)

Country Link
US (2) US7634793B2 (zh)
EP (1) EP1769318B1 (zh)
JP (1) JP4955544B2 (zh)
KR (1) KR101193698B1 (zh)
CN (2) CN101399941A (zh)
WO (1) WO2005120067A2 (zh)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070013723A1 (en) * 2005-07-12 2007-01-18 Microsoft Corporation Magnification engine and interface for computers
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
US8225231B2 (en) 2005-08-30 2012-07-17 Microsoft Corporation Aggregation of PC settings
FR2895190A1 (fr) * 2005-12-19 2007-06-22 France Telecom Procede de fourniture d'un service multimedia a la demande, plate-forme de service, programme et decodeur pour la mise en oeuvre du procede
EP1987484A4 (en) * 2006-02-16 2011-05-25 Hillcrest Lab Inc SYSTEMS AND METHOD FOR PLACING ADVERTISING CONTENT
KR100808991B1 (ko) * 2006-05-04 2008-03-07 삼성전자주식회사 이동통신 단말기에서 전자사전을 이용한 단어검색 방법 및장치
US7956849B2 (en) 2006-09-06 2011-06-07 Apple Inc. Video manager for portable multifunction device
US7864163B2 (en) 2006-09-06 2011-01-04 Apple Inc. Portable electronic device, method, and graphical user interface for displaying structured electronic documents
WO2008044916A2 (en) * 2006-09-29 2008-04-17 Avinity Systems B.V. Method for streaming parallel user sessions, system and computer software
US8056014B2 (en) * 2006-10-04 2011-11-08 International Business Machines Corporation Web portal page interactive user interfaces with maximum accessibility to user selected portlets
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US9042454B2 (en) 2007-01-12 2015-05-26 Activevideo Networks, Inc. Interactive encoded content system including object models for viewing on a remote device
US20100095236A1 (en) * 2007-03-15 2010-04-15 Ralph Andrew Silberstein Methods and apparatus for automated aesthetic transitioning between scene graphs
KR101446939B1 (ko) * 2007-03-30 2014-10-06 삼성전자주식회사 원격 제어 장치 및 그 제어 방법
US20080301735A1 (en) * 2007-05-31 2008-12-04 Christian Thomas Chicles User interface screen magnifying glass effect
US8127233B2 (en) * 2007-09-24 2012-02-28 Microsoft Corporation Remote user interface updates using difference and motion encoding
US8619877B2 (en) * 2007-10-11 2013-12-31 Microsoft Corporation Optimized key frame caching for remote interface rendering
US8121423B2 (en) 2007-10-12 2012-02-21 Microsoft Corporation Remote user interface raster segment motion detection and encoding
US8106909B2 (en) * 2007-10-13 2012-01-31 Microsoft Corporation Common key frame caching for a remote user interface
US20090128581A1 (en) * 2007-11-20 2009-05-21 Microsoft Corporation Custom transition framework for application state transitions
US9100716B2 (en) * 2008-01-07 2015-08-04 Hillcrest Laboratories, Inc. Augmenting client-server architectures and methods with personal computers to support media applications
US20090177538A1 (en) * 2008-01-08 2009-07-09 Microsoft Corporation Zoomable advertisements with targeted content
KR101560183B1 (ko) * 2008-04-17 2015-10-15 삼성전자주식회사 사용자 인터페이스를 제공/수신하는 방법 및 장치
KR101545137B1 (ko) * 2008-04-17 2015-08-19 삼성전자주식회사 사용자 인터페이스를 생성하는 방법 및 장치
KR20090110202A (ko) * 2008-04-17 2009-10-21 삼성전자주식회사 개인화된 사용자 인터페이스를 디스플레이하는 방법 및 장치
KR101531165B1 (ko) * 2008-04-17 2015-06-25 삼성전자주식회사 클라이언트의 특성을 고려한 사용자 인터페이스를 제공, 수신하는 방법 및 장치
US20090323799A1 (en) * 2008-06-25 2009-12-31 Stmicroelectronics, Inc. System and method for rendering a high-performance virtual desktop using compression technology
US9028260B2 (en) * 2008-09-29 2015-05-12 Cisco Technology, Inc. Automated quiz generation system
KR20100040545A (ko) * 2008-10-10 2010-04-20 삼성전자주식회사 구조화된 리치 미디어 데이터 기반의 사용자 인터페이스를 제공하기 위한 장치 및 방법
US20100149301A1 (en) * 2008-12-15 2010-06-17 Microsoft Corporation Video Conferencing Subscription Using Multiple Bit Rate Streams
US9565479B2 (en) * 2009-08-10 2017-02-07 Sling Media Pvt Ltd. Methods and apparatus for seeking within a media stream using scene detection
US8397167B2 (en) * 2009-08-18 2013-03-12 Dell Products, Lp System and method for a remote console preview of a server
US8947492B2 (en) * 2010-06-18 2015-02-03 Microsoft Corporation Combining multiple bit rate and scalable video coding
US8957920B2 (en) 2010-06-25 2015-02-17 Microsoft Corporation Alternative semantics for zoom operations in a zoomable scene
CN101938631A (zh) * 2010-08-31 2011-01-05 中山大学 一种基于sdf中间件的视频点播系统及方法
US9195774B2 (en) * 2010-09-17 2015-11-24 Kontera Technologies, Inc. Methods and systems for augmenting content displayed on a mobile device
US10387524B2 (en) * 2010-09-29 2019-08-20 Open Text Sa Ulc System and method for managing objects using an object map
US8954885B2 (en) * 2010-10-05 2015-02-10 Fergason Patent Properties, Llc Display system using metadata to adjust area of interest and method
AU2011315950B2 (en) 2010-10-14 2015-09-03 Activevideo Networks, Inc. Streaming digital video between video devices using a cable television system
TWI427534B (zh) * 2010-10-20 2014-02-21 藉由圖騰伺服器產生網頁圖騰之方法
US9377876B2 (en) * 2010-12-15 2016-06-28 Hillcrest Laboratories, Inc. Visual whiteboard for television-based social network
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
DE102011002822A1 (de) 2011-01-18 2012-07-19 Siemens Ag Österreich Verfahren und System zum Erstellen einer Bedienoberfläche für interaktive Media-Anwendungen
US9030405B2 (en) 2011-02-04 2015-05-12 Invensense, Inc. High fidelity remote controller device for digital living room
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
US8819555B2 (en) * 2011-04-07 2014-08-26 Sony Corporation User interface for audio video display device such as TV
WO2012138660A2 (en) 2011-04-07 2012-10-11 Activevideo Networks, Inc. Reduction of latency in video distribution networks using adaptive bit rates
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US10353566B2 (en) * 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US8922575B2 (en) 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US8332767B1 (en) * 2011-11-07 2012-12-11 Jeffrey Beil System and method for dynamic coordination of timelines having common inspectable elements
US9437247B2 (en) * 2011-11-14 2016-09-06 Apple Inc. Preview display for multi-camera media clips
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
US20140006958A1 (en) * 2012-06-29 2014-01-02 Infinera Corporation Digital link viewer
US9979960B2 (en) 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
CN103067787B (zh) * 2013-01-31 2016-08-10 深圳市酷开网络科技有限公司 一种智能电视的交互系统及方法
US20140240353A1 (en) * 2013-02-27 2014-08-28 Blendagram, Inc. System for and method of augmenting video and images
WO2014145921A1 (en) 2013-03-15 2014-09-18 Activevideo Networks, Inc. A multiple-mode system and method for providing user selectable video content
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
EP3005712A1 (en) 2013-06-06 2016-04-13 ActiveVideo Networks, Inc. Overlay rendering of user interface onto source video
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9674558B2 (en) * 2013-10-09 2017-06-06 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method for managing digital video compression systems
US10740540B2 (en) * 2013-12-13 2020-08-11 Freedom Scientific, Inc. Techniques for programmatic magnification of visible content elements of markup language documents
US9271048B2 (en) * 2013-12-13 2016-02-23 The Directv Group, Inc. Systems and methods for immersive viewing experience
KR102298602B1 (ko) 2014-04-04 2021-09-03 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 확장가능한 애플리케이션 표시
KR20160143784A (ko) 2014-04-10 2016-12-14 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 컴퓨팅 디바이스용 슬라이더 커버
WO2015154273A1 (en) 2014-04-10 2015-10-15 Microsoft Technology Licensing, Llc Collapsible shell cover for computing device
CN108073334B (zh) * 2014-07-24 2020-12-25 Oppo广东移动通信有限公司 一种基于矢量运算的悬浮触控方法及装置
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
CN106662891B (zh) 2014-10-30 2019-10-11 微软技术许可有限责任公司 多配置输入设备
US20160371872A1 (en) * 2015-06-18 2016-12-22 Facebook, Inc. Systems and methods for providing transitions between content interfaces
US10365808B2 (en) 2016-04-28 2019-07-30 Microsoft Technology Licensing, Llc Metadata-based navigation in semantic zoom environment
CN105872604B (zh) * 2016-06-15 2018-09-21 武汉斗鱼网络科技有限公司 基于不同用户状态的直播视频流推送方法及系统
US10368080B2 (en) 2016-10-21 2019-07-30 Microsoft Technology Licensing, Llc Selective upsampling or refresh of chroma sample values

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69322769T2 (de) * 1992-03-03 1999-07-22 Toshiba Kawasaki Kk Koder für zeitveränderliche bilder
US5524195A (en) * 1993-05-24 1996-06-04 Sun Microsystems, Inc. Graphical user interface for interactive television with an animated agent
US5907323A (en) * 1995-05-05 1999-05-25 Microsoft Corporation Interactive program summary panel
US5845083A (en) * 1996-03-07 1998-12-01 Mitsubishi Semiconductor America, Inc. MPEG encoding and decoding system for multimedia applications
US6606746B1 (en) * 1997-10-16 2003-08-12 Opentv, Inc. Interactive television system and method for displaying a graphical user interface using insert pictures
JP2001507908A (ja) * 1997-11-07 2001-06-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像シーケンスの符号化
US6711297B1 (en) * 1998-07-03 2004-03-23 University Of Pittsburgh - Of The Commonwealth System Of Higher Education Methods and apparatus for dynamic transfer of image data
JP3645720B2 (ja) * 1998-10-02 2005-05-11 松下電器産業株式会社 Epg情報表示方法、及びプログラム記録媒体
JP4228542B2 (ja) * 1998-11-30 2009-02-25 ソニー株式会社 情報提供装置及び情報提供方法
WO2000079797A1 (en) * 1999-06-18 2000-12-28 Intel Corporation Systems and methods for enhanced visual presentation using interactive video streams
JP2001067163A (ja) * 1999-08-25 2001-03-16 Sony Corp 情報処理装置および情報処理方法、並びに記録媒体
US6525732B1 (en) * 2000-02-17 2003-02-25 Wisconsin Alumni Research Foundation Network-based viewing of images of three-dimensional objects
KR100739281B1 (ko) * 2000-02-21 2007-07-12 주식회사 팬택앤큐리텔 움직임 추정 방법 및 장치
US6804708B1 (en) 2000-06-29 2004-10-12 Scientific-Atlanta, Inc. Media-on-demand flexible and adaptive architecture
FR2818053B1 (fr) * 2000-12-07 2003-01-10 Thomson Multimedia Sa Procede et dispositif de codage pour l'affichage d'un zoom d'une image codee mpeg2
JP2002259077A (ja) * 2001-03-01 2002-09-13 Konica Corp ネットワークプリントシステム及びネットワークプリント方法並びに情報記録媒体
US20030011636A1 (en) 2001-06-14 2003-01-16 Gene Feroglia Method for magnifying images on a display screen and an interactive television guide system implementing the method
JP2003153254A (ja) * 2001-08-31 2003-05-23 Canon Inc データ処理装置及びデータ処理方法、並びにプログラム、記憶媒体
US7260257B2 (en) * 2002-06-19 2007-08-21 Microsoft Corp. System and method for whiteboard and audio capture
US20040268393A1 (en) 2003-05-08 2004-12-30 Hunleth Frank A. Control framework with a zoomable graphical user interface for organizing, selecting and launching media items
KR101167827B1 (ko) 2004-01-16 2012-07-26 힐크레스트 래보래토리스, 인크. 메타데이터 중개 서버 및 방법

Also Published As

Publication number Publication date
KR20070027683A (ko) 2007-03-09
US20050283798A1 (en) 2005-12-22
EP1769318A2 (en) 2007-04-04
US7634793B2 (en) 2009-12-15
EP1769318B1 (en) 2015-12-23
KR101193698B1 (ko) 2012-10-22
CN1961281A (zh) 2007-05-09
WO2005120067A3 (en) 2006-10-26
US20100086022A1 (en) 2010-04-08
EP1769318A4 (en) 2007-07-18
CN101399941A (zh) 2009-04-01
WO2005120067A2 (en) 2005-12-15
JP4955544B2 (ja) 2012-06-20
JP2008502230A (ja) 2008-01-24

Similar Documents

Publication Publication Date Title
CN100507811C (zh) 用于生成可缩放的用户界面的系统及方法
JP6677781B2 (ja) コンテンツ表示の方法、デバイス及び記憶媒体
US9100716B2 (en) Augmenting client-server architectures and methods with personal computers to support media applications
US20170223420A1 (en) Multimedia systems, methods and applications
TW497043B (en) System and method for selectively displaying internet content and television programming on a display, and system and method for alternately displaying internet content and a television program signal on a television screen
CN103108248B (zh) 一种互动式视频的实现方法和系统
CN108475158A (zh) 基于轻扫手势让内容项目间能够转换的系统及方法
US20080178125A1 (en) Providing dynamic content in a user interface in an application
US20100017372A1 (en) Apparatus and method for providing user interface service in a multimedia system
CN102075800A (zh) 基于交互式个人电视机顶盒文件播放控制方法及系统
CN105874807A (zh) 用于在电视设备上对Web内容远程渲染的方法、系统和介质
JP6078476B2 (ja) メディアアセットに関する説明情報の表示をカスタマイズする方法
CN113115082B (zh) 显示设备及历史行为显示方法
CN116708390A (zh) 显示设备、贴片广告的显示方法、及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180606

Address after: Delaware

Patentee after: IDHL holding company

Address before: American Maryland

Patentee before: Hillcrest Lab Inc.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090701

Termination date: 20180603