配置为与图像显示设备通信的图像源的制作方法

文档序号:7747946阅读:344来源:国知局
专利名称:配置为与图像显示设备通信的图像源的制作方法
技术领域
本发明总体上涉及处理图像数据的装置、系统和方法,更具体地,涉及提供客户机 图像源设备和目标服务器显示设备之间的网络通信的装置、系统和方法。
背景技术
通常,通过如膝上型或台式计算机、个人数字助理(PDA)或其他计算设备这样的 图像源向显示设备提供图像数据。某些显示设备配置为从图像源无线地接收图像数据,例 如通过如802. llb(或其他802. 11协议)、蓝牙等这样的通信协议。这些显示设备可以允许 从会议室内的几乎任何位置快速地连接图像源,从而可以有助于对单个显示设备使用多个 图像源。然而,支持对单个显示设备使用多个图像源会造成各种困难。例如,不同的图像源 可能使用不同的软件以生成和/或显示不同格式的图像文件。在此情况下,支持多个图像 源的显示设备可能需要包括用于解压缩、提供和/或显示多种不同类型的图像文件的适合 的软件。在很多情况下,该软件可能由显示设备制造商之外的公司提供。因此,安装和更新 这样的软件会使显示设备暴露于软件病毒、编程缺陷,及超出显示设备制造商控制的其他 问题之下。此外,存储和执行显示所有所需图像数据格式需要的多个软件程序可能要求较 大的存储量和较强的处理能力。一种减少显示设备上所需的软件数量的可行方法可以是仅将原始数据文件从每 个图像源传输到显示设备,而不是传输格式化的图像数据文件。在此情况下,显示设备可以 只需要支持单种图像数据格式,这可以简化显示设备的软件需求。然而,与格式化的图像文 件相比,这样的原始数据文件可能很大,因此可能需要较长的时间来从图像源传输到显示 设备,这取决于所使用的通信信道的带宽。在需要用这样的显示设备显示实时视频时,通信 信道的带宽对于以典型的视频数据帧率(通常约为20帧/秒或更高)传输原始图像数据 文件来说可能太小。

发明内容
本发明提供一种配置为与图像显示设备通信的图像源,包括配置为允许图像数 据从所述图像源到所述图像显示设备的传输,以便基于所传输的图像数据显示图像的通信 协议,所述通信协议包括多个不同的数据结构,其中所述多个不同的数据结构包括定义为 包括位图信息的位图结构;及多个不同的标签,其中适配所述通信协议,使得使用所述通信协议的图像源和图像显示设备之间的通信作为串行数据流发生,所述串行数据流包括使用 从所述多个不同的数据结构中选择的数据结构编码的数据部分,且其中所述多个不同的标 签中的每个都关联于并对应于所述多个不同的数据结构中特定的一个,以有助于图像数据 的传输和允许在目标处对所述串行数据流进行解析。所述多个不同的数据结构包括定义为包括颜色空间信息的颜色空间结构。所述多个不同的数据结构包括定义为包括压缩信息的压缩结构。所述多个不同的数据结构包括定义为包括标记信息的标记结构。所述多个不同的数据结构包括定义为包括设置分辨率信息的设置分辨率结构。所述通信协议包括适配用于提供所述图像源和所述图像显示设备之间的分辨率 协商的反向信道。所述通信协议配置为允许双向客户机-服务器通信,以便对所述图像数据到图像 显示设备的传输提供流控制。所述通信协议包括正向信道,其中数据流向所述图像显示设备,及反向信道,其中 数据流向所述图像源。所述反向信道适配用于允许所述图像源和所述图像显示设备之间的分辨率协商。所述反向信道适配用于对所述图像数据到图像显示设备的传输提供流控制。由所述图像显示设备在所述反向信道中报告可用缓冲器大小。


