信息处理装置、控制方法、程序、及存储介质的制作方法

文档序号:9402446阅读:426来源:国知局
信息处理装置、控制方法、程序、及存储介质的制作方法
【技术领域】
[0001]本发明涉及一种处理装置、控制方法、程序、及存储介质,尤其涉及一种利用CPU与GPU的编码技术。
【背景技术】
[0002]近年来,在利用因特网等网络的动态图像传送的领域中,不仅传送已预先编码的动态图像数据,而且还进行将所生成的动态图像帧实时地编码,并传送所获得的动态图像数据。
[0003]这种实时地进行编码并传送动态图像数据的内容之一有经由网络提供游戏画面的游戏内容。动态图像传送服务器通过将GPU所生成的游戏画面根据特定的编码形式编码,并作为动态图像数据传送,而可以提供显示在客户端机器中的游戏画面。
[0004]GPU具备比CPU多的运算核心,专门用于并行处理。编码技术中,也存在着眼于GPU的并行处理能力,使用GPU进行编码的情况(专利文献I)。
[0005]现有技术文献
[0006]专利文献
[0007]专利文献1:日本专利特开2009-017535号公报

【发明内容】

[0008][发明所要解决的课题]
[0009]另一方面,由于GPU具备多个运算核心,所以各个运算核心的处理能力与CPU相比受到限定。具体来说,在CPU与GPU中,预先准备的命令集不同。例如,在进行从32bit的比特串中计数值为I的比特的运算的情况下,典型来说,GPU依序指定比特并重复发行简单的命令来执行处理,相对于此,CPU可仅通过执行预先准备的命令集而获得所期望的运算结果。也就是说,GPU专门用于并行处理,相反,执行处理所需要的命令发行较多,在由处理内容获得结果之前需要时间。
[0010]所述专利文献I中,仅由GPU执行编码处理,并未考虑这种CPU及GPU的特性进行分散处理。
[0011]本发明是鉴于所述问题而完成的,其目的在于提供一种通过使用CPU与GPU而有效率地进行编码处理的信息处理装置、控制方法、程序、及存储介质。
[0012][解决课题的技术手段]
[0013]为了达成所述目的,本发明的信息处理装置的特征在于具备以下构成。具体来说,信息处理装置是具有中央处理器(CPU)与图形处理器(GPU),且将图像编码的信息处理装置,该信息处理装置的特征在于,GPU具有:获取手段,获取将编码对象的图像分割而获得的具有既定像素数的多个区块;排除手段,针对由获取手段获取到的多个区块的每一个,生成排除空间冗长性后的中间区块;解析手段,解析由排除手段生成的各中间区块的数据串,生成确定出该数据串中的值包含在既定范围内的数据的位置的确定信息;以及输出手段,针对多个区块的每一个,将中间区块的至少一部分数据及与该中间区块对应的确定信息输出至存储手段;CPU具有:读出手段,针对多个区块的每一个,从存储手段读出所对应的确定信息;以及压缩手段,参照由读出手段读出的确定信息,从存储手段读出与该确定信息对应的至少一部分数据并执行压缩处理。
[0014][发明的效果]
[0015]根据本发明的所述构成,能够通过使用CPU与GPU而有效率地进行编码处理。
[0016]本发明的其它特征及优点可根据参照随附图式的以下说明而明了。此外,在随附图式中,对于相同或同样的构成,标注相同的参照编号。
【附图说明】
[0017]随附图式包含在说明书中,构成说明书的一部分,表示本发明的实施方式,并与说明书的记述一起用于说明本发明的原理。
[0018]图1是表示本发明的实施方式的PC100的功能构成的框图。
[0019]图2是例示由本发明的实施方式的PC100执行的编码处理的流程图。
[0020]图3是例示本发明的实施方式的GPU104执行的数据生成处理的流程图。
[0021]图4是表示本发明的实施方式的数据生成处理中的中间数据的扫描顺序的一例的图。
[0022]图5是表示由本发明的实施方式的数据生成处理所生成的输出用数据的数据构成的图。
【具体实施方式】
[0023][实施方式]
[0024]以下,参照附图对本发明的例示性的实施方式进行详细说明。此外,以下说明的一个实施方式是对将本发明应用于作为信息处理装置的一例的具备CPU与GPU进行编码处理的PC的示例进行说明。然而,本发明可以应用于具备CPU及GPU且能够使用CPU及GPU进行编码处理的任意机器。
[0025]《PC100的构成》
[0026]图1是表示本发明的实施方式的PC100的功能构成的框图。
[0027]CPUlOl控制PC100所具有的各区块。具体来说,CPUlOl通过读出存储在例如R0M102或存储介质107中的各区块的动作程序,在RAM103展开并执行,来控制各区块的动作。
[0028]R0M102是可覆写的非易失性存储器。R0M102存储各区块的动作或PC100的动作所需要的参数等信息。RAM103是易失性存储器。RAM103不仅用作各区块的动作程序的展开区域,而且还用作暂时存储各区块的动作中输出的中间数据等的存储区域。
[0029]GPU104进行有关画面描绘的处理。GPU104具有多个运算核心以用于进行并行处理,从而同时执行有关画面描绘的处理。例如,在要描绘的画面为3D场面的特定视点的画面的情况下,GPU104从下述存储介质107读出3D场面的描绘范围中所包含的描绘目标,并在GPU存储器105展开。然后,GPU104对在GPU存储器105展开的描绘目标执行与特定的描绘参数对应的运算处理,并在所连接的VRAM106中生成(描绘)画面。
[0030]存储介质107是例如HDD等可装卸的存储装置。在本实施方式中,存储介质107存储编码对象的动态图像数据的各帧、及由下述编码处理而编码后的编码动态图像数据。
[0031]操作输入部108是例如鼠标或键盘等连接于PC100的用户界面。当检测到已对用户界面进行操作输入时,操作输入部108将所对应的控制信号输出至CPU101,并通知该操作输入。
[0032]《编码处理》
[0033]关于具有这种构成的本实施方式的PC100中的动态图像数据的编码处理,使用图2的流程图对具体的处理进行说明。与该流程图对应的处理能够通过由CPUlOl读出例如存储在存储介质107中的对应的处理程序,在RAM103展开并执行而实现。
[0034]此外,以如下方式进行说明:例如在进行动态图像数据的编码的应用程序中,当存储介质107检测出已进行编码开始的指示输入时开始本编码处理。然而,本发明并不限定于动态图像数据的编码处理,也可以应用于由如下所述的处理步骤进行的静止图像数据的编码处理。另外,以下说明的编码处理并不限定应用本发明的编码处理,而是概念性地说明一个例示性的编码形式中的处理步骤。也就是说,容易理解为本实施方式的编码处理中所说明的各处理步骤可以根据编码对象或所采用的编码形式而适当变更。
[0035]S201中,CPUlOl将编码对象的动态图像数据(对象动态图像数据)的信息通知给GPU104。对象动态图像数据的信息也可以为能够由GPU104确定出编码对象的数据的信息,例如存储在存储介质107中的对应的动态图像文件的存储位置的信息等。
[0036]S202中,GPU104参照对象动态图像数据的信息,读出对象动态图像数据中的进行编码的帧的图像(对象图片),并在GPU存储器105展开。
[0037]S203中,GPU104将被读出至GPU存储器105的对象图片分割成具有预先决定的像素数的区块,该区块作为并行处理的执行单位。此外,对象图片无须被实际地分割成区块,例如也可以相对于GPU存储器105上的存储器地址而定义区块。另外,本实施方式中虽未叙述详细情况,但在对于对象图片进行帧内预测或帧间预测的情况下,与以下的并行处理分开对图片进行预测处理。
[0038]S204中,GPU104将GPU104的运算核心分配至各区块。然后,GPU104针对各区块并行执行离散余弦转换处理(DCT)等正交转换处理及量化处理,除去各区块的空间冗长性。此外,在进行预测处理的情况下,反映预测结果的区块成为本步骤的处理对象。另外,本实施方式中,为了使说明简单,以对各区块分配GPU104的一个运算核心的方式进行说明,但本发明的实施并不限定于此。通常,GPU104
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1