一种avs视频基本流测试分析方法及设备的制作方法

文档序号:7629314阅读:141来源:国知局
专利名称:一种avs视频基本流测试分析方法及设备的制作方法
技术领域
本发明涉及AVS视频压缩码流的监测和分析领域,尤其涉及AVS视频基本流分析监测方法与设备。
背景技术
AVS是先进音视频编码标准(Advanced Video and audio Standard)的简称,是具有中国自主知识产权的第二代信源编码标准。AVS是一套适应面十分广阔的技术标准,优势表现在以下几个方面(1)AVS是基于我国自主创新技术和国际公开技术所构建的自主标准,妥善解决了知识产权问题;(2)编码效率高,比MPEG-2国际标准高2-3倍(高清晰度电视可达到3倍或更多);(3)计算复杂度低,硬件实现成本较低;(4)AVS可节省一半以上的无线频谱和有线信道资源,显著降低传输、存储设备与系统的经济投入。AVS标准包括系统、视频、音频、数字版权管理等四个主要技术标准和一致性测试等支撑标准。2004年12月29日,全国信息技术标准化技术委员会组织评审并通过了AVS标准视频草案。2005年3月30日,信产部初审认可,标准草案视频部分进入公示期。2005年8月完成了第三部分(音频)草案。
AVS标准是中国立足自主知识产权的产物,具有巨大的产业需求,在广播电视直播卫星、高清晰度数字电视、高密度光盘产业、3G视频通信、宽带网络流媒体、视频会议与视频监控等方面具有重大产业机遇,AVS标准为我国构建“技术→专利→标准→芯片与软件→整机与系统制造→数字媒体运营与文化产业”的产业链条提供了难得机遇。
AVS标准的产业化涉及到数字电视领域的各个不同的参与者,包括节目播出商、网络运营商、设备制造商和系统集成商。而节目播出商、网络运营商、设备制造商和系统集成商在使用AVS标准时,都需要符合AVS标准的测试测量设备作为基础工具,以检测设备是否合格、网络是否运转良好、节目播出与传输是否正常。AVS视频编码器产生的码流是按照AVS标准产生的,但是是否完全符合AVS标准,需要对该编码器产生的码流进行完备性测试和分析,编码器的性能也需要客观的评价。目前还没有一套完整的AVS视频基本流的测试分析检测工具。

