具有用于处理数字视频数据的可再用前端的模块结构的制作方法

文档序号:7605149阅读:222来源:国知局
专利名称:具有用于处理数字视频数据的可再用前端的模块结构的制作方法
技术领域
本发明涉及用于处理数字视频数据的技术。
背景技术
最近,随着计算机处理能力和可购性的提高,全运动视频设备变得更广泛地可用。特别地,数字视频功能已被加入到许多设备中,其中包括数字电视、数字直播系统、无线通信设备、便携式数字助理(PDA)、便携式计算机和台式计算机。这些设备与传统的模拟视频系统相比能在生成、修改、传送、保存和播放全运动视频序列方面提供显著的改进。
为了集成数字视频功能,这些设备往往支持各种便携式摄像机或摄影机应用。例如,典型地,这些设备包括数字取景器或其他显示器、用于视频数据捕捉的图像传感器和图像处理功能,以执行专门的图像处理,以及根据多种视频压缩标准或方法中的一个或多个执行数字视频数据的压缩和解压缩。提供这些数字视频功能往往要求大量的专用硬件、软件或以上二者。

发明内容
通常,本发明描述用于处理数字视频数据的技术,诸如编码或解码数字视频数据。一个诸如编码器、解码器或编码/解码器(CODEC)的设备,包括创新结构,在该结构中功能被划分为视频前端(VFE)和视频后端(VBE)。VFE封装功能和图像操作以支持各种应用并提供灵活的处理器间接口,通过该接口外部主设备能很容易控制这些操作。
这种划分使VBE与各种特定实现功能或操作隔离,诸如直接与摄影机接口硬件连接、执行色彩转换和驱动取景器所必要的其它图像处理功能。因此,在此描述的技术可提供分布式视频系统,该系统使集成数字视频功能到新设备中变得容易。结合任何期望的图像传感器、显示器和后端软件或固件或其组合,VFE可被很容易地在不同的应用中再利用,以很容易地将视频数据功能集成到新产品或新设备中。
在一个实施例中,系统包括视频前端(VFE),该视频前端具有可编程接口以接收指令,其中VFE根据指令捕捉视频输入数据并预处理该视频输入数据以产生视频输出数据。该系统进一步包括从VFE的视频输出数据产生视频数据的编码序列的视频后端(VBE)和通过接口提供指令到VFE以控制期望的视频输入数据的预处理的控制器。
在另一个实施例中,设备包括视频前端(VFE),该视频前端在由该设备提供的操作环境中执行并包括从外部设备接收指令的可编程接口。根据指令,VFE捕捉视频输入数据并预处理该视频输入数据以产生用于被视频后端编码的视频输出数据和用于被显示设备显示的视频显示数据。
在另一个实施例中,设备包括用于从主设备程控地接收指令的装置和用于根据该指令捕捉和预处理视频输入数据以产生视频输出数据和视频显示数据的装置。该设备进一步包括用于从视频输出数据产生视频数据的编码序列的装置。
在另一个实施例中,方法包括通过处理器间接口从主设备程控地接收指令,以及根据该指令通过从设备捕捉和预处理视频输入数据以产生第一图像格式的视频输出数据和第二图像格式的视频显示数据。该方法进一步包括将视频输出数据传送到编码器以产生视频数据的编码序列;和将视频显示数据传送到输出设备以显示。
一个或多个实施例的细节在下面的附图和描述中被阐明。根据描述、附图和权利要求,其他特征、目标和优点将是显而易见的。


