音视频转码曾被视为一种直接的、传统的处理过程,可将源视频编码,生成略差于原始未压缩内容的版本,然后将其重新解码为传输或观看所要求的格式。
随着视频压缩算法种类的日益丰富,且越来越多的低成本消费类系统也都开始支持视频功能,工程师肩负着设计出兼具低成本与良好视频性能系统的重担,因此必须认真审视上述这种简单模式匹配算法(brute force approach)。尽管这种方法能产生高质量视频效果,但由于视频伪像被当作有效数据包含在编码中,视频质量会随着每个编码/解码循环操作而递减。此外,该算法还存在其他缺点。
● 对处理器要求高:在算法效率不断提高的同时,其复杂性也越来越高,需要更高的处理能力,尤其是在需要实时转换的情况下。
● 对存储器资源要求高:解码/编码操作通常需要将被解码的数据存储在存储器中,而额外的存储器则会增加系统的材料清单成本。尤其对那些价格敏感型消费类产品而言,这将关系到产品在市场 中的成败。
移动设备上的视频回放功能就是一个需要减少处理器负载以及节约存储器资源的很好应用实例。尽管手机 本身不进行转码工作,而只是在视频点播(VoD)服务器或视频网关上进行转码,但移动电视/移动 视频电话仍然还受其他五点限制,分别是:
● 网络带宽;
● 移动 电话的处理能力;
● 显示屏分辨率;
● 存储器容量;
● 移动 电话的能耗,人们往往不把这一因素视为视频回放所要考虑的条件。
尽管移动 视频设备的处理能力一代比一代强大,但用手持设备捕获的HD或SD视频全都需要处理,这样才能被网络服务器上的终端设备播放。表1给出了不同视频编码参数对解码设备所需资源选择的大致影响。该表专门对采用运动补偿与离散余弦变换(DCT)技术实现视频压缩的基于块的视频编解码器进行了分析。
表1 编码参数的影响
对上述关键参数稍加修改,就会产生迥异的结果。降低细节解析度(可在编码进程中通过提高量化因数来实现)可将视频解码的能耗降低75%~85%,但视频质量仅下降5%~13%。
转码技术的选择
过去几年来,业界针对转码工作提出了几种不同的方法,可提高处理与存储器资源的使用效率。大多数这种方案都建立在这样一种认识基础之上,即我们能通过更先进的技术对初始编码过程中创建的量子化和频率域信息 进行修改,更好地加以利用,摒弃其中无用的东西,而不必简单地对原始视频内容进行重构。
换言之,就是说既可摒弃某些信息,也可在来源与目标之间转换频率域信息 ,而无须进入像素域进行解码。
具体而言,传统方案的最重要优势在于,其交付的视频与原始视频内容相比具有极高的保真度。因此,如果采用其他的转码技术,那么就需在保证尽可能高的视频质量的同时,还要降低对系统处理功能和存储器资源的要求。只有让转码技术与特定的应用相匹配,才能实现上述目标。
通常说来,转码可采用三种通用方案或架构,以下给出每种方案的简单定义及其比较评定。
● 松弛耦合转码器:这种转码技术大多数采用解码的输入视频中的运动矢量和其他附属信息 进行编码。再编码过程可对运动矢量进行微调,或根据编码要求进行更高效的运动矢量计算。该方法消除了去耦转码器所面临的复杂计算问题,同时还能实现几乎相同的视频质量。
● 紧密耦合转码:再编码通过采用运动矢量实现,并且无须进入像素域对运动矢量信息 进行再计算。转码工作也可在转换域中进行。这里需要重点考虑的问题是,由于这种方法根本不进行运动再估计,因此不能更改分辨率。这种方法最大程度地降低了对存储器和处理器的要求,但代价是降低了画质。紧密耦合转码算法难以制定,但可根据具体要求进行开发。
● 码率转换器:在转换域对位流进行部分解码,并用网络可支持的所需比特率对位流进行再编码。视频格式在转码流过程中不发生变化,无须逆变换,且在频率域进行再量化。通常采用这种方法来解决具体的问题。例如,线缆头端的通道容量在线缆厂已衰减,但又需要确保向终端设备传输的视频质量和分辨率基本不变。
图1 应用中最常用的松弛耦合转码器的典型流程图
使转码器与应用相匹配
在诸如机顶盒、视频会议、IPTV以及一些VoD等对画质要求较高的应用中,通常采用去耦和松弛耦合转码技术。决定采用何种转码技术需要评估特定应用的预期表现与存储器带宽。
紧密耦合转码最适合存储器有限或者不需要高画质的系统。移动电话的点对点视频电话应用就是一个很好的例子,因为视频只需显示在小屏幕上,而且分辨率相对较低,无须通过整个网络传输高保真视频。此外,对大量生产的设备,尤其是移动 电话而言,合计还能节约大量处理功耗、存储器容量及物料清单成本。
如前所述,码率转换器通常适用于有线电视、IPTV及视频电话应用中的某些特殊情况,并根据可用的系统带宽来匹配传输数据速率。其可以转换音频和视频的码率,而且几乎感觉不到品质的下降。
平台考虑事项
长期以来,设计工程师一直都非常清楚地认识到,针对每个产品需求分别进行设计,效率远不如在初期就设计一个统一灵活的平台来满足各种不同的需求。机顶盒(STB)就是一个很好的例子,这种产品存在众多型号要求。在估算处理性能及其他平台参数方面,转码发挥着重要的作用。
由于对STB而言最重要的就是实现高质量视频,因此只能将松弛耦合转码作为主要方法。
STB设计能否成功进入市场 不仅取决于设计初期选择什么样的平台,而且也取决于随后设计方案的逐步实施。STB的价位各不相同并在全球各地销售,与采用标准化格式的视频会议系统截然不同,其必须满足各种不同视频格式的需要。
STB 设计人员需要考虑以下一些更高级的设计决策:
● STB应同时处理多少个频道(如主视频和画中画)以及室内每个房间中的多少台电视。
● 需要采用哪些产品差异化功能来赢得市场 优势(例如画中画、专有图像、蓝光光盘刻录、视频通信、连接至 IP 网络、有线电视网络等)。
● 市场 部给出的初步价格点是多少。
与大多数设计的典型情况一样,上述这三项标准彼此密切相关,因而是平台创建的重要因素,所有产品变体在此基础上演变产生。这意味着,不仅应让灵活的处理器与可满足各种设计的兼容性开发软件相配合,而且还应提供广泛的固件库、算法和支持。
设置性能标准
支持HDTV 1080p标准是体现STB平台高端性能的重要指标,STB必须支持这种高级别的吞吐量,并实时调整显示输出。
此外,必须支持各种内容源和数字显示格式。低端有CIF格式及其分支,如QCIF格式等,可应用于视频流中并为DTV上的拆分屏幕应用提供基础支持。
众所周知,HD对带宽有着很高的要求,这就意味着我们应当支持各种压缩算法,其中包括H.264/MPEG-4 part 10/AVC以及WMV9/VC-1等高级编解码算法。通常需要将常规的MPEG-2传输流转码为高级编解码。
转码硬件必须与整个STB系统中的其他系统进行良好交互,其中包括数字调谐器、解多路复用器 (Demuxer)和解调器、DDR2存储器、PCI总线,以及向STB SoC传输音/视频的高带宽接口。图2是常见的架构示意图。
图2 典型的STB系统架构
图3 基于达芬奇技术的TMS320DM6467数字媒体处理器方框图
德州仪器(TI)基于达芬奇(DaVinciTM)技术的数字媒体处理器可实施这种架构。该架构的简化版如图3所示。 为了满足多房间观看电视和多频道欣赏的要求,可通过DDR2和PCI连接多个DM6467数字媒体处理器,以在不同设备间交换数据,并确保架构的可扩展性。例如,如果应用需要将摄像机上的SD或HD个人视频通过STB硬盘驱动器传输到手机 上,那么通过精巧的工程设计(Clever engineering)方案就可使用另一个解码方法将基于达芬奇技术的DM6467等处理器压缩到服务中。