发明内容
本发明的一个目的为了克服现有技术中对AVS码流测试通过人工分析实现,效率低,易出错的缺陷,提供一种AVS视频基本流测试分析设备,实现对AVS码流的全面测试、分析。
本发明的另一个目的是为了验证AVS视频码流压缩的语法、语义是否符合标准,并评价相应编码器的质量,从而提供一种应用于AVS视频基本流测试分析设备上的AVS视频基本流测试分析方法。
为了实现上述目的,本发明提供了一种AVS视频基本流测试分析方法,包括以下步骤1)、输入要分析的AVS码流和相应的原始YUV码流,若AVS码流为传输流,则对所输入的AVS码流进行解复用,抽取出视频基本流,如果输入的是AVS视频基本流,则直接进行分析;2)、对AVS码流中的视频基本流进行分析,实时显示解码后的图像,以及视频基本流中的序列摘要信息、帧摘要信息和宏块摘要信息,同时对视频基本流做标准一致性检验;3)、对视频基本流进行日志查看。
上述技术方案中,在所述的步骤1)中,所述的传输流是视频基本流和音频基本流的复用流,所述的解复用通过查找传输流中相应节目流里的视频流数据包的PID值,抽取出相应的视频流数据包,组合成视频基本流。
上述技术方案中,在所述的步骤2)中,对AVS码流中的视频基本流进行分析的方法包括2-1)、读取AVS视频基本流数据,判断当前数据是否是码流的结束点,如果是,退出分析,如果否,执行下一步;2-2)、判断当前的数据是否是序列的起始码,如果是,解析序列摘要,并选取序列摘要字段和序列中的各个参数,执行步骤2-9),如果否,执行下一步;2-3)、判断当前数据是否是帧头,如果是,解析帧的摘要信息,并执行步骤2-9),如果否,执行下一步;2-4)、判断当前数据是否是条带头,如果是,则解析条带头,并执行步骤2-9),实现对条带头摘要信息的一致性验证,若通过验证,则执行下一步,若当前数据不是条带头,则执行步骤2-8);2-5)、解码当前条带内的宏块,并对宏块进行计数,然后更新宏块摘要和运动信息,并得到宏块具体运动补偿/运动估计信息;2-6)、判断当前条带内是否所有宏块都已完成解码,若是,则执行下一步,否则,重复执行步骤2-5);2-7)、判断当前帧内是否所有宏块都已完成解码,若是,则更新要输出给用户的帧摘要信息,然后找到原始YUV文件的相应帧,计算当前帧的峰值信噪比,对相应内容进行统计,保存统计信息,并返回步骤2-1)继续分析;若否,直接返回步骤2-1),继续读取数据以解码下一条带。
2-8)、判断当前数据是否为序列终止信息,如果是,则结束分析过程,如果否,则继续判断当前数据是否是其他扩展头信息,如果是,则跳过该段码流,返回步骤2-1)继续读入信息,如果不是扩展头信息,则对读入的信息作合法性判断,是非法信息,发出警报,由用户判断是否分析过程是否结束,不是非法信息,则结束该序列分析;2-9)、对输入的摘要信息进行标准一致性验证,检验测试码流格式与各字段取值是否符合AVS标准规范,如果符合AVS标准,则将摘要信息输出给用户并更新用户的摘要显示信息,如果不符合AVS标准,则发出警报提醒用户,用户根据实际情况决定是否终止分析,终止分析,则退出分析过程,不终止分析,则跳过该段码流返回步骤2-1)读取数据继续进行分析。
上述技术方案中,在所述的步骤3)中,所述的日志包括详细记录了解码流程的TRACE日志文件,记录了在分析过程中所遇到的所有错误的错误日志文件和对日志文件的统计信息。
上述技术方案中,所述的序列摘要信息包括视频序列文件总大小,总帧数,总播放时间,总比特数,平均码率,平均帧率,视频图像象素尺寸,编码结构,码流格式及其档次和级别。
上述技术方案中,所述的帧摘要信息包括当前帧号,当前帧播放时间,帧象素尺寸,帧类型,编码模式,当前帧起始码在码流中的定位,当前帧占用的比特数。
上述技术方案中,所述的宏块摘要信息包括当前宏块所在帧号,当前宏块所在条带号,帧内相对宏块序号,宏块单位定位,象素单位定位,宏块编码模式,子宏块(8×8块)编码模式,子宏块(8×8块)前向/后向运动向量值,量化步长,编码占用比特数。
所述的宏块具体运动补偿/运动估计信息包括宏块类型和前/后向运动矢量。
上述技术方案中,所述的对视频基本流可作批处理分析,所述的批处理分析是指一次可以同时分析几个不同基本流文件,然后将分析结果列表显示,在表中包括每个基本流文件中每一帧的摘要信息以及每个基本流序列的统计信息。
一种与AVS视频基本流测试分析方法相对应的AVS视频基本流测试分析设备,该设备包括输入单元100,日志查看分析单元120,批处理分析单元130和输出单元140,还包括实时查看分析单元110,其中,所述输入单元100输入所要分析的AVS码流和原始YUV码流,并对传输流进行解复用,抽取出要分析的视频基本流;所述实时查看分析单元110从输入单元100得到AVS视频基本流,并对视频基本流的数据进行分析,得到码流中的序列、帧、条带、宏块的信息以及解码后的图像,并将实时显示的序列摘要信息、帧摘要信息和宏块摘要信息输出到输出单元140中;所述日志查看分析单元120从实时查看分析单元110中得到分析过程中的日志文件,日志查看分析单元120分析日志文件的内容,查看原始码流信息,总结统计分析的结果,最后将结果输出到输出单元140显示给用户;所述批处理分析单元130从输入单元100输入多个视频基本流和原始YUV文件,分析后以日志文件形式输出到输出单元140;所述输出单元140采用液晶显示器,实时显示输出或以磁盘文件形式输出对AVS视频基本流做测试分析的结果。
本发明可以减轻AVS视频码流繁琐的人工测试分析工作,使得AVS视频码流的测试工作变得简单规范。


