解读HTPC应用技术


高清视频观影体验的革命

快速兴起的高清应用

顾名思义,高清视频(High Definision Video)指的是高清晰度视频,相对普通视频的高清晰度通过提升分辨率得到。清晰度的提升对于敏感的人的视觉观感影响巨大,因此高清电视及高清视频在技术条件成熟后普及的速度非常快,迅速进入了家庭和PC多媒体用户的主流应用。这里提及的高清均为数字格式存储、传播的内容,考虑到传统模拟格式不可逆转的复制失真损失,数字高清早在十几年前就成为了这个领域既定的发展方向。


这里所谈论的高清视频还是一个较广义的概念,我们并不是特指业界的某个相应的规格,只是谈及这个领域的应用。通常来讲,720线逐行扫描(720p)以上分辨率的视频可以称为高清视频,这类视频目前以720p、1080i(1080线隔行扫描)、1080p为跨度区分质量,屏幕纵横比为16:9或4:3。很明显,这些分辨率都比1996年制定的DVD-VIDEO标准分辨率720x576(PAL制式)高得多。


如果刨除电影胶片,高清视频的先导无疑是HDTV-High Definition Television,美国FFC在1996年通过ATSC数字电视标准成为美国国家标准,1998年播出的第一个数字式HDTV节目,HDTV的大众化应用诞生。全球现在每周大约有700个小时、40套高清电视节目播出,共计1000万高清电视家庭用户。即使在我们身边,也一样能感受到这样的进程:

  2005年9月  中国第一个高清频道央视高清频道在杭州试播
  2006年1月  中央电视台《高清影视》频道正式开播
  2006年1月  上海文广集团《HD新视觉》频道正式开播
  2006年5月  华诚数字影业公司《高清电影》频道正式开播
  2007年   高清电视在全国迅速普及
  2008年   北京奥组委向国际奥组委承诺08年奥运会将全程采用高清直播


可以看到,以广播电视为媒介的高清应用已经逐步走进我们的生活,但内容的丰富程度和传统电视还相差较大。幸运的是,以光盘出版物为载体和互联网共享方式提供内容这两种方式要好得多——几乎所有最新电影都会发布对应的高清数字版本,因此拥有最佳适应性的PC系统就成为现时高清应用的最佳平台,本文就将用简短篇幅对高清视频的PC应用在理论和技术上以点代面的做出分析。


PC上实现高清体验的物质准备

高清视频应用需要几个关键点:合适的光盘介质驱动器、合法有效播放高清内容的硬件、合法有效输出高清内容的显示器。这里提及的驱动器指能够播放高清内容光盘的Blue-ray驱动器或者HD DVD驱动器;全程的“合法有效”指硬件支持HDCP数字内容保护技术;最后在显示器输出端,需要提供满足数字内容的分辨率,这意味着至少是1920*1080。


1.jpg

两种标准的高清发行格式都需要让最终用户大掏腰包


当然,我们也可以通过互联网得到破解后的高清数字内容,使用各种方式下载,这很流行,甚至是国内环境应用的主流,当然这并不合法......但是也因此能够省去昂贵的Blue-ray驱动器/HD DVD驱动器购置费用,也能够免去HDCP硬件的啰嗦......


2.jpg

典型HTPC外形


新兴的用户们把主要用途是播放高清或者能够高性能播放高清的PC命名为HTPCHome Theater Personal Computer,不得不承认这是继90年代多媒体PC后又一富有诱惑力的名词,上次只是给加了声卡的PC挂起的幌子,现在也好不到哪去。笔者认为HTPC是一种应用模式的概括,而不是一种产品的界定,只要我们把PC称职的用做播放高清数字视频的核心,那么它就是HTPC。


这么流行的新兴PC元素当然也不是纯粹概念炒作,相对于办公类PC或者是3D Game类PC,HTPC的硬件配置有着它自身特殊的需求,这其中除了高档光盘介质驱动器配置外,集中在对高清视频的解码能力上,这项能力将影响到视频的回放流畅度,直接影响用户的观影体验。


高清视频编码解码技术探秘

应用需求推进复杂编码解码技术

720p以上的高清视频能提供前所未有的细致入微画面,也因此带来了海量的数据存储:720p NTSC视频(30fps)的未压缩数字流即可高达165Mbps的数据速率,1小时长度的数字视频文件接近80GB,这对于用户端是根本无法接受的。显然优秀的压缩技术是普及高清视频的前提。

  视频压缩技术最近几年得到了长足发展:国际电信联盟 (ITU) 致力于电信应用,开发了用于低比特率视频电话的H.26x 标准,其中包括H.261、H.262、H.263与H.264;国际标准化组织 (ISO) 主要针对消费类应用,针对运动图像压缩定义了MPEG标准,包括MPEG1、MPEG2与MPEG4;此外还有专用于互联网流媒体应用、广受欢迎的专有解决方案,其中包括 Real Networks Real Video (RV10)、Microsoft Windows Media Video 9 (WMV9)系列等。在高清视频压缩方面,为了实现尽量高的压缩比,并保持良好画面质量,主流的编码格式除了MPEG2外最流行并被DVD标准制定组织DVD Forum认可的就是VC-1(微软WMVx的纯算法版)和H.264