图1是说明一个示例的数字视频设备的框图,该设备包括被划分成视频前端(VFE)和视频后端(VBE)的视频编码/解码器(CODEC);图2是进一步详细说明图1的VFE的实施例的框图;图3是进一步说明VFE的示例操作的状态图;
图4是说明数字视频设备的示例操作的流程图。
具体实施例方式
图1是说明示例数字视频设备10的框图,该设备包括被划分成视频前端(VFE)14和视频后端(VBE)16的视频编码/解码器(CODEC)12。设备10可作为向接收设备(未显示)传送视频数据的编码序列的源设备操作。类似地,设备10可作为能接收和解码视频数据的接收设备操作。示例设备包括处于计算机网络中的服务器、工作站或其他台式计算设备和移动计算设备,诸如便携式计算机、个人数字助理(PDA)、无线通信设备等等。其他例子包括数字电视直播卫星、数字电视、数字视频摄影机或其他记录设备、数字视频电话、无线视频设备等等。
为了举例,数字视频设备10被作为诸如移动电话的无线设备说明。然而,在此描述的技术并不限制于无线设备而且可以很容易被应用到其他数字视频设备。此外,尽管参考CODEC来说明,本公开不被如此限制并且可很容易被应用到编码器和解码器。
控制器24对包括VFE 14的CODEC 12的部件提供初级控制并协调与数字视频设备10的其他部件的通信。控制器24指挥CODEC 12执行编码和解码数字视频序列所需的许多高强度计算任务。CODEC 12可采用数字信号处理器(DSP)的形式并可具有用存储指令和数据的专用存储器41。可选地,或此外,CODEC 12可包括专用硬件、软件、固件或其组合。类似地,控制器24可采用嵌入式微处理器、专用硬件、软件的形式,例如,控制软件模块或其组合。此外,CODEC 12和控制器24以及设备10的其他部件可作为多个分立部件或其组合被实现在一个或多个专用集成电路(ASIC)中。
数字视频设备10也包括许多不同的外部设备,诸如显示器或取景器17和图像传感器23。在控制器24的指挥下,CODEC 12从图像传感器23捕捉视频输入数据30(VID)并将该视频输入数据传送到VFE14。摄影机接口22负责提取图像传感器23的接口细节。例如,响应来自VFE 14的控制和配置数据27,摄影机接口22使从图像传感器23接收的数据中的水平和垂直参考信号同步。摄影机接口22也可包括处理视频数据的限制功能,诸如遮蔽象素。
通常,CODEC 12的VFE 14封装功能和预处理操作以支持各种摄影机或便携式摄像机应用,并包括控制这些操作的灵活的处理器间接口。VFE 14的主任务是实时处理接收的视频输入数据30。VFE 14接收视频输入数据30并基于从控制器24接收的指令和配置参数25处理该数据以将视频输出数据(VOD)35生成为VBE 16可接受的格式。此外,VFE 14安排视频输入数据30的格式以产生适于被取景器17显示的格式的视频显示数据(VDD)37,该取景器可包括任何用于显示VDD的输出设备,例如,用于便携式摄像机或移动电话屏幕的液晶显示器(LCD)。VFE 14将视频输出数据35和视频显示数据37保存在用于分别供VBE 16和控制器24访问的视频存储器15中。VFE 14通过处理器间接口提供状态信息26以显示未决指令的状态。
VFE 14可对视频输入数据30执行复杂的图像处理操作,诸如将彩色视频帧转换成黑白格式、修改数据的对比度或亮度特性、数字增强或修改用于被捕捉数据的照明条件、执行数字放大操作、图像传感器处理和补偿,例如,白平衡、自动增益控制、灰度校正和修改被捕捉的视频数据以模拟晕环、日落、星形滤光或其它滤光效果。此外,VFE 14可减小帧频或被捕捉的视频输入数据30的图像尺寸。
如下面进一步详述,VFE 14提供一个处理器间应用程序接口(API),该接口允许控制器24很容易地控制和重新配置VFE 14。API提供处理器间接口,允许VFE 14作为控制器24的从设备工作。
VBE 16可包括任何软件应用、硬件单元等等,编码或解码视频数据。更具体地,VBE 16可利用视频输出数据35产生视频序列的编码比特流。当作为编码器工作时,VBE 16编码视频输出数据35并可将编码比特流缓冲到视频存储器15中,例如,用于通过发射器/接收器18和天线19进行无线传送。例如,VBE 16可包括用于数码照相机的JPEG静止图像编码器、用于便携式数字摄像机的MPEG视频编码器等等。因此,VBE可以是专有编码器或解码器,或可以根据多种数据压缩标准中的一个或多个处理视频输出数据35,这些标准包括诸如由运动图像专家组(MPEG)提出的MPEG-1、MPEG-2或MPEG4,由加利福尼亚库比提诺的苹果计算机提出的QuickTimeTM,由华盛顿雷蒙德的微软公司开发的Video for WindowsTM,由英特尔公司开发的IndeoTM,来自华盛顿西雅图RealNetwoks有限公司的RealVideoTM,和由SuperMac有限公司开发的CinepakTM,H.263,H.264,JPEG2000等等。
可选地或此外,VBE 16可作为解码器工作。更具体地,VBE 16可从接收器/发射器18接收编码视频序列的比特流,并处理该比特流以产生用于被VFE 14处理和显示的解码视频序列。VFE 14和VBE 16可交换控制信号28以触发视频处理操作。例如,控制器24或VFE 14可触发由VBE 16执行的编码操作。当作为解码器工作时,控制器24或VBE 16可触发由VFE 14执行的操作。VFE 14和VBE 16可作为独立的硬件或软件模块被提供,例如,由DSP执行的软件模块,或其组合。
存储器21、41存储分别用于控制器24和CODEC 12的指令和数据。尽管作为独立的存储器来说明,存储器21、41可以是公用存储器设备。存储器21、41可包括只读存储器(ROM)、同步动态随机存取存储器(SDRAM)、非易失性静态随机存取存储器(SRAM)、闪存、电可擦写的可编程只读存储器(EEPROM)等等。视频存储器24可采用视频动态存储器存取(VDMA)的形式。如说明的那样,存储器15、21可位于CODEC 12以外并连接到控制器24。
将CODEC 12的功能划分成VFE 14和VBE 16,如所述,隔离了VBE 16以执行各种特定实现功能,诸如直接与摄影机接口硬件22连接、执行色彩转换和其它驱动取景器17所必要的图像处理功能或其它特定实现操作。因此,VFE 14可被视为执行特定实现图像处理功能,而VBE 16能执行独立实现图像处理功能。
此外,该划分可提供增加的灵活性使将数字视频功能集成到新设备中变得容易。例如,VFE 14和VBE 16之间的功能划分产生了分布视频系统,并且允许设计者很容易地再利用VFE 14结合任何期望的后端软件或固件或其组合以将视频数据功能集成到新产品或新设备中。如此,通过连接VFE 14与新的VBE 16,新视频压缩标准可以很容易被支持。换句话说,设计者可再利用VFE 14作为公用模块结合任何期望的不同VBE或其他应用软件或固件,甚至专有VBE,以将数字视频功能集成到新设备中。而且,VFE 14的灵活性与可配置性允许VFE很容易结合不同的图像传感器和显示设备而被利用。因此,VFE 14只做很少改动或不用改动就可很容易被再利用并嵌入多个设备中,并且可以简化新设备的设计和制造,该新设备包括诸如基于JPEG的数码相机或集成基于MPEG的视频捕捉和通信的移动电话。
图2是进一步详细说明VFE 14(图1)的实施例的框图。如图所述,VFE 14可包括许多功能模块30A-30F和公用应用程序接口(API)32,通过该接口控制器24可程控地配置这些模块。许多模块30,例如,模块30B-30F,可被用于预处理视频数据以通过VBE 16编码,也可被用于后处理由VBE 16产生的解码视频序列。如此,模块30可被用于各种应用。模块30可作为在CODEC 12提供的操作环境中执行的软件模块被实现,例如,在DSP上实现。然而,模块30可在硬件、固件、软件或其组合中实现。
摄影机驱动器30A直接与摄影机接口硬件22连接,并给硬件编程以使其从图像传感器32捕捉一个或多个视频帧。具体的,摄影机驱动器30A发布指令27并且响应、接收视频输入数据30。
例如,摄影机驱动器30A可编程地配置摄影机接口硬件22以开始和停止视频捕捉。此外,摄影机驱动器30A定义图像帧尺寸,例如每帧的行数和每行的象素数,和用于数据采集的图像窗口,诸如低位在前或或高位在前(little or big Endian)的图像格式。进一步,摄影机驱动器30A可发布指令27以指挥摄影机接口硬件22在空间域和时域执行初始子采样以减小图像尺寸和帧频。
摄影机驱动器30A处理视频输入数据30并将该被处理数据以用于被VBE 16后端处理的标准格式存储到视频存储器15中(图1)。摄影机驱动器30A可例如用YCbCr(亮度-色度)4:2:2格式保存图像,这意味着图像数据的色度值仅在水平方向被子采样。例如,摄影机驱动器30可处理一尺寸为352×288象素的彩色图像或彩色帧以产生一个帧,在该帧中亮度数据保持352×288,但是色度值被子采样到尺寸为176×288象素。
帧频控制模块30B提供向下采样或向上采样视频数据的序列到期望的帧频的功能,该视频数据的序列被图像传感器23捕捉并由摄影机接口22产生,即视频输入数据30。帧频控制模块30B可例如用一个分数或整数因子向下取样或向上取样输入的视频输入数据30的视频帧,给VFE 14灵活性以应用到各种应用中。
图像处理模块30C允许控制器24对输入的视频输入数据30可编程地选择和应用逐帧图像处理功能。例如,控制器24可通过API 32发布指令以选择功能,诸如将彩色视频帧转换到黑白格式,修改数据的对比度或亮度特性,数字增强或修改用于捕捉数据的照明条件,执行数字放大操作,图像传感器处理和补偿,例如白平衡、自动增益控制和灰度校正,和修改被捕捉的视频数据以模拟晕环、日落、星形滤光或其它滤光效果。图像处理模块30C可应用这些功能以预处理用于被VBE 16编码的视频输入数据30,或后处理由VBE 16产生的解码视频序列。例如,图像处理模块30C可应用这些功能以增强由VBE 16从接收的视频比特流产生的解码视频序列。
图像尺寸控制模块30E提供向下取样或向上取样图像尺寸到期望的图像尺寸的功能。而且,图像尺寸控制模块30E可向下取样图像尺寸并保持纵横比,或得到不同的期望的纵横比。例如,具有640×480分辨率的VGE图像可被子采样到具有分辨率352×288的CIF格式。例如,图像尺寸控制模块30E可通过一个分数或整数因子向下取样视频输入数据30的图像尺寸,给VFE 14用于各种应用的灵活性。
取景器驱动器30D提供结合视频显示数据驱动取景器17的功能。取景器17可要求视频显示数据35为一种格式,该格式显著不同于视频输入数据30或视频输出数据35的格式。例如,取景器17可要求视频显示数据35以不同的帧频或图像尺寸。取景器驱动器30D可利用帧频控制模块30C和图像尺寸控制模块30E以处理视频输入数据30和用适于被取景器17显示的格式产生视频显示数据35。
色彩转换模块30F提供将视频输入数据30转换到一个不同的色彩空间的功能,例如,将数据转换成一个用于表现彩色图像数据的不同的格式。例如,色彩转换模块30F可处理视频输入数据30以产生用于VBE 16的YCbCr(量度-色度)4:2:2格式的视频输出数据35。此外,色彩转换模块也可处理视频输入数据30以产生用于取景器17显示的RGB格式的视频显示数据35。而且,色彩转换模块可控制该产生格式的色深,例如,16位、18位和24位色深。
控制器24程控地配置和通过根据API 32发布指令与VFE 14的模块30相互作用。在一个实施例中,API 32支持下面的指令配置-配置指令被用于给VFE 14编程,和允许控制器24指定用于控制模块30的功能的各种参数。
捕捉-捕捉指令启动捕捉和通过VFE 14处理视频输入数据30。
空闲-空闲指令指挥VFE 30停止视频输入数据30的捕捉。
为发布以上指令,控制器24可将这些指令写入CODEC 12中的存储器。更具体的,CODEC 12可包括用于保存未决指令的指令(CMD)寄存器37,和用于保存任何与指令相关的参数的指令(CMD)缓冲器36。通过将指令和相关参数分别写入指令寄存器37和指令缓冲器36,控制器24向VFE 14发布一个中断以指示指令是未决的。在一个实施例中,指令寄存器37包括单个32位缓冲器以保存用于正在发布的特定指令的指令头。指令缓冲器36包括具有能保存23个32位字大小的缓冲区。
VFE 14利用信息寄存器38指示未决指令的状态,例如,指令是否已完成,或是否遇到非法指令。VFE 14向控制器24发布中断以指示信息寄存器38中的新状态信息的可用性。控制器24在发布随后指令之前访问信息寄存器38以验证前面的指令已被彻底处理。
在一种实施方式中,信息寄存器38用8个32位字存储状态信息如下表1

