图形处理单元和信息处理设备转让专利

申请号 : CN201110134053.9

文献号 : CN102314671B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 岩城力八矢好司

申请人 : 株式会社东芝

摘要 :

本发明提供一种图形处理单元和信息处理设备。根据一个实施例,图形处理单元(105)通过使用多个处理核(204)中的至少一个第一处理核(204),分析视频数据的帧来检测视频数据的特征,并且通过使用多个处理核(204)中的至少一个第二处理核(204),将与检测到的视频数据的特征有关的处理应用到存储器(105A)上的音频数据。图形处理单元(105)包括音频信号输出接口(207),并将与已经被应用处理的音频数据相对应的音频信号输出到声音装置。

权利要求 :

1.一种图形处理单元,其特征在于,包括:

配置成从主机接收视频数据和音频数据的主机接口;

配置成将接收到的视频数据和音频数据存储在存储器中的存储器控制器;

连接到所述存储器的多个处理核;

运算控制单元,配置成通过使用所述多个处理核中的至少一个第一处理核,分析所述存储器上的所述视频数据的帧来检测所述视频数据的特征,以及通过使用所述多个处理核中的至少一个第二处理核,将与检测到的所述视频数据的特征有关的处理应用到所述存储器上的所述音频数据;

视频信号输出接口,配置成产生与所述视频数据相对应的视频信号,并将产生的视频信号输出到显示装置;和音频信号输出接口,配置成产生与已经被应用所述处理的所述音频数据相对应的音频信号,并将产生的音频信号输出到声音装置。

2.如权利要求1所述的图形处理单元,其特征在于,所述运算控制单元被配置成基于所述视频数据的所述特征来检测所述视频数据中的特定场景,并将预定处理应用到属于所述特定场景的所述音频数据的每个帧。

3.如权利要求1所述的图形处理单元,其特征在于,所述运算控制单元被配置成将第一任务分配给所述至少一个第一处理核,并且将第二任务分配给所述至少一个第二处理核,所述第一任务用于通过分析所述存储器上的所述视频数据的所述帧来检测所述视频数据的所述特征,所述第二任务用于将与检测到的所述视频数据的特征有关的处理应用到所述存储器上的所述音频数据。

4.如权利要求1所述的图形处理单元,其特征在于,所述运算控制单元被配置成通过使用所述多个处理核中的至少一个处理核,分析所述存储器上的所述音频数据的帧来检测所述音频数据的特征,并且通过使用所述多个处理核中的至少一个处理核,将与检测到的所述音频数据的特征有关的处理应用到所述存储器上的所述视频数据。

5.如权利要求1所述的图形处理单元,其特征在于,进一步包括配置成从所述声音装置输入音频信号的音频信号输入接口。

6.一种信息处理设备,其特征在于,包括:

CPU;和

图形控制器,耦接到所述CPU,并且配置成按照来自所述CPU的请求处理图形数据、视频数据和音频数据,其中,所述图形控制器包括:

配置成从所述CPU接收视频数据和音频数据的主机接口;

配置成将接收到的视频数据和音频数据存储在存储器中的存储器控制器;

连接到所述存储器的多个处理核;

运算控制单元,配置成通过使用所述多个处理核中的至少一个第一处理核,分析所述存储器上的所述视频数据的帧来检测所述视频数据的特征,以及通过使用所述多个处理核中的至少一个第二处理核,将与检测到的所述视频数据的特征有关的处理应用到所述存储器上的所述音频数据;

视频信号输出接口,配置成产生与所述视频数据相对应的视频信号,并将产生的视频信号输出到显示装置;和音频信号输出接口,配置成产生与已经被应用所述处理的所述音频数据相对应的音频信号,并将产生的音频信号输出到声音装置。

7.如权利要求6所述的信息处理设备,其特征在于,所述运算控制单元被配置成基于所述视频数据的所述特征来检测所述视频数据中的特定场景,并将预定处理应用到属于所述特定场景的所述音频数据的每个帧。

8.如权利要求6所述的信息处理设备,其特征在于,所述运算控制单元被配置成将第一任务分配给所述至少一个第一处理核,并且将第二任务分配给所述至少一个第二处理核,所述第一任务用于通过分析所述存储器上的所述视频数据的所述帧来检测所述视频数据的所述特征,所述第二任务用于将与检测到的所述视频数据的特征有关的处理应用到所述存储器上的所述音频数据。