图1是根据本发明的第一实施例的图像数据处理系统的示意图。图2是可以连同本发明的软件、系统和方法使用的示例计算设备的示意图。图3是根据本发明的处理图像数据的示例方法的流程图。图4是根据本发明进行通信的示例客户机图像源设备和目标服务器显示设备的 示意图。图5-12示出可以使用以有助于一个或多个图像源设备和一个或多个目标显示设 备之间的网络通信的网络通信协议的多个示例方面。
具体实施例方式图1总地在20处示出根据本发明的第一实施例的图像数据处理系统的示意图。图 像处理系统20包括配置为在观看面24上显示图像的显示设备22。显示设备22可以是任 何适合类型的显示设备。其示例包括但不限于,液晶显示器(LCD)和数字光处理(DLP)投 影机,电视系统,计算机监控器等等。图像处理系统20还包括与显示设备22关联的图像提供设备26,及一个或多个通 过网络30与图像提供设备26进行电通信的图像源28。图像提供设备26配置为接收由图 像源28发送的图像数据,并处理所接收的图像数据以用于由显示设备22显示。图像提供 设备26可以集成到显示设备22中,或可以作为可连接到显示设备的单独组件提供。适合 的图像提供设备的一个示例在2003年6月2日提交、序列号为10/453,905的美国专利申 请中公开,将该申请结合在此作为参考。系统20的各部分之间的互连可以是无线的(如, 网络30可以是无线网络)、有线的,或有线与无线链路的组合。
回到图1,图像源28可以包括能够向图像提供设备26提供图像数据的任何适合的 设备。其示例包括但不限于,台式计算机和/或服务器28a、膝上型计算机28b、个人数字助 理(PDA) 28c、移动电话28d等等。此外,图像源28可以按任何适合的方式与图像提供设备 26进行电通信。在所示实施例中,每个图像源28都通过无线网络30与图像提供设备26进 行电通信。然而,图像源28也可以通过有线网络、通过无线或有线直接连接等等或它们的 任何组合与图像提供设备26进行通信。图像源28和/或显示设备22可以实现为具有图2的示例计算设备40中示出的 部分或所有组件的计算设备。计算设备40包括通过总线48互连的处理器42、存储器44和 /或存储46。也可以连接各种输入设备50(如,键盘、鼠标等)以允许用户输入。可以通过 与显示控制器52连接的监视器或其他显示器提供输出。如所示,网络接口 54也可以连接 到总线48,以便允许与连接到网络30的其他设备的通信。如下文中更详细的说明,在本文 中描述的图像处理系统和方法中,通常需要图像源/客户机设备(如,图像源28)通过网络 与服务器显示设备(如,显示设备22)进行无线通信。在客户机和/或服务器设备中,包括 无线协议的网络通信软件60可以运行在存储器44中并用于允许无线网络通信。再次回到图1,在图像源28配置为处理多种格式的图像数据时,图像提供设备26 可以配置为解码每种所需图像数据格式的数据。然而,如上所述,这可能要求图像提供设备 26具有足够的存储器来存储解码每种所需格式的单独的软件程序。此外,这些软件程序中 的很多可能由图像提供设备26的制造商之外的来源提供。因此,使用这样的软件会减少图 像提供设备26的制造商对安装在图像提供设备和/或显示设备22上的软件程序的控制。 这会使这些显示设备对软件安装、升级等等期间由外部软件引入的病毒、缺陷及其他问题 开放。为了简化图像提供设备26的操作和软件需求,每个图像源28都可以包括配置为 生成显示器32上的图像的位图,然后将该位图发送到图像提供设备26以用于由显示设备 22显示的软件。这提供了这样的优点图像提供设备26只需要包括用于接收和解码单种 格式的图像数据的软件,且因此有助于防止在软件安装和/或更新期间将病毒、缺陷及其 他问题引入到图像提供设备26上。然而,如上所述,未压缩的位图文件可能相当大,因此发 送到图像提供设备26会消耗较长的时间,这取决于所使用的通信信道的带宽。对较高分辨 率的格式的图像,如XGA及以上来说尤其如此。在数据是视频数据时,新数据帧传输到图像 提供设备26的速率可能约为20帧/秒或更高。在此情况下,帧率可能比生成并将整个位 图发送到图像提供设备26的速率更快,这可能导致视频图像的传输和显示的误差。为了避免传输和显示误差,可以在传输之前处理从显示在图像源28中的一个上 的图像生成的位图,以减少对每帧图像数据发送的数据量。图3总地在100处示出处理从 图像源28中的一个上的显示器32生成的位像数据的方法的示例实施例。方法100通 常由软件代码执行,该软件代码通常存储在图像源28上的存储器中,并可由每个图像源上 的处理器执行。为了减少发送到图像提供设备26的数据量,方法100通常仅发送一帧或一组图像 数据中不同于紧接当前帧之前发送的那帧或那组图像数据的那些部分。因此,方法100可 以首先在102处比较先前发送的一组或一帧图像数据N与当前显示在显示器32上的一组 或一帧图像数据N+1,然后可以在104处确定帧N+1中不同于帧N的部分。
在102处两帧图像数据的比较及在104处已改变部分的确定可以按任何适合的方 式执行。例如,帧N和N+1中的每个可以存储在缓冲器中,然后可以用存储在N+1缓冲器中 的图像数据的每个像素与存储在N缓冲器中的图像数据的每个像素比较。在改变确定时,可以定义已改变区域以用于按任何适合的方式压缩。例如,在某些 实施例中,检测到的所有改变可以由所画出的包含图像数据的帧N+1中所有已改变区域的 具有可变尺寸的单个矩形区域定义。然而,可能存在这样的情况,其中这样定义已改变部分 的方案导致实际上未从先前发送的帧改变的大量数据的压缩和传输。相应地,如在106处所示,方法100可以包括通过将已改变部分划分为不同的区域 来定义图像数据帧N的已改变部分。为了最小化未改变数据的传输,区域通常是可在帧中 给定的已改变部分周围定义的最小的边界矩形。仍旧参考图3,在将已改变部分划分为区域之前、同时或之后,方法100可以包括 在108处确定正被编码和发送的图像的调色板,及在110处将有关调色板的更新发送到图 像提供设备26来协助压缩图像数据的解压缩。这是因为24位颜色可以用调色板中的8位 查找值来缩写。当重复使用颜色时,8位缩写使得发送的数据更少。作为补充或替换,应理 解,可以使用任何位数的查找表。例如,可以使用12位或16位的查找表。接下来,可以在118处将图像数据转换到亮度/色度颜色空间。适合的亮度/色 度颜色空间的示例包括设备相关的颜色空间,如YCrCb颜色空间,以及设备无关的颜色空 间,如CIE XYZ和CIE颜色空间。适合的设备无关颜色空间的另一个示例如下所 述。颜色空间包括亮度r值和色度s及t值,且通过下面的公式从CIE L * a * b *颜色空间 导出r = (L'min) (『max/'-I maxmin))
s = (a ^ i -a")(s / min' ^ max'max 已min))
t =t \ / , min乂、Lmax,'-b maxmin))从这些公式中计算出的r,s和t值可以四舍五入或截取到最接近的整数值,以将 数字格式从浮点改变为整数格式,从而简化涉及颜色空间中的值的计算。在这些公式中,值 L * _,L * fflin, a * _,a * fflin, b 和b * fflin可以对应于L \ a *和b *颜色空间坐标中各自的 实际限制,或对应于另一颜色空间,如选择的图像设备28的颜色空间在映射到CIE L*a*b *颜色空间上时的最大值和最小值。值r_,和t_对应于r,s和t颜色坐标中各自的 最大整数值,且取决于用于表示每个坐标的位数。例如,在用六位来表示每个坐标时,对每 个坐标存在六十四个可能的整数值(0-63),且r_,sfflax和t_每个都具有值63。在颜色空间转换之后,可以在120处过滤低变化的数据,以使得非计算机图形数 据(“非CG数据”)更加酷似计算机图形数据(“CG数据”)。包含CG数据的图像,如视频 游戏、数字幻灯片演示文件等等与包含非CG数据的图像,如电影、静态照片等等相比,趋向 于对较高频率的图像数据具有更清晰的颜色边界。由于这些数据类型在颜色边界处的不同 特性,不同的压缩算法趋向于对CG数据比非CG数据更好地工作。某些现有的图像数据处 理系统尝试确定数据是CG数据还是非CG数据,然后对每种类型的数据使用不同的压缩器。 然而,将CG数据错误识别为非CG数据,或相反,会导致这些系统中的压缩效率损失。因此, 过滤低变化数据120可以包括识别具有低于预先选择的阈值变化的变化的相邻图像数据 值,这可能表明相近颜色之间的过渡,然后改变某些图像数据值来减少该变化,从而创建更加酷似CG数据的颜色边界。低变化数据的过滤因此可以允许用同一压缩器适当地压缩非 CG数据和CG数据。对非CG数据做出的改变通常仅对具有低于可感知阈值的变化的相邻值 做出,虽然可以可选地对具有高于可感知阈值的变化的值做出改变。可以使用任何适合的方法来从图像数据层内的图像数据中过滤低变化数据。适合 的方法的一个示例是使用简单的陷波降噪滤波器来消除低变化数据。陷波降噪滤波器可以 按如下所述实现。设P。表示当前像素,Pl表示当前像素左边的像素,而^表示当前像素右 边的像素。首先,计算出PcJPPl之间的差值屯及口。和化之间的差值4。接下来,比较屯 和dr。如果屯和4的绝对值不相等,且屯和4中较低的一个的绝对值低于预先选择的可 感知阈值,则可以将P。重置为等于Pl或化以将屯和4中较低的一个改变为0。或者,可以 将Pi和^中的任一个改变为等于P。来实现相同的结果。如果屯和火的绝对值相等,则将p。改变为等于Pl等价于将P。改变为等于^。在 此情况下,如果屯和4的绝对值低于预先确定的可感知阈值,则可以将p。改变为等于Pl和 Pr中的任一个。此外,如果屯和4两者绝对值都高于预先选择的可感知阈值,则不改变p。、 Pl,或h中的任一个。应理解,上述过滤方法只是示例性的,且可以使用过滤低变化数据以 使得非CG更加酷似CG数据的其他适合的方法。例如,在屯和4的绝对值相等并低于预先 选择的可感知阈值时,可以使用判定函数来确定是否改变当前像素来匹配左边或右边,或 者上边或下边的相邻像素。除过滤低变化数据来使得非CG数据更加酷似CG数据之外,方法100还包括在122 处对图像数据的色度值进行二次抽样。通常,色度二次抽样是一种涉及以比至少一个其他 颜色空间分量更低的空间频率对至少一个颜色空间分量进行抽样的压缩技术。解压缩设备 重新计算丢失的分量。常见的用于亮度/色度颜色空间的二次抽样数据格式包括4:2:2 二 次抽样,其中在水平方向上以亮度分量一半的空间频率对色度分量进行抽样而在垂直方向 上以相同的空间频率对色度分量进行抽样;及4:2:0 二次抽样,其中沿着垂直和水平方向 两者以亮度分量一半的空间频率对色度分量进行抽样。这些二次抽样格式中的任一种,或 任何其他适合的二次抽样格式,都可用于对图像数据的色度分量进行二次抽样。在120处过滤低变化数据并在122处对色度数据进行二次抽样之后,方法100接 下来在124处使用一种或多种其他压缩技术来进一步减少所发送的数据量。通常,使用对 CG数据提供良好压缩的压缩方法。在所示的示例中,方法100在126处使用增量调制压缩 步骤,并在128处使用LZ0压缩步骤。LZ0是一种实时、可移植、无损的数据压缩方法,它优 先考虑速度而不是压缩比,且特别适用于CG数据的实时压缩。LZ0还提供其他的优点。例 如,LZ0解压缩需要最小的存储器,且压缩仅需要64千字节的存储器。一旦已从源设备(如,设备28)获得并压缩了图像数据,就可以将压缩数据发送到 图像提供设备26。在视频数据的传输中,表示选择的帧的图像数据可能超过帧间隔期间可 以跨通信信道传输的最大数据量。在此情况下,图像源28可以配置为在下一帧的压缩和传 输开始之前仅发送对于一帧图像数据可以发送的量的数据。所发送的图像数据在图像提供设备处接收和处理,以通过显示设备22在观看面 24上显示。可以在解压缩过程中实现有助于改进解压缩性能的各种特征,从而改进显示设 备22和图像提供设备26在显示视频图像时的性能。例如,为了协助二次抽样图像数据的 解压缩,图像提供设备26可以包括用于在解压缩期间存储图像数据且小于与执行解压缩计算的处理器关联的高速缓冲存储器的解压缩缓冲器。用于解压缩二次抽样图像数据的现有解压缩系统通常在计算丢失的色度值之前 将整组的压缩图像数据读入解压缩缓冲器中。通常,压缩图像数据在被读入缓冲器时被复 制到高速缓冲存储器中,这允许存储在高速缓存中的值能被更快速地访问以用于解压缩计 算。然而,因为压缩图像文件大小可能大于高速缓冲存储器,所以在将压缩图像数据复制到 缓冲器中时,高速缓冲存储器中的某些图像数据可能被其他图像数据覆盖。覆盖高速缓冲 存储器中的图像数据可能导致解压缩图像数据的处理器在高速缓冲存储器中查找被覆盖 的数据时发生高速缓存脱靶。发生过多的高速缓存脱靶会减慢图像解压缩以至有害程度。使用小于高速缓冲存储器的解压缩缓冲器有助于避免高速缓存脱靶的发生。因为 高速缓冲存储器通常是较小的存储器,因此这样的解压缩缓冲器可能也比多数图像文件要 小。换句话说,在图像数据表示包含AXB像素阵列的图像时,解压缩缓冲器可以配置为保 存AXC图像数据阵列,其中C小于B。这样的缓冲器可用于通过将一组二次抽样图像数据 作为图像数据的一系列较小的子集读入缓冲器和高速缓冲存储器来解压缩该组二次抽样 图像数据。可以在将压缩图像数据的新子集读入解压缩缓冲器之前解压缩并从缓冲器中输 出图像数据的每个子集。因为解压缩缓冲器小于高速缓冲存储器,所以不太可能发生高速 缓冲存储器中的任何图像数据在用于解压缩计算时被覆盖。解压缩缓冲器可以具有任何适合的大小。通常,解压缩缓冲器相对于高速缓冲存 储器越小,发生大量高速缓存脱靶的可能性越低。此外,要在解压缩缓冲器中解压缩的二次 抽样图像数据的类型以及用于对压缩图像数据进行解压缩的计算的类型会影响解压缩缓 冲器的大小。例如,4:2:0图像数据中丢失的色度分量可以取决于二次抽样色度值是同位 的还是非同位的而不同地计算。同位的色度值在图像上位于和选择的亮度值相同的物理位 置,而非同位的色度值夹在几个相关的亮度值之间。4:2:0同位图像数据的丢失的色度值可 以在和丢失的值相同的行或相邻的行上从二次抽样色度值计算,这取决于所计算的丢失的 色度值的物理位置。因此,用于解压缩具有没有色度值的数据行的4:2:0同位图像数据的 解压缩缓冲区可以配置为保存不止一行的图像数据来允许从垂直地相邻的色度值计算丢 失的色度值。可以使用任何适合的方法来确定在单个帧间隔期间可以从图像源28到图像提供 设备26发送多少图像数据。例如,一种简单的方法可以是检测活动地发送的图像源28上 的一帧图像数据何时发生改变,并使用检测到的改变作为触发器来开始新的压缩和传输过 程。以此方式,图像数据的传输可以继续,直到在显示在选择的图像源上的图像中检测到改 变,这时先前的图像帧的数据传输如果尚未完成则应停止。确定在单个帧间隔期间可以发送多少图像数据的适合的方法的另一个示例包括 确定通信信道的带宽,然后从检测到的带宽及已知的图像数据的帧率计算在单个帧间隔期 间可以跨通信信道发送多少图像数据。带宽可以在压缩图像数据传输之前或期间一次确 定,或可以周期性地检测并更新。实现上述方法的各种压缩和传输操作的软件可以以单线程、单进程操作,或可以 以多线程或多进程,或它们的任何组合来操作。多线程或多进程方法可以允许比以单线程 或单进程方法更有效地利用系统20的资源,如传输带宽。各种操作可以由任何适合的数量 的不同线程或进程实现。例如,在一个实施例中,使用三个独立的线程来执行上述示例方法的操作。这些线程可以称为接收器、处理器和发送器。接收器线程可以获取从图像源28的 屏幕上的图像生成的位图数据。处理器线程可以执行比较、区域划分、颜色空间转换,及方 法100的其他压缩步骤。发送器线程可以执行上述带宽监控和传输步骤。应理解,这只是 一种示例软件架构,且可以使用任何其他适合的软件架构。为了显示图像,图像处理系统20配置为允许客户机设备(如,图像源28)和服务 器设备(如,显示设备22)之间的通信。虽然可以理解,客户机和服务器可以驻留在同一计 算机上,但在本文中所述的示例中,客户机和服务器是不同的设备。为了有助于客户机-服 务器通信,图像源28和/或显示设备22可以具有网络通信软件60 (图2)。如图2所示,通 信软件60可以配置为运行在客户机或服务器计算设备的存储器44中。通常,通信软件60包括或使用通信协议以便有助于图像数据的传输以允许在显 示设备22处显示图像。该协议可以由客户机(如,图像源28)和服务器(显示设备22)之 间发送的字节182的流180组成,如图4所示,包括从客户机发送到服务器的正向信道184, 及从服务器发送到客户机的反向信道186。流控制通常通过反向信道186实现。通常,软件 和协议提供可伸缩性并支持多个同时的客户机连接。因此,可以有多个正向和反向信道配 对同时打开和活动。正向信道由客户机计算机发送到服务器投影机。反向信道由服务器投影机发送回 客户机计算机。通常,通信协议由组织为帧200的数据组成,如图4所示。在正向信道中, 每个帧200都可以包括帧头202、帧体204和帧尾206。帧体204通常由一系列1至n个具有标签并使用选择的数据结构编码的数据部分 组成,如下文中所述。通信协议的典型用法涉及在连接(如,TCP/IP连接)开始时一次性 传输帧头202,随后是发送一连串具有标签的数据部分。帧尾206可以用在所有的实现中, 也可以不用,虽然在某些情况下可能需要使用帧尾来执行客户机-服务器连接终止期间的 各种任务。该协议可以在每个帧头的末尾和/或在部分或所有具有标签的帧体数据部分的 末尾处结合校验和。通常,使用校验和来检测编程逻辑错误,而通常通过某种其他机制来检 测传输错误。在使用时,校验和可以作为一个数据块的最后一个(第n个)字节出现。校 验和可以定义为该数据块的前n-1个字节的模256和。帧头202通常包含在连接开始时从客户机发送到服务器的数据。如图5所示,帧 头可以由4字节的无符号标识符210组成,该标识符对相应的客户机设备可以是唯一的,也 可以不是。在某些实现中,标识符210也可以称为幻数,用于识别或确认相应的客户机设备 是目标服务器设备的合法连接者。例如,从客户机设备28c (图1)发送到服务器设备26的 字节流可以包括这样的标识符210,向服务器设备26表明该客户机设备是服务器设备26的 合法用户。帧头202也可以包括版本字段212,该字段可用于表示正用于客户机-服务器通 信的协议版本。帧头202还可以包括指示正在连接的客户机设备的尾数或其他平台或体系 结构决定的特性的尾数字段214。例如,在包含尾数声明的协议实现中,字段214可以指示 正在连接的设备的体系结构在最低的存储器地址中存储多字节序列的最低有效值(“小尾 数”),或者,在最低的存储器地址中存储最高有效值(“大尾数”)。也可以指示双尾数体系 结构。使用字段214可以增加图像处理系统20适应和实现在具有不同体系结构的多个正在连接的客户机设备之间的互操作性的能力。无论协议和目标服务器设备处理具有不同尾数的设备的能力如何,都可能在某些 情况下需要标识符210保持一致的字节顺序。例如,可以将标识符210作为四个单独的无 符号字节而不是32位无符号整数写入输出流。帧体204通常采取字节流的形式并包括下列信息的部分或所有(1)颜色空间信 息;⑵压缩信息;⑶位图信息;⑷标记语言命令;(5)分辨率信息;(6)反向信道通信的 确认;及(7)终止信息。在典型的实现中,所述的通信协议是无状态的,以便可以按任何顺 序发送帧体部分的成分。然而,通常需要在帧体传输开始时发送颜色空间信息。所述的示例协议包括基于标签的体系结构,其中识别标签与特定数据结构关联以 有助于在接收位置处进行解析。这使得协议能够非常高效,并允许图像源(如,客户机设 备)发送比目标处的图像显示原本所需更少的数据。例如,与以固定格式将冗余信息重复 地发送到服务器显示设备(如,颜色空间信息)相比,标签体系结构允许仅在需要时发送信 肩、o具体来说,该协议包括或定义多个不同的数据结构(例如,如下文中所述的位图 数据结构、压缩结构等)。不同的数据结构中的每个都具有与该数据结构关联的唯一识别标 签,以便允许目标高效地解析接收到的数据,而只使用最少量的处理资源。例如,将位图信 息编码为具有关联的位图标签的位图数据结构。位图标签及其他标签在接收到的数据流中 的出现允许目标位置高效地解析接收到的数据。图6示出包含编码在颜色空间数据结构220内的颜色空间信息的示例字节流部 分。如图所示,初始字节(或一位或多位)可以包括将字节流部分识别为包含颜色空间信息 的颜色空间标签222。用于后续的正向信道内容(如,图像位图信息)的颜色空间由字节或 部分224指示。可以使用任何所需的颜色空间,包括RGB(原始);YCbCr4:4:4同位;YCbCr 4:2:2 同位(DVCPR050, Digital Betacam, Digital S) ;YCbCr4:l:l 同位(YUV12) (480 线 DV,480 线 DVCAM,DVCPR0) ; YCbCr 4:2:0(H. 261, H. 263, MPEG 1) ; YCbCr 4:2:0(MPEG 2);及 YCbCr 4:2:0同位(576线DV,DVCAM)。颜色空间信息之后可以附加有校验和226,以便提 供错误检查。图7示出包含编码在压缩数据结构240内的压缩信息的示例字节流段。压缩信 息通常描述如何压缩所传输的图像信息或已如何压缩该信息。如图所示,该数据结构可以 包括将字节流部分识别为包含压缩信息的压缩标签242。所使用的压缩方法由字节或部分 244指示。可以使用任何所需的压缩技术或算法,包括LZ压缩和/或其他方法。同样,部 分244可用于指示数据未被压缩。如协议的其他部分中那样,可以使用校验和246来提供 对压缩信息的错误检查。通常,正向信道的帧体部分也将包括对应于要在目标服务器设备26处显示的图 像的多个字节的位图信息,如图8所示。位图信息的每个部分都可以编码在位图结构260 内。结构260可以包括将数据流段识别为包含位图信息的位图标签(字节1)。可以包括内 容值(字节2)字节或字段以指示是否要使用位块传输(BLT)(原始)或使用XOR BLT (递 增)将重建的位图复制到屏幕上。同样,如图所示,位图结构260可以定义为包括涉及位图 的垂直方向的数据、位图的大小和开始位置(使用X-Y直线坐标方案)、数据块的大小,及实 际数据块。通常,校验和将在数据块的末尾使用。
帧体部分204也可以包括以各种格式发送的其他命令或信息,包括以标记语言, 如HTML或XML发送的命令/信息。图9示出编码在标记结构280中的数据流部分的示例。 如图所示,类似于帧体部分204的其他成分,编码的数据流部分可以包括识别数据流部分 本质的初始标签(字节1)及后附的用于纠错的校验和(字节n)。内容值字节(字节2)可 用于表示所使用的标记语言(HTML、XML等),且后续的字节可用于表示标记语言传输的大 小,并传输实际的标记语言信息。如图10所示,正向信道的帧体也可以包括用于表示在目标服务器设备处使用的 分辨率的字节。如图所示,设置分辨率信息(如,编码在设置分辨率数据结构300内)可以 包括初始识别标签,随后是表示X和Y分辨率、颜色深度,及用于纠错的校验和的字节。正向信道可以包括有助于客户机和服务器设备之间的交互作用的其他信息或数 据。字节流段可用于请求服务器重启动,以便确认服务器在反向信道186上发送的设置伸 缩命令,和/或发送终止请求。帧尾206可用于执行与终止连接或终止数据传输的特定部 分关联的各种任务。反向信道186可用于提供流控制及其他功能。通常,反向信道186将使用类似于 正向信道的帧格式(如,具有帧头、帧体和帧尾部分)。流控制可以通过服务器周期性地 (如,一秒十次)报告可用服务器缓冲器的大小来实现。所报告的缓冲器大小的前面通常具 有指示后续字节包含有关缓冲器大小的信息的识别标签,如图11的示例缓冲器大小流320 所示。然后,报告可用的缓冲器大小。在本发明的示例实施例中,以四字节流报告缓冲器大 小,然后由后附的校验和字节提供错误检查。然后所报告的可用缓冲器可以由客户机使用, 以便动态地调整其在正向信道184上的传输速率。反向信道186也可以包括设置缩放字节流段340,如图12所示。在识别标签之后, 可以使用四个字节来表示X和Y维度上的缩放。再次使用校验和字节来提供错误检查。反 向信道通信也可以包括服务器终止特定客户机设备或连接的请求。此外,虽然本发明包括具体实施例,但具体实施例不应视为具有限制意义,因为有 大量的变体是可能的。本发明的主题包括在此公开的各种元素、特征、功能,和/或属性的 所有新颖和非易见的组合及子组合。下面的权利要求特别指出视为新颖和非易见的特定组 合及子组合。这些权利要求可能引用“一个”元素或“第一”元素或其等价。这样的权利要 求应被理解为包括对一个或多个这样的元素的结合,而不是要求或排除两个或多个这样的 元素。各特征、功能、元素和/或属性的其他组合及子组合可以通过本发明权利要求的修改 或通过在本申请或相关申请中提供新的权利要求来请求保护。这样的权利要求,无论是在 范围上比原始权利要求更宽、更窄、等价或不同,都应被视为包括在本发明的主题之内。
权利要求
一种配置为与图像显示设备通信的图像源,包括配置为允许图像数据从所述图像源到所述图像显示设备的传输,以便基于所传输的图像数据显示图像的通信协议,所述通信协议包括多个不同的数据结构,其中所述多个不同的数据结构包括定义为包括位图信息的位图结构;及多个不同的标签,其中适配所述通信协议,使得使用所述通信协议的图像源和图像显示设备之间的通信作为串行数据流发生,所述串行数据流包括使用从所述多个不同的数据结构中选择的数据结构编码的数据部分,且其中所述多个不同的标签中的每个都关联于并对应于所述多个不同的数据结构中特定的一个,以有助于图像数据的传输和允许在目标处对所述串行数据流进行解析。
2.如权利要求1所述的图像源,其特征在于,所述多个不同的数据结构包括定义为包 括颜色空间信息的颜色空间结构。
3.如权利要求1所述的图像源,其特征在于,所述多个不同的数据结构包括定义为包 括压缩信息的压缩结构。
4.如权利要求1所述的图像源,其特征在于,所述多个不同的数据结构包括定义为包 括标记信息的标记结构。
5.如权利要求1所述的图像源,其特征在于,所述多个不同的数据结构包括定义为包 括设置分辨率信息的设置分辨率结构。
6.如权利要求5所述的图像源,其特征在于,所述通信协议包括适配用于提供所述图 像源和所述图像显示设备之间的分辨率协商的反向信道。
7.如权利要求1所述的图像源,其特征在于,所述通信协议配置为允许双向客户机-服 务器通信,以便对所述图像数据到图像显示设备的传输提供流控制。
8.如权利要求1所述的图像源,其特征在于,所述通信协议包括正向信道,其中数据流 向所述图像显示设备,及反向信道,其中数据流向所述图像源。
9.如权利要求8所述的图像源,其特征在于,所述反向信道适配用于允许所述图像源 和所述图像显示设备之间的分辨率协商。
10.如权利要求8所述的图像源,其特征在于,所述反向信道适配用于对所述图像数据 到图像显示设备的传输提供流控制。
11.如权利要求10所述的图像源,其特征在于,由所述图像显示设备在所述反向信道 中报告可用缓冲器大小。
全文摘要
本发明涉及配置为与图像显示设备通信的图像源,包括配置为允许图像数据从所述图像源到所述图像显示设备的传输,以便基于所传输的图像数据显示图像的通信协议,所述通信协议包括多个不同的数据结构,其中所述多个不同的数据结构包括定义为包括位图信息的位图结构;及多个不同的标签,其中适配所述通信协议,使得使用所述通信协议的图像源和图像显示设备之间的通信作为串行数据流发生,所述串行数据流包括使用从所述多个不同的数据结构中选择的数据结构编码的数据部分,且其中所述多个不同的标签中的每个都关联于并对应于所述多个不同的数据结构中特定的一个,以有助于图像数据的传输和允许在目标处对所述串行数据流进行解析。
文档编号H04N7/24GK101854456SQ20101016514
公开日2010年10月6日 申请日期2005年5月27日 优先权日2004年5月28日
发明者杰夫·格利克曼 申请人:精工爱普生株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1