图1为本发明的AVS视频基本流测试分析框架图;图2为本发明的AVS视频基本流测试分析方法中的AVS视频基本流实时测试分析流程图;图3为本发明的AVS视频基本流分析设备结构图;
图4为视频基本流中的码流结构示意图;图5为本发明的AVS视频基本流测试分析方法的流程图。
图面说明100 输入单元110 实时查看分析单元120日志查看分析单元130 批处理分析单元 140 输出单元具体实施方式
下面结合附图和具体实施方式
,对本发明的方法和相应的设备进行说明。
本发明的AVS视频基本流测试分析方法包括以下步骤步骤10、输入要分析的AVS码流和相应的原始YUV码流,如果输入的AVS码流是传输流,则对所输入的AVS码流进行解复用,抽取出视频基本流,如果输入的是AVS视频基本流,则直接进行分析。传输流是视频基本流和音频基本流的复用流,而本发明的方法是要对视频基本流进行测试、分析,因此,在对AVS码流作分析前,如果输入码流是传输流,则需要通过解复用将其从输入码流中提取出来。解复用是通过查找传输流中相应节目流里的视频流数据包的PID值,抽取出相应的视频流数据包,组合成视频流。
步骤20、对AVS码流中的视频基本流进行分析,并实时显示。在本步骤中,对AVS视频基本流的分析过程主要包含以下步骤步骤21、读取AVS视频基本流数据,判断当前数据是否是码流的结束点,如果是,退出分析,如果否,执行下一步;步骤22、判断当前的数据是否是序列的起始码,如果是,解析序列摘要,并选取序列摘要字段和序列中的各个参数,执行步骤29,如果否,执行下一步;在本步骤中,所得到的视频序列摘要主要包括以下内容·视频序列文件总大小·总帧数·总播放时间·总码字数·平均码率bits/s·平均帧率frames/s
·视频图像象素尺寸QCIF(176×144)/CIF(352×288)/ITU_601(720×576)/720P(1280×720)/1080i(1920×1080)·编码结构(帧/场,逐行/隔行)·码流格式(AVS)及其档次/级别步骤23、判断当前数据是否是帧头,如果是,解析帧的摘要信息,并执行步骤29,如果否,执行下一步;在本步骤中,帧摘要信息包括以下内容·当前帧号frame_num·当前帧播放时间·帧象素尺寸(QCIF176×144/CIF352×288/SD720×576/HD1280×720)·帧类型(I/B/P)·编码模式(field/frame)·当前帧起始码在码流中的定位·本帧占用比特数步骤24、判断当前数据是否是条带头,如果是,则解析条带头,并执行步骤29,实现对条带头摘要信息的一致性验证,若通过验证,则执行下一步,若当前数据不是条带头,则执行步骤28;步骤25、解码当前条带内的宏块,并对宏块进行计数,然后更新宏块摘要和运动信息,并得到宏块具体运动补偿/运动估计信息;在本步骤中,所得到的宏块摘要信息包括·(鼠标所指)当前宏块所在帧号frame_num·当前宏块所在条带号slice_num·帧内相对宏块序号MB_num·宏块单位定位(MB_x,MB_y)·象素单位定位(pixel_x,pixel_y)·比特流中定位·宏块编码模式·子宏块(8×8块)编码模式·子宏块(8×8块)前向/后向运动向量值·量化步长
·编码占用比特数除了宏块摘要信息外,本步骤还可得到宏块的运动补偿/运动估计信息,具体包括·宏块类型(用不同颜色标注)·运动矢量(箭头标注)步骤26、判断是否当前条带内所有宏块都已完成解码,若是,则执行下一步,否则,重复执行步骤25;步骤27、判断是否当前帧内所有宏块都已完成解码,若是,则更新要输出给用户的帧摘要信息,找到原始YUV文件的相应帧,计算当前帧的峰值信噪比(PSNR),对相应内容进行统计,保存统计信息,并返回步骤21继续分析;若否,直接返回步骤21,继续读取数据以解码下一条带;本步骤要保存的统计信息包括·不同帧同一宏块位置平均的比特数·同一帧内平均编码一个宏块所用比特数·平均量化值·宏块编码为intra类型的频率步骤28、判断当前数据是否为序列终止信息,如果是,则结束分析过程,如果否,则继续判断当前数据是否是其他扩展头信息,例如序列显示扩展,摄像机参数扩展,版权扩展等,如果是,则跳过该段码流,返回步骤21继续读入信息。如果读入的信息不是扩展头信息,则对读入的信息作合法性判断,如果是非法信息,则发出警报,由用户判断是否分析过程是否结束,如果不是非法信息,则结束该序列分析。
步骤29、对输入的摘要信息进行AVS一致性验证,检验测试码流格式与各字段取值是否符合AVS标准规范,如果符合AVS标准,则将摘要信息输出给用户并更新用户的摘要显示信息,如果不符合AVS标准,则发出警报提醒用户,用户根据实际情况判断是否终止分析,如果终止分析,则退出分析过程,如果不终止分析,则跳过该段码流返回步骤21读取数据继续进行分析。
在本步骤中,可实时显示序列摘要信息、帧摘要信息和宏块摘要信息。
步骤30、对视频基本流进行日志查看。在步骤20的分析过程中,得到的信息不能全部实时显示,需要查看分析过程中所得到的日志。所查看的日志可以包括多个方面,步骤31、查看TRACE日志文件,该文件详细记录了解码流程。
步骤32、查看错误日志文件,该文件记录了在分析过程中所遇到的所有错误。
步骤33、查看原始信息码流。可分别以十六进制、ASCII码形式查看,并可根据用户指定的绝对、相对地址查找相应位置数据。用户还可以根据个人喜好,选择每行显示的字节数目(4/8/16/32bytes)。
步骤34、查看统计信息。打开查看分析日志文件,并根据用户选择的统计范围(N~M帧)和统计内容(量化系数、峰值信噪比、每帧intra块数目、每帧编码用比特数等),计算统计结果。
本发明的方法还可以对视频基本流作批处理分析,所述的批处理分析是指一次可以同时分析几个不同基本流文件,然后将分析结果列表显示,在表中包括每个基本流文件中每个帧的摘要信息,如编码类型、量化系数、峰值信噪比、编码用比特数等;以及每个基本流序列的统计信息,如平均的码率、平均峰值信噪比等。
本发明还提供了一套与本发明的AVS视频基本流测试分析方法相对应的AVS视频基本流测试分析设备,这套测试设备采用便携式高性能计算平台(如ACME850计算机),按照功能划分为输入单元100,实时查看分析单元110,日志查看分析单元120,批处理分析单元130和输出单元140。
输入单元100的作用是输入所要分析的AVS码流和原始YUV码流。如果输入的AVS码流是传输流,则需要在此单元对传输流进行解复用,抽取出要分析的视频基本流。输入单元100将AVS视频基本流传送到实时查看分析单元110中,实时查看分析单元110对视频基本流的数据进行分析,得到码流中的序列、帧、条带、宏块的信息以及解码后的图像,并将可实时显示的序列摘要信息、帧摘要信息和宏块摘要信息输出到输出单元140中,实时显示。实时查看分析单元110在分析的同时,还要记录相应的日志文件。
实时查看分析单元110将在分析过程中得到的日志文件传送到日志查看分析单元120中,日志查看分析单元120分析日志文件的内容,查看原始码流信息,总结统计分析的结果,最后将结果通过输出单元140显示给用户。。
批处理分析单元130从输入单元100输入多个视频基本流和原始YUV文件,分析后以日志文件形式输出给客户。
输出单元140采用液晶显示器,实时显示输出或以磁盘文件形式输出对AVS视频基本流做测试分析的结果。
下面结合实际分析的例子来说明本发明的实际分析过程。
首先在输入单元100输入AVS码流example.avs或者example.ts.,同时输入原始码流exaple.yuv。其中的example.avs是AVS视频基本流文件,example.ts是视频传输流文件,example.yuv是原始的YUV码流。如果输入的是example.ts,则需要对example.ts解复用抽取出example.avs。
码流进入实时查看分析单元110example.avs码流结构分析如图4所示。打开example.avs,读入数据到缓冲区。从缓冲区读入码流数据,并判断码流是否结束。如果没有结束,则搜索序列的起始码,找到序列头并解析输出给用户,然后搜索到下一个起始码为扩展和用户数据的起始码,因此跳过该段码流,继续搜索下一个起始码,找到帧头的起始码。解析完帧头数据后,继续搜索起始码,找到下一个起始码为扩展和用户数据信息的起始码,因此跳过该段码流,继续搜索下一个起始码,找到条带头起始码,解析条带摘要数据,并解码条带内的宏块数据,循环解码每一个宏块数据,同时分析宏块的运动信息和摘要信息,显示运动向量和宏块类型(包括INTRA,INTER,DIREC,COPY,P8x8.分别用不同颜色标注)。循环解码完当前条带内所有宏块,继续读入信息查找下一个条带的起始码,如果循环分析完所有条带后,继续读入信息,寻找下一帧的起始码,循环分析完序列内所有帧后,继续读入信息,判断是否序列结束。
在上面解析码流的每一个环节中,都要进行标准的一致性验证,检查是否符合标准的语法语义。如果不符合标准则要发出警报。在上面分析的同时记录TRACE日志,错误日志和统计信息日志。
码流进入日志查看分析单元120,分别查看查看分析单元110输出的详细日志和原始码流信息,并做统计分析,结果输出给输出单元140。
为了多次重复测试和多个码流的对比分析,可采用批处理分析单元130。从输入单元100输入多个视频基本流和原始YUV文件,或者一个基本流的重复文件,批模式分析后以文件形式输出给客户。
权利要求
1.一种AVS视频基本流测试分析方法,包括以下步骤1)、输入要分析的AVS码流和相应的原始YUV码流,若AVS码流为传输流,则对所输入的AVS码流进行解复用,抽取出视频基本流,如果输入的是AVS视频基本流,则直接进行分析;2)、对AVS码流中的视频基本流进行分析,实时显示解码后的图像,以及视频基本流中的序列摘要信息、帧摘要信息和宏块摘要信息,同时对视频基本流做标准一致性检验;3)、对视频基本流进行日志查看。
2.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于,在所述的步骤1)中,所述的传输流是视频基本流和音频基本流的复用流,所述的解复用通过查找传输流中相应节目流里的视频流数据包的PID值,抽取出相应的视频流数据包,组合成视频基本流。
3.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于,在所述的步骤2)中,对AVS码流中的视频基本流进行分析的方法包括2-1)、读取AVS视频基本流数据,判断当前数据是否是码流的结束点,如果是,退出分析,如果否,执行下一步;2-2)、判断当前的数据是否是序列的起始码,如果是,解析序列摘要,并选取序列摘要字段和序列中的各个参数,执行步骤2-9),如果否,执行下一步;2-3)、判断当前数据是否是帧头,如果是,解析帧的摘要信息,并执行步骤2-9),如果否,执行下一步;2-4)、判断当前数据是否是条带头,如果是,则解析条带头,并执行步骤2-9),实现对条带头摘要信息的一致性验证,若通过验证,则执行下一步,若当前数据不是条带头,则执行步骤2-8);2-5)、解码当前条带内的宏块,并对宏块进行计数,然后更新宏块摘要和运动信息,并得到宏块的运动补偿/运动估计信息;2-6)、判断当前条带内是否所有宏块都已完成解码,若是,则执行下一步,否则,重复执行步骤2-5);2-7)、判断当前帧内是否所有宏块都已完成解码,若是,则更新要输出给用户的帧摘要信息,然后找到原始YUV文件的相应帧,计算当前帧的峰值信噪比,对相应内容进行统计,保存统计信息,并返回步骤2-1)继续分析;若否,直接返回步骤2-1),继续读取数据以解码下一条带;2-8)、判断当前数据是否为序列终止信息,如果是,则结束分析过程,如果否,则继续判断当前数据是否是其他扩展头信息,如果是,则跳过该段码流,返回步骤2-1)继续读入信息,如果不是扩展头信息,则对读入的信息作合法性判断,是非法信息,发出警报,由用户判断分析过程是否结束,不是非法信息,则结束该序列分析;2-9)、对输入的摘要信息进行标准一致性验证,检验测试码流格式与各字段取值是否符合AVS标准规范,如果符合AVS标准,则将摘要信息输出给用户并更新用户的摘要显示信息,如果不符合AVS标准,则发出警报提醒用户,用户根据实际情况决定是否终止分析,如果终止分析,则退出分析过程,不终止分析,则跳过该段码流返回步骤2-1)读取数据继续进行分析。
4.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于,在所述的步骤3)中,所述的日志包括详细记录了解码流程的TRACE日志文件,记录了在分析过程中所遇到的所有错误的错误日志文件和和对日志文件的统计信息。
5.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于,所述的序列摘要信息包括视频序列文件总大小,总帧数,总播放时间,总比特数,平均码率,平均帧率,视频图像尺寸,编码结构,码流格式及其档次和级别。
6.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于,所述的帧摘要信息包括当前帧号,当前帧播放时间,帧象素尺寸,帧类型,编码模式,当前帧起始码在码流中的定位,当前帧占用的比特数。
7.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于,所述的宏块摘要信息包括当前宏块所在帧的帧号,当前宏块所在条带的条带号,帧内相对宏块序号,宏块单位定位,象素单位定位,宏块编码模式,子宏块编码模式,量化步长,编码占用比特数。
8.根据权利要求3所述的AVS视频基本流测试分析方法,其特征在于,所述的宏块具体的运动补偿/运动估计信息包括宏块类型和前后向运动矢量。
9.根据权利要求1所述的AVS视频基本流测试分析方法,其特征在于, 所述的视频基本流可作批处理分析,所述的批处理分析是指一次可以同时分析几个不同要信息以及每个基本流序列的统计信息。
10.一种与权利要求1所述的AVS视频基本流测试分析方法相对应的AVS视频基本流测试分析设备,该设备包括输入单元(100),日志查看分析单元(120),批处理分析单元(130)和输出单元(140);其特征在于,还包括实时查看分析单元(110),其中,所述输入单元(100)输入所要分析的AVS码流和原始YUV码流,并对传输流进行解复用,抽取出要分析的视频基本流;所述实时查看分析单元(110)从输入单元(100)得到AVS视频基本流,并对视频基本流的数据进行分析,得到码流中的序列、帧、条带、宏块的信息以及解码后的图像,并将实时显示的序列摘要信息、帧摘要信息和宏块摘要信息输出到输出单元(140)中;所述日志查看分析单元(120)从实时查看分析单元(110)中得到分析过程中的日志文件,日志查看分析单元(120)分析日志文件的内容,查看原始码流信息,总结统计分析的结果,最后将结果输出到输出单元(140)显示给用户;所述批处理分析单元(130)从输入单元(100)输入多个视频基本流和原始YUV文件,分析后以日志文件形式输出到输出单元(140);所述输出单元(140)采用液晶显示器,实时显示输出或以磁盘文件形式输出对AVS视频基本流所做测试分析的结果。
全文摘要
本发明公开了一种AVS视频基本流测试分析方法,包括输入要分析的AVS码流和相应的原始YUV码流,若AVS码流为传输流,则对所输入的AVS码流进行解复用,抽取出视频基本流,如果输入的是AVS视频基本流,则直接进行分析;对AVS码流中的视频基本流进行分析,实时显示解码后的图像和宏块的运动信息,以及视频基本流中的序列摘要信息、帧摘要信息和宏块摘要信息,同时对视频基本流进行标准一致性检验;对视频基本流进行日志查看。本方法还包括对几个视频基本流进行批处理模式的测试分析。本发明实现了针对AVS视频码流的测试分析分析方法,使得AVS视频码流的测试工作变得简单规范。
文档编号H04N7/26GK1984333SQ200510132108
公开日2007年6月20日 申请日期2005年12月16日 优先权日2005年12月16日
发明者刘延伟, 黄庆明, 苏荔, 高文 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1