说明书 :

图形处理单元和信息处理设备

技术领域

[0001] 此处描述的实施例一般涉及图形处理单元和使用图形处理单元的信息处理设备。

背景技术

[0002] 通常,在诸如个人计算机的信息处理设备中,使用图形处理单元(GPU),以便提高信息处理设备的图像描绘性能。大部分现代的GPU包括可并行操作的多个处理核,并且可以高速执行例如2D或3D图形运算操作。
[0003] 另一方面,通常通过被称作“声音控制器”的数字信号处理器(DSP)执行信息处理设备中的音频数据(也称为“声音数据”)的处理。然而,通常,DSP的运算处理性能相对较低。因此,DSP难以单独对音频数据执行高级处理。
[0004] 另外,近来,已经发展了被设计成处理视频数据和音频数据两者的介质处理LSI。
[0005] 然而,由普通的介质处理LSI实现的最多不过是对视频数据进行编码或解码的功能,以及对音频数据进行编码或解码的功能。此外,在普通的介质处理LSI中,对视频数据的处理和对音频数据的处理是彼此独立的。
[0006] 在包括视频数据和音频数据的数字内容(例如电影、DVD视频、广播节目等等)中,视频数据和音频数据是相关的。因此,在重放数字内容的设备中,为了使得对视频数据的处理和对音频数据的处理彼此合作,需要实现新的功能。

发明内容

[0007] 该发明的目的是提供一种图形处理单元和信息处理设备,其可以协同视频数据处理音频数据。
[0008] 根据一个实施例,图形处理单元包括主机接口、存储器控制器、多个处理核、运算控制单元、视频信号输出接口和音频信号输出接口。主机接口从主机接收视频数据和音频数据。存储器控制器将接收到的视频数据和音频数据存储在存储器中。运算控制单元通过使用多个处理核中的至少一个第一处理核,分析存储器上的视频数据的帧来检测视频数据的特征,并且通过使用多个处理核中的至少一个第二处理核,将与检测到的视频数据的特征有关的处理应用到存储器上的音频数据。视频信号输出接口产生与视频数据相对应的视频信号,并将产生的视频信号输出到显示装置。音频信号输出接口产生与已经应用处理的音频数据相对应的音频信号,并将产生的音频信号输出到声音装置。

附图说明

[0009] 现在将参考附图描述实现实施例的各种特征的一般构造。附图和相关说明被提供用于图解实施例,而不用于限制本发明的范围。
[0010] 图1是图解根据实施例的信息处理设备的结构的示范性的立体图;
[0011] 图2是图解实施例的信息处理设备的系统配置的示范性的框图;
[0012] 图3是图解设置在实施例的信息处理设备中的图形处理单元的结构的示范性的框图;
[0013] 图4是用于说明由图3中所示的图形处理单元执行的处理的流程的示意图;
[0014] 图5是用于说明由图3中所示的图形处理单元执行的回响处理的流程的示意图;
[0015] 图6是用于说明通过图3中所示的图形处理单元对视频数据和音频数据执行的处理的流程的示意图;
[0016] 图7是用于说明通过图3中所示的图形处理单元基于视频数据的分析结果执行的音频处理的实例的示意图;
[0017] 图8是用于说明在使用常规的图形处理单元的系统中的视频数据和音频数据的流程的示意图;
[0018] 图9是用于说明在使用图3中所示的图形处理单元的系统中的视频数据和音频数据的流程的示意图;和
[0019] 图10是用于说明图3中所示的图形处理单元的功能结构的示意图。

具体实施方式

