浅析H264视频压缩的参数设定
带宽测试主要作用在于获取服务器与客户端网络性能,掌握传输信道的带宽、时延抖动、误码率等参数,关键是端到端的有效带宽数据。带宽测定可以通过GanymedeSoftware公司的多功能网络业务测试软件Chariot,该软件从应用层的角度使用一些基准流量对网络系统的性能进行测试分析。Chariot由Chariot控制台和Endpoint两部分组成,其中Chariot控制台可以运行于Microsoft的各种Windows平台。在Chariot控制台上可以定义各种可能的测试拓扑结构和测试业务类型。Endpoint可以运行在几乎目前流行的所有操作系统上。ChariotEndpoint能够充分利用运行主机的资源,执行Chariot控制台发布的Script命令,从而完成需要的测试。如果在带宽测试不能实施的情况下,可以通过查阅权威机构发布的带宽报告来获取带宽数据,如中国互联网络信息中心2011年1日发布的《中国互联网络发展状况统计报告》显示,我国宽带普及率已经高达98.3%,全国平均互联网连接速度为100.9KB/s。
视频节目播放终端一般有电视机、计算机和移动终端等,播放终端调查有助于掌握用户终端的设备类型、显示设备分辨率、系统资源概况、操作系统类型及版本、播放器类型及版本、网络接入方式等信息,掌握视频节目的播放环境和限制因素,明确视频节目压缩的目标需求。具体视频压缩实践中针对主流设备确定压缩分辨率,确保不超过用户显示设备分辨率,常用播放终端支持分辨率如表1所示。源视频评价要素包括:(1)原始视频的质量。通过以下问题可以大概确定视频质量:视频是什么档次的摄像机拍摄的?当前以什么格式进行存储?分辨率是多少?源视频清晰度属于什么等级?(2)视频内容长度。Web上传输的视频要比用于电视上观看的视频短,用较低的码率对持续时间长的视频进行编码,控制压缩后的视频文件大小以便于存储和传输。
视频节目质量一般用标清和高清来表达,区别高清与标清有两种方法,一种是按视频分辨率大小来划分,如土豆网将分辨率大于640×480像素的视频认定为高清,低于该分辨率的为标准,另一种是按特定格式的码率,土豆网将采用H.264编码且视频码率不低于1Mbps的FLV、MP4、MKV格式文件划分为高清。此外,针对网络应用的视频节目,在视频压缩时也要考虑服务器的硬件配置、媒体存储方式、视频服务平台性能、服务器网络接入方式等服务器性能指标,确保网络视频服务器能稳定高效地为用户提供内容服务。
在视频编码压缩时,视频分辨率一般按视频源分辨率的成倍数缩小,如原始分辨率为1920×1080像素的高清视频,可以选用1/2帧尺寸大小960×540像素,或者选用1/4帧尺寸大小480像素×270像素。宽高比包括图像宽高比和像素宽高比两种,图像宽高比主要有16:9和4:3两种,16:9将成为显示设备的主流比例。将比例为4:3的视频节目转换为16:9有三种方式:(1)垂直充满,左右两侧出现黑边;(2)水平充满,而垂直方向图像上下被裁减;(3)完全填充,在16:9的屏幕上完全看到4:3的图像,垂直方向充满水平方向被拉长。将比例为16:9的视频节目转换为4:3有三种常规的变换方式:(1)切边模式(垂直方向充满,左右两边一部分信息被去掉);(2)信箱模式(水平方向充满,上下部分会出现黑边);(3)压缩模式(垂直方向充满,水平方向压缩后充满,使物体变高)。对于像素宽高比的选择主要依据原始视频的像素宽高比,DV、MPEG-2DVD和MPEG-1SVCD格式使用非方形像素,DV-NTSC画面大小是720×480,但图像宽高比可以是4:3,也可以是16:9,这主要取决于像素宽高比,但Web视频格式使用方形像素,如320×240像素,它的图像宽高比就是4:3。当将非方形像素转换为方形像素时,确保视频帧尺寸大小与源图像宽高比一致就可以确保宽高比校正的正确性。设置帧率要依据原始视频的内容特征,对于快速运动的视频尽量保持原始帧率,可选择帧率为25帧/秒,对于较少运动的视频,可选择帧率为15帧/秒。对于逐行视频可以适当降低帧率使视频帧获得更多的编码数据。采用H.264编码用于电视播放的节目时,场序设置取决于视频源的原来场序,不能更改场序,否则会造成画面的抖动而影响画面的质量。编码用于网络视频或逐行播放设备的视频则选择无,编码器采用去隔行技术转换成逐行扫描视频。
基本档次具有低复杂度、低延时的技术特征,考虑到恶劣环境下的容错性,主要针对交互式应用,如会议电视、可视电话、远程教学等实时视频通信。主要档次针对更高编码效率的应用,支持隔行视频,主要用于数字广播电视与数字存储。扩展档次支持容错技术、对比特流的灵活访问,支持码流之间有效的切换(SP片和SI片),但不支持隔行视频和CABAC,主要针对网络流媒体应用。高级档次主要针对高清广播电视和蓝光盘数字媒体存储。每一档次设置不同参数(如取样速率、图像尺寸、编码码率等)得到编解码器性能不同的级,如表2所示。在AdobeMediaEncoderCS4中,当编码H.264F4V、H.264MP4和H.2643GPP视频时,档次可以选择基本档次、主要档次和高级档次,级别可以选择任意选择,当编码H.264Blu-ray视频时,档次只能选择主要档次和高级档次,层级只能选择4.0或4.1。
码率用于描述视频帧的数据位数,数据位数越多,编码生成的文件越大,视频质量越高,码率代表了音频和视频的整体质量。码率有固定码率和可变码率两种模式,固定码率(ConstantBitRate,CBR)表示每段视频所使用的数据位数都是固定的,与音频或图像的复杂程序无关,固定码率可以保持平滑和连续的视频播放效果,可变码率(VariableBitRate,VBR)编码在不同的时间段具有不同的输出码率,通常以平均码率为目标,但在视频的不同编码部分分配不同的数据比特数,最大码率设置代表最高压缩质量时允许的码率。可变码率适用于基于Web下载播放的内容,追求最小的文件和最好的视频质量。当总码率确定后,就可以确定视频和音频各自的码率,视频流占用带宽远远大于音频流的带宽,计算视频码率最好的方法是根据总码率减去音频流码率得到视频码率。关键帧间距设置两个关键帧(I帧)之间的帧数,关键帧之间的帧记录了活动画面运动信息和场景变化,AdobeMediaEncoder自动基于当前视频帧率确定关键帧,如果视频画面场景切换频繁,画面中对象快速运动,应设置较低的关键帧间距。当关键帧间距设置为1时,视频序列中只有I帧。在码率恒定的情况下,帧间距越大,画面质量越高,因为数据没有浪费在描述那些并没有变化的帧。
在音频部分编码参数中,AAC、AAC+v1和AAC+v2的主要区别是:AAC+v1采用了频段复制(SpectralBandReplication)提高了低码率音频的质量,编码效率比标准的AAC提高30%,编码目标以24kbps每声道,定位于中等质量音频编码。AAC+v2主要采用参数立体声编码(ParametricStereo)技术,改进了低码率下立体声的质量,相对于AAC+v1,编码效率提高了50%,主要用于互联网、广播和其他非高保真应用。相对于视频码率而言,音频码率要小得多,常见的音频码率有24Kbps、32Kbps、64Kbps、128Kbps、192Kbps、224Kbps、256Kbps和320Kbps,影响音频码率的参数有输出声道、采样频率和量化位数。输出声道有单声道、立体声和5.1可供选择,采样频率常用的有22050Hz,44100Hz和48000Hz,量化位数一般为16位。在AdobeMediaEncoderCS4中,当编码格式选择为F4V、MP4和3GPP时,音频部分采用AAC编码。在视频压缩实践中,可以参照凤凰卫视、新浪视频、新华视频、土豆网、优酷网等网站的视频压缩参数配置,如表3所示,并结合自身的视频应用实际合理地设置视频压缩参数。
H.264视频压缩标准广泛应用于视频会议、宽带流媒体、高清广播电视和视频存储,视频应用领域和质量需求决定了视频压缩参数。在视频压缩实践中,首先要明确视频节目的应用情境和需求,再设置视频压缩器中H.264各项参数。存储或下载的视频节目,应优先保证视频质量,视频会议和流媒体应用,应优先考虑保证码率不超过端到端的有效带宽。也可以针对不同的带宽环境和播放终端,制作从标清到高清的多个版本供用户选择,以丰富和提高用户的视音频体验。(本文作者:赵建保、徐献灵 单位:东农工商职业技术学院)
本文html链接: http://www.istpei.com/qkh/29066.html