处理多媒体信息的方法和系统转让专利

申请号 : CN200610008824.9

文献号 : CN1825934B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 帕特里克·卢

申请人 : 美国博通公司

摘要 :

本发明公开了一种在移动多媒体处理器中进行图像编辑的方法和系统,包括在包含集成的图像编辑器的移动多媒体芯片中编辑图像数据。可从多个存储设备中的至少一个中获取图像数据的至少一部分进行编辑。所述多个存储设备中的至少一个可集成在移动多媒体芯片中和/或位于所述移动多媒体芯片的外部。所述移动多媒体芯片可集成在具有可显示至少一部分编辑后的图像数据的可视显示器的移动设备内。所述图像数据可在移动多媒体芯片中进行编辑而与所述图像数据的文件格式无关。

权利要求 :

1.一种处理多媒体信息的方法,其特征在于,所述方法包括:

由集成在移动多媒体芯片中的图像编辑器从多个存储设备中的至少一个中获取图像数据以进行编辑;

通过所述集成的图像编辑器将所述图像数据的至少一部分从原始图像格式转换为与所述移动多媒体芯片进行编辑相适配的图像格式;

使用条带方法基于所述图像数据的格式在所述集成的图像编辑器内编辑所述图像数据,其中所述条带方法包括:从输入图像数据中读取下一条带,处理该条带,并将处理后的条带写入输出图像中。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:使用连接到所述移动多媒体芯片上的至少一个插件在所述集成的图像编辑器内编辑所述图像数据。

3.根据权利要求2所述的方法,其特征在于,所述多个存储设中的所述至少一个位于以下之一:集成在所述移动多媒体芯片中和位于所述移动多媒体芯片的外部。

4.根据权利要求1所述的方法,其特征在于,所述移动多媒体芯片集成在包含有用于显示至少一部分所述编辑后的图像数据的可视显示器的移动设备中。

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:独立于与所述图像数据相关的文件格式,在移动多媒体芯片中编辑所述图像数据。

6.根据权利要求1所述的方法,其特征在于,所述方法还包括:独立于与所述图像数据相关的源位置,在所述移动多媒体芯片中编辑所述图像数据。

7.一种处理多媒体信息的系统,其特征在于,所述系统包括:集成在移动多媒体芯片内的图像编辑器,从多个存储设备中的至少一个中获取图像数据以进行编辑;所述集成的图像编辑器将所述图像数据的至少一部分从原始图像格式转换为与所述移动多媒体芯片进行编辑相适配的图像格式,并使用条带方法基于所述图像数据的格式编辑所述图像数据,其中所述条带方法包括:从输入图像数据中读取下一条带,处理该条带,并将处理后的条带写入输出图像中。

8.根据权利要求7所述的系统,其特征在于,集成在所述移动多媒体芯片中的所述图像编辑器使用连接到所述移动多媒体芯片上的至少一个插件编辑所述图像数据。

9.根据权利要求8所述的系统,其特征在于,所述多个存储设中的所述至少一个位于以下之一:集成在所述移动多媒体芯片中和位于所述移动多媒体芯片的外部。

10.根据权利要求7所述的系统,其特征在于,集成在所述移动多媒体芯片中的所述图像编辑器集成在包含有用于显示至少一部分所述编辑后的图像数据的可视显示器的移动设备中。

说明书 :

处理多媒体信息的方法和系统

技术领域

[0001] 本发明涉及移动多媒体通信,更具体地,本发明涉及在移动多媒体处理器中进行图像编辑的方法和系统。

背景技术

[0002] 移动通信改变了人们通信的方式,移动电话也从一种奢侈品转变为人们日常生活的基本组成部分。移动电话的使用取决于社会情况,而不受地点和技术的限制。当前,语音连接已经满足了日常通信的基本需要,移动语音连接正不断溶入日常生活的方方面面,而移动通信革命的下一步将是使用移动互联网得的集成移动多媒体应用。 [0003] 能够提供多种高速接入技术的第三代(3G)蜂窝网络,以及特别设计来应用这些技术的移动电话,满足了人们对支持使用高级压缩标准的TV和音频应用、高分辨率游戏应用、音乐接口、外围接口支持等集成多媒体应用的需求。随着芯片设计者使用压缩技术和更高的带宽来传送更多的信息,处理要求也随之提高。3G无线应用所支持的比特率在384k/s到2M/s之间,这允许芯片设计者可以为无线系统提供多媒体性能、更高的质量、更低的干扰和更大的覆盖区域。
[0004] 随着移动多媒体服务越来越普及,功耗、网络性能性价比最优化和服务质量等因素对电信运营商来说将更为重要。细致的网络规划和部署、传输方式的改进、接收器技术和芯片集成方案的提高,才能使上述目标得以实现。在这点上,运营商需要一种技术使得可以为移动多媒体应用提供更高的下行吞吐量,以此来为移动多媒体应用服务的消费者提供更为出色的QoS性能和速率。
[0005] 当前,移动多媒体处理器还未充分开发单片系统(SOC)集成的作用,来为今天的移动手持机提供更为出色的总体系统解决方案。例如,现有的移动处 理器可使用多个硬件加速器来支持多种多媒体应用,这将明显地增加功耗、实现复杂度、移动处理器所占空间和移动终端的最终体积。尽管如此,可以提供更为出色的下行容量的新技术不断推出,进一步加速了人们对新一代多媒体应用的需求。这些新一代多媒体应用的首要目标是提供与在个人计算机(PC)中常用的应用类型相似的应用。
[0006] 比较本发明后续将要结合附图介绍的系统,现有技术的其它局限性和弊端对于本领域的普通技术人员来说是显而易见的。