在一种实施方式中,配置指令包括扩大参数表,该参数表使控制器24很容易程控地配置VFE 14以必要的支持设备10要求的视频功能。更具体地,控制器24将23字参数表写入指令缓冲器36,如下表所说明的表2

图3是进一步详细说明VFE 14示例操作的状态图。在这个实施例中,状态机60包括三个状态开始状态62,空闲状态64和捕捉状态66。
通过初始加电或硬件复位,VFE 14进入初始状态62。要使VFE 14退出这个状态,控制器24必须发布配置指令以程控地配置VFE 14,如上所述。通过接收配置指令,VFE 14转移到空闲状态64。
在空闲状态64中,VFE 14从控制器24没有产生错误地接收共三种可能的指令配置指令、捕捉指令和空闲指令。例如,控制器24可发布配置指令以再配置VFE 14。通过接收和处理配置指令,VFE 14返回空闲状态64。由于VFE 14已经工作在空闲状态64中空闲指令实质上被忽略。
通过接受配置指令,VFE 14转移到捕捉状态66并执行最近的配置指令设置的参数。当在捕捉状态66时,VFE 14启动摄影机接口硬件22,并开始接收和处理视频输入数据30。
最初,VFE 14检查与配置指令相关的参数以确定快照模式是否被使用。如果快照模式被使用,VFE 14捕捉视频输入数据30的一个单一的视频帧,并一旦捕捉该帧立刻返回空闲状态64。如果快照模式没有被使用,VFE 14保持在捕捉状态64并连续接收和处理视频帧。
更具体地,VFE 14接收视频输入数据30,并基于从控制器24接收到的指令和配置参数23处理该数据以将视频输出数据35生成为VBE 16可接收的格式。此外,VFE 14安排视频输入数据30的格式以产生适于被取景器17显示的格式的视频显示数据35,并将视频输出数据35保存在视频存储器15中用于被VBE 16或控制器24访问。
当工作在捕捉模式66时,VFE 14基于由控制器24提供的可编程的参数调用功能性模块30A-30F。例如,如上所述,摄影机驱动器30A可编程地配置摄影机接口硬件22以开始和停止视频捕捉。帧频控制模块30B将由图像传感器23捕捉并由摄影机接口22产生的视频输入数据30处理到期望的帧频。
图像处理模块30C可基于由控制器24经过配置指令提供的参数对视频输入数据30执行复杂的图像处理操作。取景器驱动器30D处理来自视频存储器15的视频输入数据30以产生适于被取景器17显示的格式的视频显示数据35。
图像尺寸控制模块30E提供向下取样图像尺寸到期望的图像尺寸的功能。色彩转换模块30F提供用于将视频输入数据30转换到不同色彩空间的功能,例如,像可被VBE 16或取景器17要求的那样用于表现彩色图像数据的不同格式。
VFE 14通过从控制器接收一个空闲指令结束图像捕捉66并返回空闲状态64。
图4是说明数字视频设备10的示例操作的流程图。最初,控制器24通过经由VFE 14的处理器间接口的指令25程控地配置CODEC 12(70)。如此,控制器24可被视为主设备,和CODEC 12可被视为从设备。
当CODEC 12作为解码器工作时,VFE 14根据指令捕捉和预处理视频输入数据30以产生第一图像格式的视频输出数据35和产生第二图像格式的视频显示数据(72)。在该处理过程中,根据可编程的格式,例如可编程的帧频、图像尺寸和色彩空间,VFE 14产生视频输出数据和视频显示数据。VFE 14将视频输出数据传送到VBE 16用于产生视频数据的编码序列(74),并将视频显示数据传送到控制器24用于在取景器17上显示(76)。以类似的方式,VFE 14可从VBE 16接收解码视频序列,并根据控制器24提供的指令25处理和显示该解码视频序列。
不同的实施方式已被描述,在其中示例视频编码/解码器(CODEC)被划分成视频前端(VFE)和视频后端(VBE)。如在本发明中所述,VFE封装功能和预处理操作以支持各种摄影机或便携式摄像机应用,并提供一个灵活的处理器间接口,通过该接口外部主设备可以很容易控制这些操作。这种划分产生分布式视频系统,该系统将VBE与各种特定实现功能隔离,这些特定实现功能包括诸如直接与摄影机接口硬件连接,执行驱动取景器所必要的色彩转换和其它图像处理功能,或其它特定实现操作。因此,在此描述的技术可提供增加的灵活性以使在新设备中集成数字视频功能变的容易。例如,设计者可很容易再利用VFE结合任何期望的后端软件或固件或其组合,以将数字视频功能集成到新产品或新设备中。这些和其它实施方式在随后的权利要求的范围内。
权利要求
1.一种系统包括具有可编程接口以接收指令的视频前端(VFE),其中所述VFE根据所述指令捕捉视频输入数据并预处理所述视频输入数据以产生视频输出数据;从所述VFE的视频输出数据产生视频数据的编码序列的视频后端(VBE);和通过所述接口向所述VFE提供指令以控制所述视频输入数据的预处理的控制器。
2.如权利要求1所述的系统,其中所述VFE根据所述指令预处理所述视频输入数据以产生用于显示的视频显示数据。
3.如权利要求2所述的系统,其中根据所述指令,所述VFE预处理所述视频输入数据以产生第一格式的用于被所述VBE处理的所述视频输出数据和第二格式的用于显示的所述视频显示数据。
4.如权利要求2所述的系统,其中所述VFE包括取景器驱动器,用于根据所述指令呈现所述视频显示数据;帧频控制模块,用于根据所述指令产生可编程的帧频的所述视频显示数据和所述视频输出数据;图像尺寸控制模块,用于根据所述指令产生可编程的图像尺寸的所述视频显示数据和所述视频输出数据;色彩转换模块,其基于所述指令,根据第一色彩空间产生用于被所述VBE处理的所述视频输出数据,和根据第二色彩空间产生用于被取景器驱动器显示的所述视频显示数据;和图像处理模块,用于根据所述指令对所述视频输入数据执行一个或多个图像处理操作。
5.如权利要求2所述的系统,其中所述可编程接口允许所述控制器程控地设置所述视频输入数据的输入图像格式和用于所述视频输出数据和所述视频显示数据的输出图像格式。
6.如权利要求5所述的系统,其中所述可编程接口允许所述控制器程控地为每个所述图像格式设置帧行距、每行的象素数、帧列高、每帧的行数。
7.如权利要求1所述的系统,其中所述可编程接口允许所述控制器程控地指定用于从所述视频输入数据中选择要丢掉的帧的第一位模式和用于从所述视频输入数据的每帧中选择要丢掉的X和Y象素的第二位模式,以产生所述视频输出数据。
8.如权利要求1所述的系统,其中所述可编程接口支持捕捉指令以程控地开始由所述VFE执行的所述视频输入数据的捕捉,支持空闲指令以程控地结束视频数据的捕捉,和支持配置指令以程控地控制视频数据的所述捕捉和处理。
9.如权利要求1所述的系统,其中所述VFE执行特定实现图像处理功能,并且所述VBE执行独立实现图像处理功能。
10.如权利要求1所述的系统,其中所述控制器在第一处理器的操作环境中执行,并且所述VFE和VBE在第二处理器的操作环境中执行,并且所述VFE的可编程接口包括从所述控制模块接收指令的可编程处理器间接口。
11.如权利要求10所述的系统,其中所述可编程处理器间接口包括从所述控制器接收所述指令的可编程指令寄存器;存储与所述指令相关的参数的可编程指令缓冲器;和将状态从所述VFE传送到所述控制器的状态寄存器。
12.如权利要求10述的系统,进一步包括可被第一和第二处理器访问的存储器,以存储所述视频输出数据。
13.如权利要求1所述的系统,其中所述系统包括视频编码/解码器(CODEC)。
14.一种设备包括在所述设备提供的操作环境中执行并具有可编程接口以从外部设备接收指令的视频前端(VFE),其中所述VFE根据所述指令捕捉视频输入数据和预处理所述视频输入数据,以产生用于视频后端编码的视频输出数据和用于显示设备显示的视频显示数据。
15.如权利要求14所述的设备,其中所述可编程接口支持用于定义第一图像格式和第二图像格式的参数,并且所述VFE基于所述指令根据所述第一图像格式产生所述视频输出数据并根据所述第二图像格式产生所述视频显示数据。
16.如权利要求14所述的设备,其中所述VFE进一步包括图像处理模块,用于根据所述指令对所述视频输入数据选择性地执行一个或多个图像处理操作,以产生所述视频输出数据和所述视频显示数据;帧频控制模块,用于根据所述指令产生可编程的帧频的所述视频显示数据和所述视频输出数据;图像尺寸控制模块,用于根据所述指令产生可编程的图像尺寸的所述视频显示数据和所述视频输出数据;和色彩转换模块,其基于所述指令,根据第一色彩空间产生用于被所述VBE处理的所述视频输出数据,和根据第二色彩空间产生用于被所述取景器驱动器显示的所述视频显示数据。
17.如权利要求16所述的设备,其中所述VFE进一步包括根据所述指令显示所述视频显示数据的取景器驱动器,其中所述取景器驱动器根据所述指令调用所述帧频控制模块和所述图像尺寸控制模块以用于取景器的帧频或图像尺寸产生所述视频显示数据。
18.如权利要求14所述的设备,其中所述可编程接口允许所述外部设备为每个所述视频输入数据、所述视频输出数据、所述视频显示数据程控地设置帧行距,每行的象素数,帧列高,每帧的行数和输入图像格式。
19.如权利要求14所述的设备,其中所述可编程接口允许所述外部设备为所述视频输出数据和所述视频显示数据程控地设置色彩空间。
20.如权利要求14所述的设备,其中所述可编程接口允许所述控制器程控地指定用于从所述视频输入数据选择要丢掉的帧的第一位模式和用于从所述视频输入数据的每帧中选择要丢掉的X和Y象素的第二位模式,以产生所述视频输出数据。
21.如权利要求14所述的设备,其中所述可编程接口支持捕捉指令以程控地开始由所述VFE执行的所述视频输入数据的捕捉,支持空闲指令以程控地结束视频数据的捕捉,和支持配置指令以程控地控制视频数据的所述捕捉和处理。
22.如权利要求14所述的设备,其中执行所述VFE的所述设备和所述外部设备包括可编程处理器,并且所述VFE的可编程接口包括可编程处理器间接口以从所述外部设备接收指令。
23.如权利要求22所述的设备,其中所述可编程处理器间接口包括从所述控制器接收所述指令的可编程指令寄存器;存储与所述指令相关的参数的可编程指令缓冲器;和将状态从所述VFE传送到所述控制器的状态寄存器。
24.如权利要求14所述的设备,其中所述设备包括视频编码/解码器(CODEC)。
25.如权利要求14所述的设备,其中所述设备包括提供用于所述VFE执行的所述操作环境的数字信号处理器(DSP)。
26.一种设备包括从主设备程控地接收指令的装置;根据所述指令捕捉和预处理视频输入数据以产生视频输出数据和视频显示数据的装置;和从所述视频输出数据产生视频数据的编码序列的装置。
27.如权利要求26所述的设备,其中所述接收装置支持用于定义第一图像格式和第二图像格式的参数,并且所述捕捉和预处理装置基于所述指令根据所述第一图像格式产生所述视频输出数据并根据所述第二图像格式产生所述视频显示数据。
28.如权利要求26所述的设备,其中所述捕捉和预处理装置进一步包括帧频减小装置,用于根据所述指令以可编程的帧频产生所述视频输出数据和所述视频显示数据;子采样装置,用于根据所述指令以可编程的图像尺寸产生所述视频输出数据和视频显示数据;取景器驱动器装置,用于根据所述指令显示所述视频显示数据,其中所述取景器驱动器装置根据所述指令调用所述帧频控制模块和图像尺寸控制模块以用于取景器的帧频或图像尺寸产生所述视频显示数据;和色彩转换装置,用于基于所述指令根据第一色彩空间产生用于被所述VBE处理的所述视频输出数据和根据第二色彩空间产生所述视频显示数据。
29.如权利要求26所述的设备,其中所述可编程接口允许所述主设备为每个所述视频输入数据、所述视频输出数据、所述视频显示数据程控地设置帧行距、每行的象素数、帧列高、每帧的行数和输入图像格式。
30.如权利要求26所述的设备,其中所述可编程接口允许所述主设备为所述视频输出数据和所述视频显示数据程控地设置色彩空间。
31.如权利要求26所述的设备,其中所述接收装置允许所述主设备程控地设置用于显示所述视频显示数据的象素计数器和行计数器,设置用于从所述视频输入数据选择要丢掉的帧的位模式以产生所述视频输出数据,和设置用于从所述视频输入数据的每帧中选择要丢掉的X和Y象素的位模式以产生所述视频输出数据。
32.如权利要求26所述的设备,其中所述接收装置包括处理器间通信装置包括从所述主设备接收所述指令和与所述指令相关的参数的装置;和将状态从所述捕捉和预处理装置传送到所述主设备的装置。
33.一种方法包括通过处理器间接口从主设备程控地接收指令;根据所述指令通过从设备捕捉和预处理视频输入数据以第一图像格式产生视频输出数据并以第二图像格式产生视频显示数据;将所述视频输出数据传送到编码器以产生视频数据的编码序列;和将所述视频显示数据传送到输出设备来显示。
34.如权利要求33所述的方法,其中捕捉和预处理所述视频输入数据包括根据所述指令以可编程的帧频和以可编程的图像尺寸产生所述视频输出数据和所述视频显示数据。
35.如权利要求33所述的方法,其中捕捉和预处理所述视频输入数据包括基于所述指令根据第一色彩空间产生用于被所述VBE处理的所述视频输出数据和根据第二色彩空间产生所述视频显示数据。
36.如权利要求33所述的方法,其中接收指令包括通过可被所述主设备和所述从设备访问的可编程寄存器接收所述指令和与所述指令相关的参数。
37.一种设备包括发布图像处理指令的主设备;和根据所述指令为视频前端(VFE)和视频后端(VBE)提供操作环境以编码或解码视频序列的的从设备;其中所述VFE包括可编程接口以接收所述图像处理指令,并且根据所述图像处理指令,捕捉和预处理用于被所述VBE编码的视频序列并从所述VBE接收和处理解码的视频序列。
38.如权利要求37所述的设备,其中所述可编程接口支持用于定义第一图像格式和第二图像格式的参数,并且所述VFE和所述VBE根据所述第一图像格式交换所述视频序列,并且所述VFE根据所述第二图像格式显示所述视频序列。
39.如权利要求37所述的设备,其中所述主设备为每个所述图像格式程控地设置帧行距、每行的象素数、帧列高和每帧的行数。
40.如权利要求37所述的设备,其中所述VFE包括帧频控制模块,该模块根据所述指令以可编程的帧频产生所述被交换的视频序列和所述被显示的视频序列。
41.如权利要求37所述的设备,其中所述VFE包括图像尺寸控制模块,该模块根据所述指令以可编程的图像尺寸产生所述被交换的视频序列和所述被显示的视频序列。
全文摘要
本文描述一种包括编码/解码器(CODEC)的设备,在该编码/解码器中,功能被划分为视频前端(VFE)和视频后端(VBE)。VFE封装功能和图像处理操作以支持各种应用,并提供灵活的处理器间接口,通过该接口外部主设备能很容易地控制这些操作。视频后端(VBE)作为编码器和/或解码器工作以产生编码和/或解码视频序列。VFE和VBE可在从设备提供的操作环境中工作。
文档编号H04N5/445GK1757226SQ200480005609
公开日2006年4月5日 申请日期2004年1月30日 优先权日2003年1月30日
发明者C·常 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1