背景技术
便携式多媒体处理平台与我们的生活息息相关,如MP3/MP4多媒体播放器、多媒体手机等就是这样的产品。视频处理系统往往是多媒体处理平台最核心的部分,视频处理系统的性能基本上决定了多媒体处理平台的性能,一个较典型的视频处理系统的系统架构如图1所示,包括:同步动态随机存储器(Synchronous Dynamic Acess Memory,SDRAM)、存储仲裁器(MemoryArbiter,MARB)、视频解码(VIDEO DECODER)模块、液晶显示控制(LiquidCrystal Display Control,LCDC)模块、视频后处理模块(Image Post Process,IPP)、摄像数据采集模块(包括传感器接口(Sensor Interface,SIF)模块和摄像机传感器(Camera Sensor))和显示模块(包括LCD接口(LCD Interface,LCDIF)模块和LCD屏)。
图1中还标识出了与上述视频处理系统相关的逻辑器件,包括:用于视频处理系统总体控制的ARM(Advanced RISC machine)处理器、APB(AdvancedPeripheral Bus)桥以及用于存储压缩视频流数据的SD存储卡(Secure DigitalMemory Card)。
上述视频处理系统中IPP模块的主要作用是将解码后的视频流叠加上字符数据后再存回SDRAM;LCDC模块的主要作用是将存储的已叠加了字符数据的视频流与静态图片数据进行合并,在需要进行显示时,将合并后的视频流数据输出给显示模块进行显示。
在图1中,实心线箭头表示数据流的走向,空心线箭头表示控制信令的走 向。
SD存储卡、VIDEO DECODER模块、LCDC模块、IPP模块通过高级微控制器总线架构(Advanced Microcontroller Bus Architecture,AMBA)扩展接口(AMBA Extended Interface,AXI)总线与MARB进行数据的交互。
图1所示的视频处理系统的具体工作流程如下:
步骤1、ARM处理器通过图1中的I总线(I BUS)执行SDRAM中预先写好的程序,然后通过D总线、AHB总线(Advanced High performance Bus)、APB桥和APB总线分别向IPP模块、LCDC模块、VIDEO DECODER模块和SD存储卡发送控制指令,控制其分别执行对应的逻辑;
步骤2、SD存储卡中的压缩视频流数据经过MARB存入SDRAM中的对应区域(在图1中使用标识为“encoded data”的方框表示);
步骤3、VIDEO DECODER模块将步骤2中存入SDRAM的压缩视频流数据取回,进行解码后,再将解码后的视频流数据写回SDRAM中的对应区域(在图1中使用标识为“decoded data”的方框表示);
步骤4、IPP模块中的读模块(AXI READ)读取解码后的视频流数据;同时,摄像数据采集模块中的SIF模块接收从Camera Sensor传送过来的视频流数据,两路视频流数据经过IPP模块中的选择模块(MUX),由MUX模块择其一输入给IPP模块中的缩放(SIZER)模块;
步骤5、SIZER模块将接收的视频流数据的图像尺寸进行放大或者缩小,并将经过缩放处理后的视频流数据输入至叠加(On Screen Display,OSD)模块;
步骤6、OSD模块将接收的视频流数据以及AXI READ模块从SDRAM读取的字符数据进行叠加(OVERLAY)处理,实现在视频图像的指定位置上叠加特定的字符;处理完成后的视频流数据再通过IPP模块中的写(AXI WRITE)模块写入SDRAM中的对应区域(在图1中使用标识为“decode+OSD”的方框表示);
步骤7、IPP模块中的AXI READ模块从SDRAM中的对应区域读取已叠加了字符数据的视频流数据,该视频流数据作为LCD屏显示所需的图层A(LAYER A)视频流数据,经过MUX模块和SIZER模块的透传,传送至LCDC模块中的合并(MERGE)模块;
步骤8、LCDC模块中的AXI READ模块从SDRAM中的对应存储区域(在图1中使用标识为“layer B”方框表示)读取静态图片数据,作为LCD屏显示所需的图层B(LAYER B)数据,并将该静态图片数据输出至MERGE模块;
步骤9、MERGE模块将LCD屏显示所需的LAYERA视频流数据和LAYERB静态图片数据进行合并处理后,再通过LCDC模块中的AXI READ模块将处理完成后的视频流数据写回SDRAM中的对应区域(在图1中使用标识为“decode+OSD+layer B”方框表示);
步骤10、当需要进行显示时,通过LCDC模块中的AXI READ模块读入步骤9处理完成的视频流数据,再通过格式转换模块(YUV2RGB)将数据格式由YUV格式转换成RGB格式,随后将转换后的视频流数据传送给显示模块中的LCDIF模块,并通过与之兼容的LCD屏进行显示。
从图1所示的结构以及工作流程的具体描述可以看出,现有的视频处理系统系统结构以及视频处理流程都比较复杂。
发明内容
本发明提供了一种新的视频处理装置,优化了现有技术中视频处理系统的结构以及性能。
本发明提供的视频处理装置之一,包括存储器、存储仲裁器、视频解码模块和显示模块,还包括:读模块、合并模块和写模块;
所述读模块,用于通过所述存储仲裁器从存储器中读取第一视频流数据,并在读取所述第一视频流数据的间隙时间内同时从所述存储器中读取字符数据和静态图片数据,并将所述第一视频流数据、字符数据和静态图片数据传送 至所述合并模块;以及通过所述存储仲裁器从所述存储器中读取所述写模块写入的第二视频流数据并输出至所述显示模块进行显示;
所述合并模块,用于将接收的所述字符数据、静态图片数据和第一视频流数据合并生成第二视频流数据并传送至所述写模块;
所述写模块,用于通过所述存储仲裁器将所述第二视频流数据写入所述存储器中。
本发明提供的视频处理装置之二,包括存储器、存储仲裁器、视频解码模块和显示模块,还包括:读模块、选择模块、摄像数据采集模块、合并模块和写模块;
所述读模块,用于通过所述存储仲裁器从存储器中读取第一视频流数据,并在读取所述第一视频流数据的间隙时间内同时从所述存储器中读取字符数据和静态图片数据,并将所述第一视频流数据传送至所述选择模块,将所述字符数据和静态图片数据传送至所述合并模块;以及通过所述存储仲裁器从所述存储器中读取所述写模块写入的第二视频流数据并输出至所述显示模块进行显示;
所述摄像数据采集模块,用于采集摄像机拍摄的第三视频流数据传送至所述选择模块;
所述选择模块,用于在所述第一视频流数据和第三视频流数据间进行选择,择一传送至所述合并模块;
所述合并模块,用于将第一视频流数据或第三视频流数据与所述字符数据和静态图片数据合并生成第二视频流数据并传送至所述写模块;
所述写模块,用于通过所述存储仲裁器将所述第二视频流数据写入所述存储器中。
本发明提供的视频处理装置之三,包括存储器、存储仲裁器、视频解码模块和显示模块,还包括:读模块、缩放模块、合并模块和写模块;
所述读模块,用于通过所述存储仲裁器从存储器中读取经视频解码模块解 码后的第一视频流数据,并在读取所述第一视频流数据的间隙时间内同时从所述存储器中读取字符数据和静态图片数据,并将所述第一视频流数据传送至所述缩放模块,将所述字符数据和静态图片数据传送至所述合并模块;以及通过所述存储仲裁器从所述存储器中读取所述写模块写入的第二视频流数据输出至所述显示模块进行显示;
所述缩放模块,用于对所述第一视频流数据的图像尺寸进行放大或缩小;并将缩放后的第一视频流数据传送至所述合并模块;
所述合并模块,用于将所述缩放后的第一视频流数据与所述字符数据和静态图片数据合并生成第二视频流数据并传送至所述写模块;
所述写模块,用于通过所述存储仲裁器将所述第二视频流数据写入所述存储器中。
本发明提供的视频处理装置之四,包括存储器、存储仲裁器、视频解码模块和显示模块,还包括:读模块、摄像数据采集模块、选择模块、缩放模块、合并模块和写模块;
所述读模块,用于通过所述存储仲裁器从存储器中读取经视频解码模块解码后的第一视频流数据,并在读取所述第一视频流数据的间隙时间内同时从所述存储器中读取字符数据和静态图片数据,并将所述第一视频流数据传送至所述选择模块,将所述字符数据和静态图片数据传送至所述合并模块;以及通过所述存储仲裁器从所述存储器中读取所述写模块写入的第二视频流数据输出至所述显示模块进行显示;
所述摄像数据采集模块,用于采集摄像机拍摄的第三视频流数据传送至所述选择模块;
所述选择模块,用于在所述第一视频流数据和第三视频流数据间进行选择,择一传送至所述缩放模块;
所述缩放模块,用于对第一视频流数据或第三视频流数据的图像尺寸进行放大或缩小;并将缩放后的第一视频流数据或第三视频流数据传送至所述合并 模块;
所述合并模块,用于将所述缩放后的第一视频流数据或第三视频流数据与所述字符数据和静态图片数据合并生成第二视频流数据并传送至所述写模块;
所述写模块,用于通过所述存储仲裁器将所述第二视频流数据写入所述存储器中。
本发明有益效果如下:
本发明提供的视频处理装置,从结构上来看,与现有技术中的视频处理系统相比,逻辑门的数量减少,整体结构更简单,从处理流程上看,处理流程更简化,处理时间相对缩短。
具体实施方式
下面结合附图,用具体实施例对本发明实施例提供的一种视频处理装置进行详细的说明。
实施例一:
本发明实施例一提供的视频处理装置,如图2所示,包括:存储器201、存储仲裁器202、视频解码模块203、显示模块204、读模块205、写模块206和合并模块207。
图2中还标识出了与该视频处理装置相关的逻辑模块包括:处理器209、APB桥210和SD存储卡208。其中:处理器209用于执行存储器201中预先 写好的程序,然后通过D总线、AHB总线、APB桥和APB总线分别向SD存储卡208、视频解码模块203以及读模块205、写模块206和合并模块207发送控制指令,控制其各自执行相应的逻辑操作。为了便于理解,图2中,读模块205、写模块206和合并模块207位于同在一个方框中,当然,在本发明具体实施过程中,这三个模块可以设计在同一个模块中,也可以是独立的各个模块。SD卡208的功能也与现有技术中相同,用于存储压缩的视频流数据,并将压缩的视频流数据存入存储器201中。
本发明实施例一提供的视频处理装置中的视频解码模块203、读模块205和写模块206与存储仲裁器202之间通过AXI总线连接,并通过存储仲裁器202与存储器201之间进行数据的读取和写入的操作。
本发明实施例一中,由于存储器201、存储仲裁器202、视频解码模块203和显示模块204的功能现有技术中的功能基本相同,下面重点对读模块205、写模块206和合并模块207的结构及功能进行详细的说明。
读模块205,用于通过存储仲裁器202从存储器201中读取静态多媒体数据(包括但不限于字符数据和静态图片数据)以及经视频解码模块203解码后的第一视频流数据,并将两者都传送至合并模块207;以及通过存储仲裁器202从存储器201中读取写模块206写入的第二视频流数据并输出至显示模块204进行显示。
读模块205在处理器209的控制下,在读取第一视频流数据和静态多媒体数据(例如字符数据和静态图片数据)时,由于字符数据和静态图片数据的数据量大小相比视频流数据来说非常小,因此可以实现在读取第一视频流数据的间隙时间内同时完成字符数据和静态图片数据的读取操作。以读取每秒30帧的视频流数据的实例来说,其中每一帧读取的时间约为30ms,每一帧有320行,那么每一行读取的时间约为0.1ms,在每一行读取时间的20%也就是0.02ms的空隙时间内,即可以完成字符数据和静态图片数据的读取。
合并模块207,用于将接收的静态多媒体数据和第一视频流数据合并生成 第二视频流数据并传送至写模块206。
由于现有技术中的叠加模块(OSD)是合并模块(MERGE)的一个子集,所以合并模块207既能够实现现有技术中将静态图片数据和视频流数据的合并的功能,同时也能够实现将字符数据和视频流数据的叠加功能。
写模块206,用于通过存储仲裁器202将第二视频流数据写入存储器201中。
实施例二:
本发明实施例二提供的视频处理装置,如图3所示,包括:存储器301、存储仲裁器302、视频解码模块303、显示模块304、读模块305、写模块306、选择模块307、摄像数据采集模块308和合并模块309。
图3中还标识出了SD存储卡310、处理器311和APB桥312。其中SD存储卡310与实施例一中SD存储卡的功能相同,在此不再赘述。处理器311用于执行存储器301中预先写好的程序,然后通过D总线、AHB总线、APB桥和APB总线分别向SD存储卡310、视频解码模块303以及读模块305、写模块306、选择模块307和合并模块309发送控制指令,控制其执行各自相应的逻辑操作。
本发明实施例二提供的视频处理装置中的视频解码模块303、读模块305和写模块306与存储仲裁器302之间通过AXI总线连接,并通过存储仲裁器302与存储器301之间进行数据的读取和写入的操作。
本发明实施例中,由于存储器301、存储仲裁器302、视频解码模块303和显示模块304的功能现有技术中的功能基本相同,下面重点对读模块305、写模块306、选择模块307、摄像数据采集模块308和合并模块309的结构及功能进行详细的说明。
读模块305,用于通过存储仲裁器302从存储器301中读取静态多媒体数据和经视频解码模块解码后的第一视频流数据,并将第一视频流数据传送至选择模块307,将静态多媒体数据传送至合并模块309;以及通过存储仲裁器302 从存储器301中读取写模块306写入的第二视频流数据输出至显示模块304进行显示。
与实施例一中的读模块205相似,本发明实施例二提供的读模块305在读取第一视频流数据和静态多媒体数据(例如字符数据和静态图片数据)时,通过在读取第一视频流数据的间隙时间内同时完成字符数据和静态图片数据的读取操作。
摄像数据采集模块308,与选择模块相连,用于将采集摄像机拍摄的第三视频流数据并将其传送至选择模块307。
摄像数据采集模块308使得本发明实施例二提供的视频处理装置在第一视频流数据的基础上,增加了另一路可以进行处理的视频流数据的来源,相应地,本发明实施例提供的视频处理装置就需要下述选择模块307对两路视频流数据的来源进行选择。
选择模块307,用于在读模块305传送的第一视频流数据和摄像数据采集模块308传送的第三视频流数据之间进行选择,择一传送至合并模块309。
写模块306,用于通过存储仲裁器302将第二视频流数据写入存储器301中。
实施例三:
本发明实施例三提供的视频处理装置,如图4所示,包括:存储器401、存储仲裁器402、视频解码模块403、显示模块404、读模块405、写模块406、缩放模块407和合并模块408。
图4中还标识出了SD存储卡409、处理器410和APB桥411。其中SD存储卡409与实施例一中SD存储卡的功能相同,在此不再赘述。处理器410用于执行存储器401中预先写好的程序,然后通过D总线、AHB总线、APB桥和APB总线分别向SD存储卡409、视频解码模块403以及读模块405、写模块406、缩放模块407和合并模块408发送控制指令,控制其执行各自相应的逻辑操作。
本发明实施例三提供的视频处理装置中的视频解码模块403、读模块405和写模块406与存储仲裁器402之间通过AXI总线连接,并通过存储仲裁器402与存储器401之间进行数据的读取和写入的操作。
本发明实施例三中,由于存储器401、存储仲裁器402、视频解码模块403和显示模块404的功能现有技术中的功能基本相同,下面重点对读模块405、写模块406、缩放模块407和合并模块408的结构及功能进行详细的说明。
读模块405,用于通过存储仲裁器402从存储器401中读取静态多媒体数据和经视频解码模块403解码后的第一视频流数据,并将读取的第一视频流数据传送至缩放模块407,将静态多媒体数据传送至合并模块408;以及通过存储仲裁器402从存储器401中读取写模块406写入的第二视频流数据,并将其输出至显示模块404进行显示。
与本发明与实施例一中的读模块205相似,本发明实施例三提供的读模块405在读取第一视频流数据和静态多媒体数据(例如字符数据和静态图片数据)时,通过在读取第一视频流数据的间隙时间内同时完成字符数据和静态图片数据的读取操作。
缩放模块407,用于对接收的第一视频流数据的图像尺寸进行放大或者缩小;并将经过图像缩放之后的第一视频流数据传送至合并模块408。
合并模块408,用于将经过缩放模块407缩放后的第一视频流数据与静态多媒体数据合并生成第二视频流数据,并将其传送至写模块406。
写模块406,用于通过存储仲裁器402将第二视频流数据写入存储器401中。
实施例四:
本发明实施例四提供的视频处理装置,如图5所示,包括:存储器501、存储仲裁器502、视频解码模块503、显示模块504、读模块505、写模块506、摄像数据采集模块507、选择模块508、缩放模块509和合并模块510。
图5中还标识出了SD存储卡511、处理器512和APB桥513。其中SD 存储卡511与实施例一中SD存储卡的功能相同,在此不再赘述。处理器512用于执行存储器501中预先写好的程序,然后通过D总线、AHB总线、APB桥和APB总线分别向SD存储卡511、视频解码模块503以及读模块505、写模块506、摄像数据采集模块507、选择模块508、缩放模块509和合并模块510发送控制指令,控制其执行各自相应的逻辑操作。
本发明实施例四提供的视频处理装置中的视频解码模块503、读模块505和写模块506与存储仲裁器502之间通过AXI总线连接,并通过存储仲裁器502与存储器501之间进行数据的读取和写入的操作。
本发明实施例三中,由于存储器501、存储仲裁器502、视频解码模块503和显示模块504的功能现有技术中的功能基本相同,下面重点对读模块505、写模块506、摄像数据采集模块507、选择模块508、缩放模块509和合并模块510的结构及功能进行详细的说明。
读模块505,用于通过存储仲裁器502从存储器501中读取静态多媒体数据和经视频解码模块解码后的第一视频流数据,并将读取到的第一视频流数据传送至选择模块508,将所述静态多媒体数据传送至合并模块510;以及通过存储仲裁器502从存储器501中读取写模块506写入的第二视频流数据,并将其输出至显示模块504进行显示;
与实施例一中的读模块205相似,本发明实施例四提供的读模块505在读取第一视频流数据和静态多媒体数据时,也可以通过在读取第一视频流数据的间隙时间内同时完成字符数据和静态图片数据的读取操作。
摄像数据采集模块507,与选择模块508相连,用于将采集的摄像机拍摄的第三视频流数据传送至选择模块508;
摄像数据采集模块507使得本发明实施例四提供的视频处理装置在第一视频流数据的基础上,增加了另一路可以进行处理的视频流数据的来源,相应地,本发明实施例四提供的视频处理装置就需要下述选择模块508对两路视频流数据的来源进行选择。
选择模块508,用于在读模块505传送的第一视频流数据和摄像数据采集模块507传送的第三视频流数据之间进行选择,择其一传送至缩放模块509;
缩放模块509,用于对接收的第一视频流数据或第三视频流数据的图像尺寸进行放大或缩小;并将经过图像缩放后的第一视频流数据或第三视频流数据传送至合并模块510;
合并模块510,用于将经过缩放模块509进行图像尺寸缩放后的第一视频流数据或第三视频流数据与接收的静态多媒体数据合并生成第二视频流数据并传送至写模块506;
写模块506,用于通过存储仲裁器502将接收的第二视频流数据写入存储器501中。
本发明实施例一、二、三或四提供的视频处理装置中的存储器包括但不限于同步动态随机存取存储器SDRAM,也可以是其它类型存储器,本发明实施例对其具体类型不做任何限定。
本发明实施例一、二、三或四提供的视频处理装置中的显示模块,其内部的具体结构根据显示屏的不同类型和结构会有些具体的差异,本发明对此不做任何限定。例如,显示模块采用常见的LCD屏进行显示的情况下,除了包括LCD接口模块和与之兼容的LCD屏之外,还可以包括YUV/RGB格式转换的模块,该模块用于将读模块读出的第二视频流数据由YUV格式转换成RGB格式,然后将RGB格式的视频数据流通过LCD接口模块传送至LCD屏上进行显示。
上述本发明实施例一至四所提供的视频处理装置,从具体结构方面来说,包含了一个读模块和一个写模块以及一个合并模块,与现有技术中的视频处理系统相比,至少减少了一个读模块、一个写模块和一个叠加模块。因此,本发明实施例提供的视频处理装置所使用的模块的数量减少,整体结构更简单。
从视频处理装置的视频流处理流程来看,本发明实施例提供的视频处理装置的处理流程也更简化。现有技术的视频处理装置在对解码后的第一视频流进 行叠加和合并的处理流程中,需要进行两次读和两次写的操作,在本发明实施例一至四所提供的视频处理装置中,都仅需要进行一次读和一次写的操作,这样,不仅使处理流程更简化,并且由于可以实现在读取第一视频流数据的间隙时间内同时完成字符数据和静态图片数据的读取操作,处理时间也相对缩短。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。