发明内容

[0007] 本发明提供一种在移动多媒体处理器中进行图像编辑的系统和/或方法,结合至少一幅附图进行了说明,并在权利要求中进行了完整的描述。
[0008] 根据本发明的一个方面,提供一种处理多媒体信息的方法,所述方法包括:由集成在移动多媒体芯片中的图像编辑器从多个存储设备中的至少一个中获取图像数据以进行编辑;
[0009] 通过所述集成的图像编辑器将所述图像数据的至少一部分从原始图像格式转换为与所述移动多媒体芯片进行编辑相适配的图像格式;
[0010] 使用条带方法基于所述图像数据的格式在所述集成的图像编辑器内编辑所述图像数据,其中所述条带方法包括:从输入图像数据中读取下一条带,处理该条带,并将处理后的条带写入输出图像中。
[0011] 优选地,所述多个存储设中的所述至少一个位于以下之一:集成在所述移动多媒体芯片中和位于所述移动多媒体芯片的外部。
[0012] 优选地,所述移动多媒体芯片集成在包含有用于显示至少一部分所述编辑后的图像数据的可视显示器的移动设备中。
[0013] 优选地,所述方法还包括:独立于与所述图像数据相关的文件格式,在移动多媒体芯片中编辑所述图像数据。
[0014] 优选地,所述方法还包括:独立于与所述图像数据相关的源位置,在所述移动多媒体芯片中编辑所述图像数据。
[0015] 优选地,所述方法还包括:在所述移动多媒体芯片中编辑所述图像数据原始像素数据。
[0016] 优选地,所述方法还包括:使用连接到所述移动多媒体芯片上的至少一个插件在所述移动多媒体芯片内编辑所述图像数据。
[0017] 优选地,所述图像数据包括视频数据。
[0018] 根据本发明的一个方面,提供一种处理多媒体信息的系统,所述系统包括:集成在移动多媒体芯片内的图像编辑器,从多个存储设备中的至少一个中获取图像数据以进行编辑;所述集成的图像编辑器将所述图像数据的至少一部分从原始图像格式转换为与所述移动多媒体芯片进行编辑相适配的图像格式,并使用条带方法基于所述图像数据的格式编辑所述图像数据,其中所述条带方法包括:从输入图像数据中读取下一条带,处理该条带,并将处理后的条带写入输出图像中。
[0019] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器从多个存储设备中的至少一个中获取所述图像数据的至少一部分以进行所述编辑。
[0020] 优选地,所述多个存储设中的所述至少一个位于以下之一:集成在所述移动多媒体芯片中和位于所述移动多媒体芯片的外部。
[0021] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器集成在包含有用于显示至少一部分所述编辑后的图像数据的可视显示器的移动设备中。
[0022] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器独立于与所述图像数据相关的文件格式编辑所述图像数据。
[0023] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器独立于与所述图像数据相关的源位置编辑所述图像数据。
[0024] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器编辑所述图像数据的原始像素数据。
[0025] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器使用连接到所述移动多媒体芯片的至少一个插件编辑所述图像数据。
[0026] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器将至少一部分所述图像数据从所述图像数据的原始图像格式转换为与所述移动多媒体芯片进行编辑相适配的图片格式。
[0027] 优选地,集成在所述移动多媒体芯片中的所述图像编辑器使用条带方法基于所述图像数据的格式编辑所述图像数据。
[0028] 本发明的这些和其他优点、目的和创新特征,以及所描述的实施例的细节, 在结合以下描述和附图后将得到全面的理解。

附图说明

[0029] 图1A是依据本发明一个实施例的使用带有集成的图像编辑器的移动多媒体芯片的移动设备的结构示意图;
[0030] 图1B是依据本发明一个实施例的带有集成的图像编辑器的移动多媒体系统的结构示意图;
[0031] 图2A是依据本发明一个实施例的图像编辑器的框图;
[0032] 图2B是依据本发明一个实施例的图像编辑器的框图;
[0033] 图3是依据本发明一个实施例的使用条带处理(striping)方法处理视频数据的流程图;
[0034] 图4是依据本发明一个实施例的图2B所示的图像编辑器的图像操作的框图; [0035] 图5是依据本发明一个实施例的处理多媒体数据的的流程图。

具体实施方式