[0020] 以下将参考附图说明各种实施例。
[0021] 通常,根据一个实施例,图形处理单元包括主机接口、存储器控制器、多个处理核、运算控制单元、视频信号输出接口和音频信号输出接口。主机接口被配置成从主机接收视频数据和音频数据。存储器控制器被配置成将接收到的视频数据和音频数据存储在存储器中。多个处理核被连接到存储器。运算控制单元被配置成通过使用多个处理核中的至少一个第一处理核,分析存储器上的视频数据的帧来检测视频数据的特征,并且通过使用多个处理核中的至少一个第二处理核,将与检测到的视频数据的特征有关的处理应用到存储器上的音频数据。视频信号输出接口被配置成产生与视频数据相对应的视频信号,并将产生的视频信号输出到显示装置。音频信号输出接口被配置成产生与已经应用处理的音频数据相对应的音频信号,并将产生的音频信号输出到声音装置。
[0022] 图1是显示根据实施例的信息处理设备的外观的立体图。该信息处理设备例如被实现为笔记本型个人计算机10。如图1所示,计算机10包括计算机主体11和显示单元12。LCD(液晶显示器)17装配在显示单元12中。显示单元12被附接到计算机主体11,以使显示单元12可在打开位置和闭合位置之间旋转,在打开位置,计算机主体11的上表面被露出,在闭合位置,计算机主体11的上表面被覆盖。
[0023] 计算机主体11具有薄盒形的外壳。键盘13、用于使计算机10通电/断电的电源按钮14、输入操作面板15、触摸板16以及扬声器18A和18B被配置在计算机主体11的外壳的上表面上。各种操作按钮被设置在输入操作面板15上。
[0024] 计算机主体11的右侧表面设置有USB连接器19,USB连接器19用于连接到例如USB(通用串行总线)2.0标准的USB电缆或USB装置。另外,支持例如HDMI(高清晰多媒体接口)标准的外部显示器连接端子(未显示)被设置在计算机主体11的后表面。外部显示器连接端子被用于将数字视频信号输出到外部显示器。
[0025] 图2是显示计算机10的系统配置的图。
[0026] 如图2所示,计算机10包括CPU 101、北桥102、主存储器103、南桥104、图形处理单元(GPU)105、存储器105A、BIOS-ROM 107、LAN控制器108、硬盘驱动器(HDD)109、光盘驱动器(ODD)、USB控制器111A、卡控制器111B、无线LAN控制器112、嵌入式控制器/键盘控制器(EC/KBC)113和FEPROM 114。
[0027] CPU 101是用于控制计算机10中的各个部件的操作的处理器。CPU 101执行从HDD109被装载到主存储器103中的操作系统(OS)201和各种应用程序。应用程序包括用于重放各种数字内容(例如电影、DVD视频、广播节目数据等等)的视频播放器。视频播放器被配置成通过使用GPU 105重放被包括在数字内容中的视频数据和音频数据。CPU 101还执行存储在BIOS-ROM 107中的BIOS。BIOS是用于硬件控制的程序。
[0028] 北桥102是连接CPU 101的局部总线和南桥104的桥装置。北桥102包括存取控制主存储器103的存储器控制器。北桥102还具有经由例如PCI EXPRESS串行总线与GPU105通信的功能。
[0029] GPU 105控制用作计算机10的显示监视器的LCD 17和外部显示器。由GPU 105产生的视频信号被发送到LCD 17。另外,GPU 105可以经由HDMI控制电路3和HDMI端子2将数字视频信号发送到外部显示器1。HDMI端子2是以上描述的外部显示器接线端子。
HDMI端子2能够经由单个电缆将无压缩的数字视频信号和数字音频信号发送到诸如TV的外部显示器1。HDMI控制电路3是用于经由HDMI端子2将数字视频信号发送到外部显示器1的接口,外部显示器1被称作“HDMI监视器”。
[0030] GPU 105经由例如PCI Express串行总线被耦接到CPU 101。GPU 105被配置成按照来自CPU 101的请求,处理图形数据、视频数据和音频数据。更具体地,GPU 105包括用于将音频信号(也称为“声音信号”)输出到扬声器或其它外部声音装置的音频信号输出接口(音频信号输出接口单元)、以及分析和处理音频数据的功能。因此,在计算机10中,GPU105不但可以处理图形数据,而且还可以处理视频数据和音频数据两者。由GPU 105产生的视频信号和音频信号(也称为声音信号)被直接地从GPU 105输出到显示装置(例如,LCD
17,外部显示器)和声音装置(扬声器18A、18B,外部声音装置)。
[0031] 如此,在本实施例中,GPU 105可以同时处理视频数据和音频数据两者,并且可以直接将对应于视频数据的视频信号和对应于音频数据的音频信号输出到外面。
[0032] GPU 105合并多个处理核(流处理器)。GPU 105经由例如PCI EXPRESS总线接收来自CPU 101的音频数据,并通过使用至少一个处理核来处理接收到的音频数据。处理核对音频数据的处理可以通过由固件或软件控制与处理核相对应的指令组来实现。从而,可以使得由GPU 105执行的音频数据的处理是可编程的,并且可以由GPU 105执行对音频数据的各种处理(编辑)。音频数据的编辑意味着采用对音频数据的处理。音频数据的编辑包括,例如,各种声音效果、各种滤波器、2D到3D的声音转换以及音量控制。例如,GPU 105可以根据装载在处理核上的程序分析音频数据,并且可以根据分析结果适当地处理(编辑)音频数据。
[0033] 类似地,GPU 105还可以经由例如PCI EXPRESS总线从CPU 101接收视频数据,并通过使用至少一个处理核来处理接收到的视频数据。处理核对视频数据的处理也可以通过由固件或软件控制与处理核相对应的指令组来实现。从而,可以使得由GPU 105执行的视频数据的处理是可编程的,并且可以由GPU 105执行对视频数据的各种处理(编辑)。视频数据的编辑意味着采用对视频数据的处理。视频数据的编辑包括,例如,高分辨率转换、2D到3D的视频转换、缩放以及旋转。GPU 105可以根据装载在处理核上的程序分析视频数据的每个帧,并且可以根据分析结果适当地处理(编辑)视频数据。
[0034] 此外,GPU 105可以按照视频数据的内容适当地处理音频数据。在这种情况下,GPU105通过分析视频数据的帧来检测视频数据的特征,并且将与检测到的视频数据的特征有关的处理应用到音频数据。例如,GPU 105基于视频数据的特征检测视频数据中的具体场景(例如会话场景、暗图像场景、亮图像场景、快速移动场景、缓慢移动场景等等),并且将与具体场景有关的预定处理应用到属于检测到的具体场景的音频数据中的每个帧。在每个视频帧的分析中,例如,GPU 105可以产生视频数据的每个帧的直方图,并且可以基于该直方图检测每个视频帧的特征。
[0035] 反之,GPU 105可以通过使用至少一个处理核分析音频数据的帧来检测音频数据的特征,并且可以通过使用至少一个其他处理核将与检测到的音频数据的特征有关的处理应用到视频数据。
[0036] 视频数据的处理结果和音频数据的处理结果可以被直接输出到外面,作为视频信号和音频信号。或者,视频数据的处理结果和音频数据的处理结果可以从GPU 105被传送到CPU 101。此外,为了递归地执行视频数据的处理和音频数据的处理,视频数据的处理结果和音频数据的处理结果可以被反馈到GPU 105中的相关的处理核。
[0037] 此外,GPU 105可以将时间戳(时间码)添加到视频数据中的每个视频帧和音频数据中的每个音频帧。通过时间戳,处理的视频数据和处理的音频数据可以被同步化,并且与处理的视频数据相对应的视频信号和与处理的音频数据相对应的音频信号可以在视频信号和音频信号被同步化的状态下被输出到外面。
[0038] 南桥104控制PCI(外设部件互连)总线上的装置和LPC(低引脚计数)总线上的装置。南桥104包括用于控制HDD 109和ODD 110的IDE(集成驱动电子设备)控制器。
[0039] LAN控制器108是执行例如IEEE 802.3标准的有线通信的有线通信装置。另一方面,无线LAN控制器112是执行例如IEEE 802.11g标准的无线通信的无线通信装置。USB控制器111A与支持例如USB 2.0标准的外部装置(该外部装置经由USB连接器19被连接)通信。卡控制器111B执行对诸如SD卡的存储器卡的数据写入和数据读取,存储器卡被插入设置在计算机主体11中的卡槽中。
[0040] EC/KBC 113是单片微型计算机,其中集成了用于电源管理的嵌入式控制器和用于控制键盘13和触摸板16的键盘控制器。EC/KBC 113具有按照用户对电源按钮14的操作使计算机10通电/断电的功能。
[0041] 接下来,参照图3,描述GPU 105的结构。
[0042] GPU 105包括PCI Express接口201、网络集线器202、图形引擎203、多个流处理器(SP)204、存储器控制器205、存储器105A、视频信号输出接口206和音频信号输入/输出接口207。
[0043] PCI Express接口201是主机接口(主机接口单元),用于与主机(CPU 101,主存储器103)通信。PCI Express接口201从主机(CPU 101,主存储器103)接收图形数据、视频数据和音频数据。另外,PCI Express接口201从主机接收用于处理图形数据、视频数据和音频数据的请求(指令)。已经通过PCI Express接口201从CPU 101接收到的图形数据、视频数据和音频数据通过存储器控制器205被存储在存储器105A中(缓冲)。存储器105A是称为“帧缓冲器”或“视频存储器”的存储器。存储器105A被用作GPU 105的本地存储器。通过例如经由存储器总线连接到GPU 105的外部存储器或装配在GPU 105中内部存储器、或者外部存储器和内部存储器两者,来实现存储器105A。内部存储器可以是高速缓冲存储器。
[0044] 图形引擎203通过使用流处理器(SP)204对图形数据、视频数据和音频数据执行处理。每个流处理器(SP)204用作处理核(也称为“可编程的着色器”),其可以执行图形运算操作和通用的运算操作。可以通过在每个流处理器(SP)204中的从图形引擎203装载的指令,来确定由每个流处理器(SP)204执行的运算操作的内容。每个流处理器(SP)204可以经由存储器控制器205参考存储器105A上的图形数据、视频数据和音频数据。此外,每个流处理器(SP)204可以经由存储器控制器205将图形数据、视频数据或音频数据的处理结果写入存储器105A。
[0045] 将要执行的处理通过图形引擎203被分配给各个流处理器(SP)204。在这种意义上,图形引擎203是将多个处理(任务)分配到多个流处理器(SP)204,从而并行地执行多个处理的分配器(也称为“程序机”)。
[0046] 在本实施例中,为了能够按照视频数据的每个帧的分析结果适当地处理音频数据的每个帧,图形引擎203包括运算控制单元203A。
[0047] 运算控制单元203A将第一任务分配给多个流处理器(SP)204中的至少一个第一流处理器(SP)204,第一任务用于通过分析存储器105A上的视频数据的帧来检测视频数据的特征。这个任务可以被实现为线程(thread)。此外,运算控制单元203A将第二任务分配给多个流处理器(SP)204中的至少一个第二流处理器(SP)204,第二任务用于将与检测到的视频数据的特征有关的处理应用到存储器105A上的音频数据。第一任务和第二任务通过不同的流处理器(SF)204被并行执行。
[0048] 分配第一任务的每个第一流处理器(SF)204执行从运算控制单元203A装载到第一流处理器(SF)204中的指令。每个第一流处理器(SF)204从存储器105A中取出视频数据的帧,并分析该帧的图像。在分析处理中,可以执行例如检测每个视频帧的图像特征的处理、检测视频帧中出现的特定物体(例如人)的处理、检测特定物体的运动的处理以及检测在视频帧中的特定物体的位置的处理。指示每个视频帧的特征的分析处理结果被存储在存储器105A中。
[0049] 分配第二任务的每个第二流处理器(SF)204执行从运算控制单元203A装载到第二流处理器(SF)204中的指令。例如,基于指示存储在存储器105A中的每个视频帧的特征的分析处理结果,每个第二流处理器(SF)204将与相应的视频帧的特征有关的处理(编辑)应用到每个音频帧。在这种情况下,每个第二流处理器204从存储器105A中取出音频数据的帧,并且将与相应的视频帧的特征有关的处理(编辑)应用到取出的音频数据的帧。
[0050] 在本实施例中,如上所述,通过使用多个流处理器(SP)204,可以并行地执行分析存储器105A上的视频数据的处理和按照视频数据的分析结果将处理(编辑)应用到存储器105A上的音频数据的处理。
[0051] 视频信号输出接口(视频信号输出接口单元)206产生与由流处理器(SP)204处理的视频数据相对应的视频信号,并将产生的视频信号输出到显示装置。视频信号输出接口206包括数模转换器(DAC)301、显示模拟输出接口(显示模拟输出接口单元)302和显示数字输出接口(显示数字输出接口单元)303。数模转换器(DAC)301和显示模拟输出接口302从处理的视频数据中产生模拟视频信号(RGB信号)。模拟视频信号(RGB信号)经由设置在GPU 105中的模拟视频信号输出插脚被输出到外部的RGB监视器。显示数字输出接口303从处理的视频数据中产生数字视频信号。数字视频信号经由设置在GPU105中的数字视频信号输出插脚被输出到外部的数字监视器(DVI监视器、HDMI监视器、DP监视器等等)。
[0052] 音频信号输入/输出接口(音频信号输入/输出接口单元)207从外部装置接收音频信号,并且输出音频信号到外部装置。音频信号输入/输出接口207包括数模转换器(DAC)311、声音模拟输出接口(声音模拟输出接口单元)312、模数转换器(ADC)313、声音模拟输入接口(声音模拟输入接口单元)314、声音数字输出接口(声音数字输出接口单元)315以及声音数字输入接口(声音数字输入接口单元)316。
[0053] 数模转换器(DAC)311和声音模拟输出接口312从处理的音频数据中产生模拟音频信号(也称为“模拟声音信号”)。模拟音频信号经由设置在GPU 105中的模拟音频信号输出插脚被输出到扬声器或其它的外部模拟声音装置。声音模拟输入接口314从麦克风等输入模拟音频信号,并且模数转换器(ADC)313将输入的模拟音频信号转换成数字音频信号。
[0054] 声音数字输出接口315从处理的音频数据产生数字音频信号(也称为“数字声音信号”)。数字音频信号经由设置在GPU 105中的数字音频信号输出插脚被输出到外部的数字声音装置。声音数字输入接口316从外面输入数字音频信号。
[0055] 输入音频信号还可以通过流处理器(SP)204被处理。例如运算控制单元203A还可以通过使用至少一个流处理器(SP)204,执行识别从麦克风输入的语音信号(音频信号)的语音识别处理。语音识别的结果可以经由PCI Express接口201被发送到主机。
[0056] 在实施例中,如上所述,GPU 105另外设置有输入/输出音频信号所必需的外部接口。此外,通过使用GPU 105的存储器105A和流处理器204执行高级音频处理,在高级音频处理中,通常在DSP中被实现的音频处理被扩展。因此,用于处理音频的DSP可以从计算机10的系统中被排除,并且可以减少系统的总成本。
[0057] 图4图解了由流处理器(SP)204执行的运算处理。来自运算控制单元203A的至少一个指令被输入到流处理器204(输入汇编器)。按照指令,流处理器(SP)从存储器105A中取出数据,并对取出的数据执行各种运算操作。通过指令确定执行的运算操作的内容。流处理器(SP)204连续地执行数据的取出和运算操作,同时根据需要将运算结果写入存储器105A或将运算结果反馈到流处理器(SP)204本身。
[0058] 图5图解了由流处理器(SP)204执行的回响处理的运算处理的实例。以下指令被预装载在流处理器(SP)204中:
[0059] 数据[n]=数据[n]+数据[n-1]×R
[0060] 其中R是表示回响处理中的回响的强度的系数。
[0061] 音频数据包括以时间系列方式排列的一系列数据(A、B、C、D、...)。音频数据被预先缓存在存储器105A中。流处理器(SP)204从存储器105A中获取音频数据作为离散数据,并执行预先给出的指令。因此,最后通过流处理器(SP)204产生音频数据,在该音频数据中,回响效果被应用到每个离散数据。在图5中的“输出”部分中,GPU 105将音频信号输出到外面,该音频信号对应于已经经过回响处理的音频数据,即,已经应用回响效果的音频数据。
[0062] 在上述方式中,可以通过GPU 10中的流处理器(SP)204执行DSP的替代处理。
[0063] 接下来,参考图6,给出由GPU 105执行的视频数据和音频数据的处理流程的说明。在本实施例中,所有的以下处理可以由GPU 105完成。
[0064] (1)GPU 105从主机接收视频数据和音频数据,并将接收到的视频数据和音频数据存储在存储器105A中。另外,GPU 105可以从主机接收其中视频数据和音频数据被多路传输的流数据,并且可以将接收到的流数据存储在存储器105A中。
[0065] (2)GPU 105分析视频数据,并按照视频数据的分析结果处理该视频数据。通过GPU105中的至少一个流处理器(SP)204,执行视频数据的分析和处理。根据装载在流处理器(SP)204中的指令,流处理器(SP)204执行视频数据的分析和处理。在与视频数据的分析和处理并行中,GPU 105可以分析音频数据并按照音频数据的分析结果处理该音频数据。通过GPU 105中的至少一个流处理器(SP)204,执行音频数据的分析和处理。根据装载在流处理器(SP)204中的指令,流处理器(SP)204执行音频数据的分析和处理。
[0066] (3)在视频数据的处理中,为了当前的视频帧的运算操作,可以反馈前一个视频帧的运算结果。类似地,在音频数据的处理中,为了当前的音频帧的运算操作,可以反馈前一个音频帧的运算结果。此外,如上所述,基于每个视频帧的分析结果,GPU 105可以处理相应的音频帧。
[0067] (4)GPU 105将与处理的视频数据相对应的视频信号和与处理的音频数据相对应的音频信号直接输出到外面。
[0068] 由此,一旦数据被装载在GPU 105的存储器105A中之后,GPU 105就不需要与CPU101通信。因此,可以减少CPU资源。
[0069] 接下来,参考图7,给出其中基于视频帧的分析结果处理音频帧的实例的说明。现在描述该情况,举例来说,其中属于正在说话的人的场景的音频数据中的每个帧被处理成加强人的语音,以便该语音可以被容易地听到。
[0070] 在流处理器(SP)204中,预装载执行以下处理的指令。
[0071] (1)分析视频数据的每个帧的图像,搜索嘴唇,并识别嘴唇的动作。
[0072] (2)从嘴唇的动作中,检测(识别)“其中人正在说话的场景”。
[0073] (3)在属于人正在说话的场景的音频数据的每个帧上,执行人的声带范围的开启、均衡等的处理,以便可以加强声带范围。
[0074] (4)处理的音频数据的每个帧被反馈到存储器105A上的相应的音频帧。
[0075] 随后,一些流处理器(SP)204从存储器105A取出视频数据和音频数据,并执行预先给出的指令。因此,最后,通过流处理器(SP)204产生音频数据,在该音频数据中,人的音带范围在人正在说话的场景中被加强。然后,与视频数据相对应的视频信号和与处理的音频数据相对应的音频信号被直接输出到外面。
[0076] 基于视频帧的分析结果来处理音频帧的实例不局限于上述实例。例如,音频数据中的每个帧的音量可以按照视频数据中的每个帧的亮度被调整。在这种情况下,可以降低与相对暗的场景相对应的音频数据的音量,并且可以增大与相对亮的场景相对应的音频数据的音量。另外,回响处理或环绕处理可以被应用到属于特定场景的每个音频帧。
[0077] 同时,近年来,已经发展了所谓的“GPGPU”环境,在“GPGPU”环境中,GPU被用于通用的操作。为了使得GPU执行通用的运算操作,使用“GPGPU”环境,通用的运算操作诸如科学上的和技术上的运算操作。在“GPGPU”环境中,将指令和数据从CPU发送到GPU,并且将通过GPU获得的运算结果从GPU发送回CPU。因此,即使如图8所示,(1)将音频数据从CPU501输入到常规的GPU 503,(2)音频数据的处理结果也需要从GPU 503被发送回CPU 501,并且进一步地(3)音频数据的处理结果需要从CPU 501被传送到DSP504。从而,消耗许多总线带。
[0078] 在本实施例中,如图9所示,GPU 105可以通过使用流处理器(SP)204处理视频数据和音频数据两者,并且GPU 105可以直接输出视频信号和音频信号。因此,简单地通过(1)将视频数据和音频数据从CPU 101传送到GPU 105,(2)GPU 105可以输出视频信号和音频信号。因此,可以不消耗CPU资源或总线带。
[0079] 接下来,参考图10,描述GPU 105的功能结构。
[0080] GPU 105包括视频流缓冲器601、视频解码器602、视频帧缓冲器603、音频流缓冲器604、音频解码器605、音频帧缓冲器606、视频&音频编辑处理模块607和视频&音频同步处理模块608。视频流缓冲器601、视频帧缓冲器603、音频流缓冲器604和音频帧缓冲器606是存储器105A上的存储区域。
[0081] 视频流缓冲器601是用于存储从主机传送的视频数据流的缓冲器。视频数据流可以被编码。音频流缓冲器604是用于存储从主机传送的音频数据流的缓冲器。音频数据流也可以被编码。
[0082] 视频解码器602从视频流缓冲器601中取出视频数据,并对取出的视频数据进行解码。通过对视频数据进行解码,帧单元数据、伴随每个帧的信息(例如颜色信息)以及用于同步的时间码被提取。颜色信息指示相应的视频帧的颜色格式(YUV,RGB)。通过解码以逐帧为基础获得的视频帧(图像数据)、颜色信息和时间码被存储在视频帧缓冲器603中。可以通过使得例如至少一个流处理器(SP)204执行解码处理来实现视频解码器602。换句话说,可以通过运算控制单元203A和至少一个流处理器(SP)来实现视频解码器602,通过运算控制单元203A将用于视频解码的任务分配给至少一个流处理器(SP)204。
[0083] 音频解码器605从音频流缓冲器604中取出音频数据,并对取出的音频数据进行解码。通过对音频数据进行解码,帧单元数据、伴随每个帧的信息以及用于同步的时间码被提取。通过解码以逐帧为基础获得的音频帧(数据)和时间码被存储在音频帧缓冲器606中。
[0084] 视频&音频编辑处理模块607执行视频帧缓冲器603上的视频数据的分析和处理,并且还执行音频帧缓冲器606上的音频数据的分析和处理。此外,视频&音频编辑处理模块607还可以基于视频帧缓冲器603上的视频数据的帧的分析结果,处理音频帧缓冲器606上的音频数据。视频&音频编辑处理模块607可以通过运算控制单元203A、由运算控制单元203A分配有用于视频分析的任务的至少一个流处理器(SP)204和由运算控制单元
203A分配有用于音频编辑的任务的至少一个流处理器(SP)204来实现。
[0085] 视频&音频编辑处理模块607还可以基于音频帧缓冲器606上的音频数据的每个帧的分析结果,处理视频帧缓冲器603上的视频数据的每个帧。视频&视频编辑处理模块607可以通过运算控制单元203A、由运算控制单元203A分配有用于音频分析的任务的至少一个流处理器(SP)204和由运算控制单元203A分配有用于视频编辑的任务的至少一个流处理器(SP)204来实现。
[0086] 视频&音频同步处理模块608通过使用每个被分析和处理的视频帧的时间码以及每个被分析和处理的音频帧的时间码,使视频数据和音频数据同步。与处理的视频数据相对应的视频信号经由视频信号输出接口206被输出到外面。同时,与处理的音频数据相对应的音频信号经由音频信号输入/输出接口207被输出到外面。
[0087] 在以上说明中,已经主要描述了以合作的方式处理视频数据和音频数据的实例。类似地,可以按照图形数据的每个帧的分析结果处理音频数据的每个帧。
[0088] 已经如上所述,根据本实施例,GPU 105可以适当地将与例如视频数据的每个场景的特征相对应的各种处理应用到音频数据。另外,GPU 105可以将与视频数据相对应的视频信号和与音频数据相对应的音频信号直接输出到外面。因此,音频数据可以协同视频数据被处理。
[0089] 此处描述的系统的各种模块可以被实现为软件应用程序、硬件和/或软件模块、或者诸如服务器的一个或多个计算机上的部件。同时,各种模块被分开图示,它们可以共用一些或全部相同的基础逻辑或密码。
[0090] 虽然已经描述了某些实施例,但是这些实施例仅仅是通过实例的方式来呈现,而并不意欲限制本发明的范围。实际上,此处描述的新的实施例可以被具体化为各种其他形态;此外,在没有背离本发明的精神的情况下,可以对此处描述的实施例作出各种省略、置换和改变。附有的权利要求书和它们的同等物是用来覆盖这种作为将落入本发明的范围和精神之内的形态或修改。