用户在播放使用这些编码的高清视频的时候,就需要对进行过复杂编码后的视频进行实时解码。在这三种被高清视频使用的解码方式中,为达到相同画面质量,恒定码率的MPEG2对硬件要求最低,VC-1其次,H.264最高,但对硬盘空间的需求则是倒序,换句话说就是对硬件解码要求最高的H.264编码能够实现同样大小、播放时间文件中最为出色的画面质量。如果没有专门的解码器硬件支持,这个软件解码的过程对于CPU是一个非常严峻的考验,因为运算量非常巨大。通常来讲,3GHz以上的Core 2处理器可以应付目前几乎所有的高清视频,而如果用户HTPC的CPU不是那么强力,就必须要考虑显卡端的硬件辅助。


● AMD方案:UVD

Radeon HD 2000名称中的“HD”直白的标榜着最新一代Radeon产品对于高清类型应用的专业支持度,RV630和RV610内集成了堪称目前最强的硬件高清解码技术——UVD(Unified Video Decoder)。


3.jpg

UVD能够对VC-1、H.264两种编码格式的高清视频全程解码


UVD能够对VC-1、H.264两种编码格式的高清视频全程硬件解码,可以做到应对40Mbps码率影片的流畅全尺寸播放,100%释放CPU在这一过程中的参与。相对于以G84 GPU为核心的Geforce 8600系列显卡仅可以对H,264高清视频做Bitstream处理、De-Blocking等一系列操作外,RV630的高清视频解码更全面。

对高清视频文件进行解码的过程中,Bitstream、De-Blocking两相操作是最消耗CPU计算资源的部分,高清硬件解码主要工作就是把CPU从这一部分解脱出来。


● NVIDIA方案:PureVideo HD

NVIDIA的GPU在NV4x一代开始便引入辅助高清解码技术的PureVideo HD,并在06年初增加了对H.264编码格式视频的解码支持。G7X和G80 GPU的PureVideo HD特性依靠内部的VP(VideoProcessor)提供,在对高清视频进行解码时,能够完成除了Bitstream处理和InverseTransform之外的其它操作,包括对CPU能力要求不低的De-Blocking操作。但以H,264编码的高码率影片播放时,即使CPU被PureVideo HD从De-Blocking解放出来,Bitstream处理仍旧给CPU沉重的压力。


G84、G86 GPU在内部设计上大大增强了视频解码逻辑,除了VP版本更新并加强了性能之外,还新增了针对H.264解码的BSP(Bitstream Processor)引擎,解决原来G7X和G80 GPU的PureVideo HD仍需CPU进行Bitstream处理的问题,彻底接手高清视频解码的所有工作。


4.jpg

无PureVideo HD和两个版本PureVideo HD的H.264解码对比


以G84、G86 GPU为核心的Geforce 8600 / 8500 / Geforce 8400系列显卡,能够基本不需CPU计算能力的支持,就流畅播放高码率H.264压缩格式的高清视频,BSP支持CABAC/CAVLC(CABAC是对CPU要求最高的解码步骤)两种方式的Bitstream处理,即使使用的是低速CPU,CPU占用率也可以保持在40%以下,系统响应度和播放顺畅度都能够保证。


小节

显然,HTPC的核心基础是对高清视频的有效解码,以带来流畅的播放满足实际应用。除非用户仅限于播放MPEG2视频,否则都需要强大的视频解码能力。目前可以通过3个途径来实现:1、高性能的处理器(可以通过超频获得);2、支持高清硬件解码的显卡。


而在AMD和NVDIA两种显卡的对比上,AMD Radeon HD 2600/2400产品的UVD技术略胜一筹,它能够提供NVIDIA PureVideo HD相同的硬件H.264解码,同时还拥有对手不及的VC-1硬件解码,在配合从高到低的所有处理器时适应性更广:NVIDIA的设计思路则是把负载一般的VC-1解码交由CPU计算,这对目前主流处理器而言倒也不成问题,G84/G86也因此节省了大量晶体管。

还需了解 HTPC的其他相关