[0036] 本发明提供一种在移动多媒体处理器中进行图像编辑的方法和系统,包括在移动多媒体芯片中编辑视频数据。所述移动多媒体芯片可从片上存储器和/或片外存储器获得视频数据以进行编辑。所述移动多媒体芯片集成在移动设备内,所述移动设备包括可视显示器,显示至少一部分编辑后的视频数据。所述移动多媒体芯片对视频数据的编辑与文件格式和/或视频数据的源位置无关。此外,所述移动多媒体芯片可编辑视频数据的原始像素数据,还可将视频数据从其原始图片格式转换为与进行编辑的所述移动多媒体芯片相适配的图像格式。在本发明的一个实施例中,在所述移动多媒体芯片上连接有一个或多个插件,以提供附加的图像处理功能,例如消除“红眼”功能。
[0037] 图1A是依据本发明一个实施例的使用带有集成的图像编辑器的移动多媒体芯片的移动设备的结构示意图。如图1A中所示,移动设备102a包括显示器107a、主机处理器108a、主机存储器110a、天线104a和移动多媒体芯片 114a。移动多媒体芯片114a用于处理移动设备102a中的音频和/或视频数据。移动多媒体芯片114a包括图像编辑器116a和片上存储器122a。
[0038] 依据本发明的一个实施例,图像编辑器116a可为移动设备102a提供PC应用型的TM编辑功能。例如,图像编辑器116a实现PC应用程序例如Photoshop 的编辑功能。图像编辑器116a可包括适当的电路、逻辑和/或代码,提供多种图像编辑功能来编辑多个图像
118a、...、120a。移动设备102a中的移动多媒体芯片114a和/或主机处理器108a可在处理视频数据的过程中使用该图像编辑功能。图像编辑器116a每次可对一张图片的至少一部分执行多种图像编辑功能,以此来优化移动设备102a内的存储器使用和/或处理带宽。
图像编辑器116a的一些典型特征包括生成真彩全晰图片帧、可应用于脱机情况的CamPlus效果和图片合并(part-shot combining)。图像编辑器116a的某些其他特征包括通过屏蔽填充操作(masked fill operation)在图像上添加文字,使用插件进行高级或自定义图片操作,例如,调整亮度/对比度/色彩平衡等。
[0039] 在视频编辑过程中,图像文件格式和图像文件位置对移动多媒体芯片114a和/或主机处理器108a而言是透明的或隐藏的,这使得可以处理的文件格式更多,并可对加载到片上存储器122a中的压缩图像进行处理。在这点上,为实现处理,图像文件格式与视频数据的物理位置相隔离。此外,存储将要处理的视频数据的存储器缓存器可使用标识符例如用户定义的ID来标识,而不是绝对的存储器地址。移动多媒体芯片114a可通过天线114a从外部视频数据源,或通过连接105a从外部存储器106a接收将要处理的视频数据。 [0040] 在本发明的另一实施例中,图像编辑器116a可在脱机情况下处理任意大小的图像118a、...、120a,并允许移动多媒体芯片114a和/或主机处理器108a访问任意图像的原始像素数据,并将其作为图形用户界面(GUI)的一部分。依据本发明的另一实施例,图像rd编辑器116a可允许第三方(3 )写入用于实现用户定义的功能或效果的插件112a,以对图像(例如任何一个图像118a、...、120a)进行操作。例如,图像编辑器116a可允许第三方rd
(3 )写入插件112a,用于在视频显示器107a上显示处理后视频数据时,在移动设备102a中实现消除红眼功能。
[0041] 图像编辑器116a所支持的图像格式包括联合图像专家组(JPEG)格式、图像交换格式(GIF)和可移植的网络图象文件格式(PNG)。JPG是一种压缩技术,用于压缩彩色和灰度级连续色调图像。JPEG图像可支持1600万像素,并可应用于照片和复杂图形。GIF是一种支持256色的压缩技术,可用于线型图形、黑白图像和几个象素高的小文本。GIF格式还可支持透明格式,将背景色设置为透明,使得下面的网页的色彩可显现出来。PNG格式使用比GIF格式更高的压缩比,还可使用不透明度,或透明度的控制。
[0042] 依据本发明的一个实施例,图像编辑器116a可支持PNG和GIF格式。如果图像编辑器116a使用PNG格式,那么在编辑视频数据时可使用每像素24位(bpp)的格式,并使用阿尔法(alpha)信道且不用交错。如果图像编辑器116a使用GIF格式,那么视频数据编辑在无需采用交错、本地色彩映射和/或动画制作的情况下就可实现。尽管如此,本发明并不仅限于此。PNG解码、PNG编码和GIF编码可设置为默认选项。这可以通过在编译图像编辑器116a为PNG CODEC和/或GIF CODEC以实现PNG编码/解码和GIF编码时设置标志或参数来实现。
[0043] 图1B是依据本发明一个实施例的带有集成的图像编辑器的移动多媒体系统的结构框图。如图1B中所示,移动多媒体系统100包含核心处理器102、音频模块108、记忆棒模块110、SanDisk(SD)卡模块112、测试模块114、TV模块116、PC模块118和多个摄像头模块,即摄像头1120和摄像头2 120。系统100还可进一步包括基带闪存模块124、基带模块126、键盘模块128、RF模块130、天线132、主LCD模块134、次LCD模块136、可选闪存模块138和可选SDRAM模块140。核心处理器102可包括RAM模块104、图像编辑器103和模拟模块106。
[0044] 核心处理器102可包括适当的逻辑、电路和/或代码,用于为手持多媒体设备进行视频和/或多媒体数据处理。例如,核心处理器102可设计和优化为进行视频记录/回放、移动TV和3D移动游戏。核心处理器102为完全可编程结构,这样就可使用软件来执行多种多媒体功能,而无需增加与硬件加速器相关的成本开销和因市场不确定性而带来周期。核心处理器102可包括适当的逻 辑、电路和/或代码,用于将视频和音频处理、多音合成、LCD控制器和SRAM集成在同一芯片上。这种集成设计方法简化了设计,同时节省成本、空间和功率。核心处理器102既可作为独立多媒体处理器使用,也可作为主机的协处理器来使用。
[0045] 核心处理器102可以是例如具有128K位指令和数据高速缓存的150MHz双算术逻辑单元(ALU)VideoCore ll处理器。核心处理器102可以是例如带有唯一芯片ID代码的数字版权管理器(DRM)。核心处理器102带有为多种产品和算法例如SD卡、高级加密标准(AES)、3数据加密标准(3DES)和Rivest-Shamir-Adleman(RSA)提供可录制媒体内容保护加密的功能。核心处理器102可包含带有自由编程密钥的加密后代码。核心处理器102可用于进行视频压缩,例如运行视频CODEC如MPEG-4、H.263或H.264。核心处理器102可用于视频处理,例如图像传感器前端处理、防模糊或降噪处理,或用于视频分析,例如分割操作、目标识别或智能传感器。核心处理器102可包括例如52个通用I/O(GPIO)管脚。该GPIO管脚可用于用户定义的I/O或与内部外围设备连接。
[0046] 核心处理器102包括图像编辑器103、RAM模块104和模拟模块106。图像编辑器103包括适当的电路、逻辑和/或代码,实现移动多媒体系统100的视频数据编辑功能。例如,图像编辑器103可提供与图1A中的图像编辑器116a一样的图像编辑功能。RAM模块
106包括适当的电路、逻辑和/或代码,用于存储片上数据,例如10Mb的片上数据。模拟模块106可包含例如开关电源(SMPS)模块和锁相环(PLL)模块。
[0047] 模拟模块106可包括片上SMPS控制器,实现其核心电压的生成。该核心电压可依据核心处理器102上的速率要求进行软件编程,以此对功率管理进行进一步控制。正常情况下的核心电压工作范围在0.8V-1.2V之间,在休眠模式下,这个值降至约0.6V。模拟模块106还可包括多个锁相环,用于为例如外部设备生成195kHz-200MHz的时钟。核心处理器102可包括多个工作电源模式,例如,运行、待机、休眠和掉电模式。依据本发明的一个实施例,核心处理器102可包括旁路模式,允许主机在掉电模式下访问存储器映射的外 围设备。在旁路模式下,核心处理器102可在正常工作过程中直接对显示器进行控制,使得主机在待机模式下能维持所显示的内容。
[0048] 音频模块108可包括适当的逻辑、电路和/或代码,用于通过内置IC音频(I2S)、2
脉冲编码调制(PCM)或音频编解码(AC’97)接口与核心处理器102通信。AC’97/IS控制
2
器可在主模式或从模式下提供AC’97/IS音频输出。PCM接口可输入和输出话音或高质量立体声音频。PCM控制器包括独立的发射和接收先入先出(FIFO)缓存,并可使用DMA进一步降低处理器开销。音频模块108还可包括音频输入、音频输出端口和扬声器/麦克风端口。记忆棒模块110可包括适当的逻辑、电路和/或代码,用于通过记忆棒支持接口与核心处理器102通信。SD卡模块112可包括适当的逻辑、电路和/或代码,用于通过SD输入/输出(I/O)接口与核心处理器102通信。多媒体卡(MMC)也可用于通过SD输入/输出(I/O)接口与核心处理器102通信。
[0049] 测试模块114可包括适当的逻辑、电路和/或代码,用于通过联合测试行动组(JTAG)接口与核心处理器102通信。测试模块114可访问核心处理器102的地址空间,并通过仿真接口执行边界扫描。TV模块116可包括适当的逻辑、电路和/或代码,用于通过相位交替行(PAL)/国家电视标准委员会(NTSC)输出端口与核心处理器102通信。 [0050] PC模块118可包括适当的逻辑、电路和/或代码,用于通过通用串行总线(USB)1.1从端口与核心处理器102通信。多个摄像头接口如摄像头1 120和摄像头2 122可包括适当的逻辑、电路和/或代码,用于通过多格式原始CCIR601摄像头接口与核心处理器102通信。核心处理器102可进一步包括可编程8/16位CMOS/CCD摄像头输入端口,可支持多达两个的8M像素图像传感器和原始Bayer RGB格式8/10/12/16位数据。核心处理器102可包括带有开窗口和子采样功能的摄像头接口,用于连接移动TV前端。 [0051] 核心处理器102可包括多个串行接口,例如从USB1.1、主内置集成电路(I2C)、主2
串行外围设备接口(SPI)和用于蓝牙或IrDA的通用异步接收器/发射器(UART)。主IC接口可控制图像传感器,并可连接到智能电源或其他外围设备。SPI主接口可用于控制图像传感器。可提供两芯片选择来通过中断 或DMA在轮询模式下工作。核心处理器102可包括LCD控制器和接口,支持XGA分辨率的多个显示器,并处理8/9/16/18/21位视频数据。 [0052] 基带闪存模块124可包括适当的逻辑、电路和/或代码,通过8/16位并行主机接口从核心处理器102接收数据。主机接口可提供具有独立地址和数据寄存器的两条信道,由此主机处理器可直接读和/或写核心处理器102的存储空间。基带模块126可包括适当的逻辑、电路和/或代码,用于通过如8/16位并行主机接口与核心处理器102通信。键盘模块128和RF模块130可包括适当的逻辑、电路和/或代码,与基带模块126连接。天线
132可连接到RF模块130。核心处理器102可包括基带接口,对带有3位地址和8/16位数据总线的主机来说,以存储器映射外围设备的形式工作。该基带接口可包含具备电源有效旁路模式的双软件信道。
[0053] 主LCD模块134可包括适当的逻辑、电路和/或代码,通过显示控制器和第二外部存储器接口从核心处理器102接收数据。显示控制器可包括适当的逻辑、电路和/或代码,用于驱动内部TV输出功能或连接到多个LCD。显示控制器可支持多种屏幕缓存格式,使用直接存储器访问(DMA)直接访问缓存器,并最小化处理器开销。显示控制器可生成NTSC和PAL光栅格式来驱动TV输出。
[0054] 次LCD模块136可包括适当的逻辑、电路和/或代码,用于通过第二外部存储器接口与核心处理器102通信。核心处理器102可包括RGB外部数据总线。核心处理器102可使用像素级插值和可设置的刷新率对输出图像进行随缩放。
[0055] 可选闪存模块138可包括适当的逻辑、电路和/或代码,用于通过外部存储器接口与核心处理器102通信。可选SDRAM模块140可包括适当的逻辑、电路和/或代码,用于通过外部存储器接口从核心处理器102接收数据。核心处理器102可包括高速存储器接口,来连接到SDRAM、SRAM、闪存和外部外围设备。SDRAM和其他异步设备的控制和计时信息可由核心处理器102进行配置。核心处理器102可进一步包括辅助存储器接口,来连接到存储器映射LCD和外部外围设备。该辅助存储器接口可用于连接低速设备,却不会影响 外部存储器的访问速度。该辅助存储器接口可提供16个数据行和6个芯片选择/地址行,以及设置、访问和保持时间所使用的可编程总线计时。核心处理器102可支持NAND/NR闪存,包括NAND启动和高速直接存储器访问(DMA)。
[0056] 核心处理器102可用于移动视频领域内的多种应用,且具有最小功耗。核心处理器102的可编程特性提供了灵活性和适应性,使其可运行已有的和新的CODEC,可以使移动设备102a具备PC应用型编辑功能。例如,图像编辑器116a可实现PC应用程序如TMPhotoshop 一样的编辑功能。核心处理器102可运行高质量3D游戏,性能可与家庭控制台相媲美。矢量处理单元的并行特性使游戏开发商可开发通常由硬件支持的桌面游戏的像素着色和体积光源(volumetric lighting)等高端特征,并消耗很少的功率。例如,核心处理器102可使用图像编辑器103来实现手持移动通信设备如移动电话的图像编辑功能。 [0057] 图2A是依据本发明一个实施例的图像编辑器的框图。在图2A中,图像编辑器200a包括主机202a、存储器203a、磁盘204a、缓存管理器206a、资源模块208a、处理模块210a、CODEC模块212a、插件模块226a和图像编辑核心功能模块(IECFB)228a。图像编辑器200a中的资源模块208a、处理模块210a、CODEC模块212a、插件模块226a和IECFB 228a可在移动多媒体芯片(如图1A中的移动多媒体芯片114a)中由软件和/或固件来实现。 [0058] 主机202a包括主机处理器,集成在移动多媒体设备如移动电话中。存储器203a包括适当的存储器,可存储视频信息、代码和/或操作数据。磁盘204a可存储例如视频信息。缓存管理器206a可包括适当的逻辑、电路和/或代码,用于处理存储器模块203a内的存储。资源模块208a可包括适当的逻辑、电路和/或代码,为主机202a、存储器203a、磁盘
204a和/或缓存管理器206a处理资源的分配和解除分配。
[0059] 处理模块210a可包括适当的逻辑、电路和/或代码,用于处理输入图像。CODEC模块212a可包括适当的逻辑、电路和/或代码,可对一个或多个CODEC模块进行管理,例如RAW CODEC模块、PNG CODEC模块、JPEG CODEC模块和/或GIF CODEC模块。 [0060] 图像处理器核心功能模块(IECFB)228a可包括适当的逻辑、电路和/或代码,用于处理图像操作请求和/或对处理模块210a处理的一个或多个图像应用多种图像效果。例如,IECFB 228a可处理裁剪、调整大小、旋转、透明填充、掩码填充(mask fill)和/或TM
CamPlus 效果。插件模块226a可包括适当的逻辑、电路和/或代码,用于管理用户定义的一个或多个插件。
[0061] 在操作过程中,视频数据可通过缓存管理器206a从主机202a、存储器203a和/或磁盘204a发往处理模块210a。处理器模块210a可使用软件和/或固件来实现,使用CODEC模块212a和资源模块208a来对收到的视频数据进行处理和解码。处理器模块210a处理后的视频数据将发往IECFB 228a进行进一步处理。例如,IECFB228a可进一步编辑处理后的视频数据,和/或通过插件模块226a应用一个或多个可见效果。
[0062] 图2B是依据本发明一个实施例的图像编辑器的框图。在图2B中示出了主机202、存储器203、磁盘204、缓存管理器206、资源模块208、条带模块210、CODEC管理器模块212、插件效果模块224和插件管理器模块226。图中还示出了多个CODEC,包括RAW CODEC模块214、PNG CODEC模块216、JPEG CODEC模块218、GIF CODEC模块220和用于视频模块222的图像CODEC。图2D还包括图像操作请求模块228、图像效果模块230、CAMPLUS模块236、图像编辑器功能模块232、图像编辑器命令模块234和图像编辑器消息处理模块238。 [0063] 主机202可包括主机处理器,集成在移动多媒体设备如移动电话中。存储器203可包括适当的存储器,用于存储视频信息代码和/或操作数据。磁盘204可存储例如视频信息。缓冲管理器206可包括适当的逻辑、电路和/或代码,用于处理存储器模块203内的存储。
[0064] 资源模块208可包括适当的逻辑、电路和/或代码,用于为主机202、存储器203、磁盘204和/或缓存管理器206处理资源的分配和解除分配。资源模块208处理的资源可包括使用标识符例如用户定义ID而不是绝对的存储器地址来标识的存储器缓存。此外,图像文件信息如图像文件格式和/或图像文件位置对主机202而言是透明或隐藏的,这使得可以处理的文件格式更多,并可对 加载到存储器203中的压缩图像进行处理。图像编辑器200可使用统一资源概念,这样就可以对存储在不同物理媒介上的图像使用一个或多个处理命令。在这点上,该资源可包括存储在某一位置的图像数据,其可以是物理文件、存储器中的某个位置、主机存储器的某个位置、空资源和/或传输缓存。文件资源可标识文件的位置,包括路径名,用于指明文件位置所在。除了标识内部存储的文件,文件资源还可标识外部存储的文件。存储器资源可用于存储原始图像。这显著的降低了数据访问时间。对于存储在主机系统上的数据,可使用主机资源通过主机地址来访问这些数据。空资源可用于创建新图像,也可用作输入。文件格式可与数据的物理位置隔开,这利于视频数据的处理,如存储在存储器中的JPED文件,或添加新的CODEC来处理新图像/视频格式。每个资源可包括条带接口,如条带模块210,资源模块208可使用他们来处理输入的视频数据。 [0065] 条带模块或条带接口210可包括适当的逻辑、电路和/或代码,用于处理一条输入图像。每个资源可通过条带模块210传送给图像操作请求模块228。如果存在下一个基带,则条带模块210可从输入图像返回下一个条带,对该下一条带进行耙式扫描并将其存储在相应的输出图像中。该条带接口还可用于在原始图像格式和操作图像格式之间进行转换。
大多数图像操作是基于条带进行的,包括从输入图像读取下一条带,处理该条带,将该条带写入输出图像。由于存储器的限制,图像将以每块为基础进行处理。在这点上,可读取、处理一个条带并将其写入到存储器如存储器203中。
[0066] CODEC管理器模块212可包括适当的逻辑、电路和/或代码,用于管理一个或多个CODEC模块。例如,CODEC管理器模块212可管理RAW CODEC模块214、PNG CODEC模块216、JPEG CODEC模块218、GIF CODEC模块220和用于视频模块222的图像CODEC。在这点上,CODEC管理器模块212可管理不同图像CODEC的加载和卸载。
[0067] RAW CODEC模块214可包括适当的代码,这些代码可直接或静态的编译到图像编辑器REF#中。PNG CODEC模块216可包括适当的逻辑、电路和/或代码,可处理不同图像的PNG压缩和解压缩。PNG CODEC模块216可动 态的加载到图像编辑器REF#中。JPEG CODEC模块218可包括适当的逻辑、电路和/或代码,可处理不同图像的JPEG压缩和解压缩。一个或多个这种CODEC例如JPEG CODEC模块216可动态的加载到图像编辑器REF#中。GIF CODEC模块220可包括适当的逻辑、电路和/或代码,用于处理不同图像的GIF压缩和解压缩。用于视频模块222的图像CODEC可包括适当的逻辑和/或代码,用于处理不同图像的图像压缩和解压缩。
[0068] 插件效果模块224可包括适当的逻辑、电路和/或代码,处理用户定义的多种插件效果。例如,可创建消除“红眼”插件作为第三方应用程序,应用到图像编辑器200所处理的图像上。
[0069] 插件管理器模块226可包括适当的逻辑、电路和/或代码,管理用户定义的插件。在这点上,插件管理器模块226可为插件模块224处理多种功能,如初始化和重置功能。依据本发明的一个实施例,某些高级插件操作可能需要图像数据的整个帧,这种情况下可绕过条带接口210。在这点上,图像数据可从资源模块208提供的资源中读取或直接写入其中。有时可能存在这样的情况,即同一资源不能同时用作输入和输出。在这点上,将同一资源同时用作输入和输出将导致数据的损坏,因为处理图像时每次处理一个条带并写回文件。但输入和输出均位于存储器中且数据为原是格式的情况是一个例外。带有插件功能用于在移动多媒体设备中编辑图像的图像编辑器在美国专利申请No.__(代理案号No.17064US02)中给出了详细的介绍,本申请在此全文该专利申请公开的内容。 [0070] 图像操作请求模块228可包括适当的逻辑、电路和/或代码,可处理图像操作请求。图像效果模块230可包括适当的逻辑、电路和/或代码,可处理各种图像效果,如裁剪、TM
调整大小、旋转、透明填充、掩码填充和/或CamPlus 等。“透明填充”操作可用于在原始图片上粘贴目标图片,其中目标图片的颜色不是定义的透明色。CAMPLUS模块236可包括适TM
当的逻辑、电路和/或代码,能处理CamPlus 图像效果。图像编辑功能模块232可包括适当的逻辑、电路和/或代码,可实现主机202上运行的多种图片编辑功能。图像编辑器命令模块234可包括适当的逻辑、电路和/或代码,可生成与图像编辑命令有关 的操作请求。 [0071] 图像编辑器消息处理模块238可包括适当的逻辑、电路和/或代码,可处理图像编辑器消息的管理。例如,图像编辑消息处理模块238可实现对指示其停止、中止、完成、启动处理的命令的处理,并在处理完成时发送通知。例如,启动处理的命令导致使其开始处理输入图像的下一个条带。
[0072] 在本发明的一个实施例中,缓存管理器206、资源模块208、条带模块210、CODEC管理器模块212、插件效果模块224、插件管理器模块226、CODEC模块212、...、222、图像操作请求模块228、图像效果模块230、CAMPLUS模块236、图像编辑器功能模块232、图像编辑器命令模块234和图像编辑器消息处理模块238可由软件和/或固件在移动多媒体芯片中实现,例如图1A中的移动多媒体芯片114a。
[0073] 在操作过程中,图像编辑器200中的缓存管理器206可使用用户定义的标识符来管理存储器203中的图像数据。基于一种图像格式,CODEC管理器可将合适的CODEC加载到存储器203中。对于JPEG或PNG格式的图像而言,将分别动态地加载JPEG CODE218或PNG CODEC216。基于收到的命令,图像编辑器命令模块234可建立正确的请求,随后应用在条带模块210所指示的图像数据的条带上。依据本发明的一个实施例,图像编辑器200可处理如一个或多个静止图像的图像数据。但是,本发明并非仅限于此,图像编辑器200同样可以处理如来自视频流的视频数据等图像数据。
[0074] 如果图像编辑器200可使用外部存储器,可在外部存储器中创建用于存储视频数据的存储器资源。如果在外部存储器中没有足够的存储空间,图像编辑器200将生成一条错误消息。在本发明的一个实施例中,存储器缓存器按反向顺序释放,这样的分配方法将存储器碎片降至最低。此外,允许使用的存储器缓存的最大数量可固定为特定值,并可进行改变以实现起来更加灵活。存储器资源还可用作临时文件来存储原始数据,以加速图像操作。 [0075] 如果外部存储器不可用,图像编辑器200可以低速存储器模式运行,在此期间,将不支持24位/像素(bpp)的原始图像和PNG。以24bpp在内部运行的图像操作将用16bpp代替。但是,这些命令中的色彩参数仍指定为24bpp 的值。某些图像操作,例如显示非JPEG图像或旋转JPEG图像,将比使用外部存储器的时候慢,因为图像编辑器将使用临时文件。 [0076] 用于在移动通信设备中编辑图像的图像编辑器的结构在同期申请的美国专利申请No.__(代理案号为No.17063US02)中进行了详细的介绍,本申请在此全文引用该专利申请公开的内容。
[0077] 在本发明的一个实施例中,除了主应用线程即消息处理器外,图像编辑器200可包含工作线程。在这点上,一个工作线程将专门用于执行所有未完成的图像操作,而其他工作线程将专门用于向显示器,如移动设备上的显示器,输出处理后视频数据。 [0078] 在本发明的另一实施例中,图像编辑器命令模块234可建立与多个图像编辑器命令相关的操作请求。图像编辑器200的每个命令可作为输入资源串发往图像编辑器命令模块,对应的命令输出将作为输出资源串发往图像操作请求模块228。图像编辑器命令模块234处理的某些图像编辑器命令可用于返回图像编辑器200的状态,为当前和/或随后的图像操作建立输入图像,返回由集成的图像编辑器200正在编辑的图像的尺寸,以及停止正在运行的图像操作。图像编辑器命令模块234处理的其他图像编辑器命令可用于建立使用图像编辑器200分配给的特定程序的显示窗口,刷新或变换显示内容,以及复制所显示图像的选中部分已进行进一步处理。
[0079] 图像编辑器命令模块234处理的其他图像编辑器命令可用于使用镜像功能旋转图像,该功能是可选的,在旋转之后,使用由例如24bpp值确定的色彩填充图像的一个区域,将第二图像粘贴到打开进行编辑的已填充色彩或透明的第一图像上,在打开图像的一部分上填充颜色,对打开图像应用CamPlus效果。图像编辑器命令模块234处理的其他图像编辑器命令可用于将图像调整到指定的新尺寸,以及将图像裁剪到已确定的新区域。与存储器使用有关的图像编辑命令可由图像编辑指令模块234处理,用于移除或删除存储器资源或存储器缓存,列出存储器203中的所有缓存,删除所有存储器资源。与插件使用有关的图像编辑命令可由图像编辑指令模块234处理,用于添加插件所要使用的输入图像,为插件设置输出图像,列出一个或多个资源串以用于测试,重置资 源串,运行插件,和/或从插件中获取可视效果列表。
[0080] 图3是依据本发明一个实施例的使用条带方法处理视频数据的流程图。在该操作的一个实施例中,当在移动多媒体处理器中进行图像编辑时可使用条带处理方法。如图2B和图3所示,图像编辑器200中的大多数图像操作均基于条带进行。条带接口210还可用于在从主机202、存储器203和/或磁盘204收到的视频数据原始图像格式和操作图像格式之间进行转换。在这点上,图像编辑器200中的条带模块210可用于从输入图像中读取下一条带,处理该条带,并将该条带写入输出图像中。由于存储器的限制,图像将以每块为基础进行处理。在这点上,可读取、处理一个条带并将其写入到存储器如存储器203中。在步骤302,图像编辑器200中的条带模块210可从接收自磁盘204或存储器203的输入图像中读取下一条带。在步骤304,获取的条带可在图像编辑器200中进行处理。在步骤306,处理后的视频数据条带可写入输出图像中。处理后的输出图像可存储在存储器203中,并且图像编辑请求将发往图像操作请求模块228。图像编辑操作可通过图像效果模块230应用到处理后的图像上。此外,可通过插件管理器226将一个或多个插件效果应用到处理后的图像上。
[0081] 图4是依据本发明一个实施例的图2B所示图像编辑器进行图像操作的示意图。在图4中,示出了图像操作模块402、统一资源模块404a、404b、404c和404d、条带缓存模块406a和406b。统一资源模块404b、404c和404d是输入统一资源模块,而统一资源模块
404a是输出资源模块。输入统一资源模块404b、404c和404d中的每一个都可以处理一个或多个输入资源,而输出统一资源模块可处理一个输出资源。统一资源模块404b、404c和
404d可包括存储在某一位置的图像数据,如物理文件中的图像数据、存储器中的一个位置的图像数据、主机存储器中的一个位置的图像数据和/或空资源的图像数据。 [0082] 输入资源可包括发往图像编辑器200进行编辑的数据。输出资源可包括处理后的视频数据,这些数据已经由图像编辑器200进行了处理。空资源可用于创建新图像,也可用作输入。图像格式将与数据的物理位置隔开,以利于视频数据如存储在存储器中的JPEG文件的处理,或添加新的CODEC来处理新图像/视频格式。每个资源都可包括一个条带接口,图像操作模块402将使用该 接口处理输入的视频数据。
[0083] 在一个操作中,来自统一资源模块404b的一个或多个统一输出资源使用条带缓存模块406b进行处理,并发往图像操作模块402。图像操作模块402接收用于对条带缓存406生成的输出进行处理的输入参数。图像操作模块402生成的输出发往条带缓存406a,并提供给统一资源模块404a。统一资源模块404a可包括输出资源。在这点上,图像编辑器
200编辑的视频数据可发往并存储在存储器203、磁盘204或图像编辑器200外部存储器如片外存储器中。
[0084] 图5是依据本发明一个实施例的处理多媒体数据的流程图。如图1A和图5所示,在步骤502,集成在移动多媒体芯片114a中的图像编辑器116a从多个中的至少一个存储设备中获取视频数据进行编辑。例如,集成的图像编辑器116a可通过天线104a从远端存储设备通过无线方式获取数据。此外,集成的图像编辑器116a可通过连接105a从外部存储器106a获取视频数据。在步骤504,集成的图像编辑器116a将至少一部分获取的视频数据从视频数据的最初图像格式转换为与移动多媒体芯片兼容的图像格式以进行编辑。在步骤506,集成的图像编辑器116a可使用集带方法基于视频数据的格式对获取的数据进行编辑。此外,集成的图像编辑器116a可使用连接到移动多媒体芯片114a和/或集成的图像编辑器116a的插件112a。例如,在编辑过去的视频数据过程中,插件112a可用来提供防“红眼”功能。
[0085] 因此,本发明可由硬件、软件或者硬软件的结合来实现。本发明可在至少一个计算机系统中以集中的方式实现,或者以不同部件分布在几个交互连接的计算机系统中的分布式方式实现。任何种类的计算机系统或其他能够实现本发明的方法的设备都是适用的。硬件、软件和固件的一个典型结合是具有计算机程序的通用计算机系统,当该计算机程序被上载并执行时,控制该计算机系统以便实现本发明所述的方法。
[0086] 本发明的一个实施例可作为单独的芯片、应用专用集成电路(ASIC)实现为电路板级产品,或作为不同组件与系统的其他部分一起集成在单独的芯片上。系统集成的程度主要由速度和成本因素决定。由于现代处理的复杂特定,可使用商业可用处理器,该处理器可在本系统的ASIC实现的外部实现。作为 选择,如果处理器可作为ASIC核心或逻辑模块,那么商业可用处理器可作为固件形式的带有多种功能的ASIC设备的一部分来实现。 [0087] 本发明还可嵌入包括有能够实现所述方法的各种特征的计算机程序产品中, 当该程序加载到计算机系统中时能够实现本申请所述的方法。本文中所述的计算机程序是指,例如,以任何语言、代码或符号表示的一组指令,能够直接使具有信息处理能力的系统执行特定功能,或者经过以下一种或各种处理后使具有信息处理能力的系统执行特定功能:a)转换成另一种语言、代码或符号;b)以不同的材料复制。但是,本领域的普通技术人员可知的其他计算机程序的实现方法也可用于本发明。
[0088] 以上已结合一定的实施例对本发明进行了描述,本领域的普通技术人员可知,可对本发明进行各种改变或等同替换而并不脱离本发明的范围。此外,根据本发明的教导进行的以适应特定的环境或材料的各种修改也并未脱离本发明的范围。因此,本发明并不限于公开的具体实施例,本发明包括落入权利要求范围内的所有实施例。 [0089] 本申请全文引用并要求申请日为2005年2月12日、名称为“移动多媒体处理器内图像编辑的方法和系统”的美国临时专利申请No.60/652,481(代理案号为No.16436US01)的优先权。
[0090] 本申请还全文引用以下专利申请:
[0091] 美国专利申请No.____(代理案号为No.16430US02),申请日为2006年_月_日;
[0092] 美国专利申请No.____(代理案号为No.16431US02),申请日为2006年_月_日;
[0093] 美国专利申请No.____(代理案号为No.16432US02),申请日为2006年_月_日;
[0094] 美国专利申请No.____(代理案号为No.16433US02),申请日为2005年12月14日;
[0095] 美国专利申请No.____(代理案号为No.16434US02),申请日为2006年_月_日;
[0096] 美国专利申请No.____(代理案号为No.16435US02),申请日为2005年12月14日;
[0097] 美国专利申请No.____(代理案号为No.16437US02),申请日为2006年_月_日;
[0098] 美国专利申请No.____(代理案号为No.17063US02),申请日为2006年_月_日;
[0099] 美国专利申请No.____(代理案号为No.17064US02),申请日为2006年_月_日。