拥有了解码高清视频的必要能力,为了改善高清视频的应用和体验,我们的HTPC最好还在以下几个技术环节上达到要求,它们是HDCP数字内容保护、HDMI输出接口和数字音频输出。


● HDCP功能


HDCP的全称是High-bandwidth Digital Content Protection,也就是“高带宽数字内容保护”。简单的说,HDCP就是要将通过DVI/HDMI接口传递的数字信号进行加密,多媒体内容的发出端(电脑、DVD、机顶盒等)与接受端(显示器、电视机、投影机等)之间加上一道保护。这样一层保护主要并不是用来防止通过数字信号进行不合法的复制,而是将数字信号内容进行加密,使得不合法的复制无法无法得到准确的内容、满意的效果。


5.jpg

内置外置HDCP Key方案的对比


HDCP技术是由好莱坞与半导体界巨人Intel合作发开,它可以实际运用在显卡、DVD播放机等传输端,以及显示器、电视机、投影机的接收端之间。想在计算机上播放有版权的高清节目,不论是HDTV、蓝光还是HD DVD碟片,都要求显示器和显卡支持HDCP协议。


6.jpg

NVIDIA Geforce 8显卡上的HDCP key ROM


在显卡端,实现HDCP需要卡上安装有存放了HDCP Licence安全密钥的ROM,前文提到的AMD Radeon  HD 2000系列显卡已经在GPU内部集成了HDCP Key,而NVIDIA Geforce 8显卡在这方面大多数型号是选配,需要在PCB上额外焊装。显卡支持HDCP配置的意义在于,未来所有发行载体的高清视频内容均会被加入HDCP,如果显卡不支持这个功能,显示输出的内容将被降低分辨率水平甚至是不能输出信号。

微软在Windows Vista操作系统中对HDCP有强制的要求,简称为“保护性内容输出管理协议(OPM)”。首先它会检测显示卡是否采用HDMI数字连接,是否支持“高清数字内容保护协议(HDCP)”。一旦操作系统的OPM检测不到符合HDCP规范的显示卡,而你正好又要欣赏这些受协议保护的数字内容,会发生两种情况:这些受保护的视频内容会以低质量的图像格式播放出来,就像把压缩过头的JPEG图片再放大一样;另一种结果就是黑屏,什么都看不到。由此可见,所以作为一款全高清的显示卡,必须支持高带宽数字内容保护协议HDCP。


● HDMI超过DVI?


因为内置数字音频/视频信号,HDMI单一接口连接方式带来了前所未有的便利性,得到了HDTV输出设备的广泛支持,在PC系统中也有越来越多的产品支持HDMI。


HDMI:HDMI的英文全称是“High Definition Multimedia Interface”,中文的意思是高清晰度多媒体接口。HDMI接口可以提供高达5Gbps的数据传输带宽,可以传送无压缩的音频信号及高分辨率视频信号。同时无需在信号传送前进行数/模或者模/数转换,可以保证最高质量的影音信号传送。HDMI在针脚上和DVI兼容,采用了不同的封装接口,可以向下兼容DVI的数据传输,它们之间的技术规范也有一些区别。


7.jpg

HDMI vs DVI


一个典型的例子是HDMI与DVI虽然遵循相同的电气规格采用T.M.D.S的数字信号传输,但DVI做着PC规范的事,而HDMI遵循家电领域守则。比如PC一般采用了Full Range的RGB灰阶,灰阶数值范围是0至255;而对于家电这些消费类电子采用的RGB灰阶都是Limited Range,数值范围是16至235,16-235其实是对模拟电视格式的延续。这就使得PC用DVI输出到平板电视时图像丢失部分灰阶。


这当然不是要分处这两种接口谁好谁坏的问题,事实上两者核心技术是同源的,只是在不同的应用环境要不同对待,在高清视频回放方面,连接电视类输出设备,HDMI应是第一选择。


8.jpg

Radeon HD 2000系列的直接HDMI输出


目前AMD和NVIDIA的显卡产品均能直接提供或使用这种DVI—HDMI转接头,将显卡的DVI输出转成HDMI信号输出。特别的因为AMD GPU内置了数字音频逻辑,还能够直接在转接头中输出声音信号,NVIDIA方面也有部分产品支持带有音频信号的HDMI输出,但是数字音频信号来自外部的声卡。


数字音频输出


数字音频输出在高清视频流行前很多年就是PC影音爱好者的热门话题,具备这个能力的系统可以避开廉价声卡上劣质DAC的模拟声音输出,采用不同外置解码器得到自己想要的声音,对于HTPC也是如此,特别是对DTS等定位要求准确音效解码的玩家,都需要从HTPC中输出数字声音,自行解码播放。


数字音频输出的另外一个意义是和视频信号整合进HDMI,形成最便捷的操作方式。