zoukankan      html  css  js  c++  java
  • H264编码器性能測试

    版本号:0.1.0-beta
    作者:石硕
    更新:2014-04-13 15:54:08
    ============================================================

        现在。H264已经成为视频行业的标准规范。企业中使用比較多的当数X264,开源,资源消耗又比較少。
        首先,介绍一下常见的三大开源H264编码器:JM、X264、T264
        JM H264的官方測试源代码,实现了264的全部特性,但程序结构冗长,编码复杂度高,不推荐商业应用。
        X264 摈弃了264中对编码性能贡献小,但计算复杂度极高的新特性,推荐商业应用。


        T264 编码与X264类似,可是解码器仅仅能解T264编码的,有点坑。

        在使用H264编码器X264之前,我们先对其性能进行測试,以确定是否须要再次优化。
        測试的流程例如以下:

    1、到X264官网下载264源代码

        官方站点:http://www.videolan.org/developers/x264.html
        GIT地址:git://git.videolan.org/x264.git(注。X264最原始的源代码都是在linux下编译的。假设想要windows版的,请看以下)
        windows版X264地址:http://doom10.org/index.php?topic=3.0(注:第三方移植的。自行推断是不是最新)

    2、依据实际的业务须要,制定对应的測试标准

        因为X264是依据H264的标准制作的。所以,H264标准以及曾经标准都是适用的。

    实际应用中,会有不同的需求。比方说监控对帧率要求比較低,再比方说网络传输对码率要求比較高,又比方说在移动平台上使用对CPU MEM要求比較高。
        以下是视频直播中使用到的:
        分 辨 率:160×120  320×240  640×480
        帧    率:10  15  20  25  30
        码    率:128  160  256
        编码延时:<= 200ms
        码率精度:<= 15%
        兼 容 性:标准H264解码器能够解码
        操作系统:winXP  win7-x86  win7-x64
        CPU     :AMD Athlon II X2 240(高配)  AMD SP145(低配)
        MEM     :2GB

    3、新建測试项目,调用X264库

        新建VC项目。读取YUV序列文件(以下会介绍文件来源),编码,输出到H264文件

    4、网上查找YUV序列的结构。了解都有哪些格式

        YUV结构介绍英文版:http://www.fourcc.org/yuv.php
        YUV结构介绍中文翻译版:http://blog.csdn.net/SearchSun/article/details/2443867
        在这些YUV格式中。比較常见的是YUV420。一帧YUV420在文件里的排布例如以下,以CIF图像(352*288)为例:
        Y信息 352*288 B
        U信息 352*288/4 B
        V信息 352*288/4 B
        算出一帧数据的大小 = 352*288 +  352*288/4 +  352*288/4 。常见写作 352*288*3/2

    5、网上查找YUV序列文件,或者自行制作

        YUV測试序列下载地址:http://dpinglee.blog.163.com/blog/static/144097753201242254639795/ (这个是眼下网上能找到的最全面的)
        从上面的链接中找到的最为规范的要数这个:http://sp.cs.tut.fi/mobile3dtv/stereo-video/
        YUV格式有非常多种,再加上不同的參数配置,又会有非常多种。下载前一定要看清楚是否是自己须要的格式。由于这些測试序列文件通常都会比較大的
    5.1、YUV序列文件制作方法
        1)从网上下载随意格式的视频文件,AVI最好
        2)安装 FFSetup.exe(中文名称格式工厂),把下载好的视频文件转换为AVI格式,转换參数中视频编码选H264
        3)使用 avitoyuv.exe 把转换好的AVI文件转换为YUV文件
        4)使用 YUVViewer.exe 验证转换的正确性

    6、网上查找YUV序列文件播放器。验证YUV文件的有效性

        找到YUV序列文件之后,使用 YUVViewer.exe 验证文件的正确性
        YUViewer下载地址:http://ishare.iask.sina.com.cn/f/21603725.html

    7、执行測试项目。读取YUV文件,输出H264文件


    8、编码的过程中,观察H264编码器的各项指标,并做记录

        在不同的參数配置下。观察以下的各项指标是否正常:
        编码延时:能够在測试程序中输出日志查看
        码率精度:同上
        兼 容 性:使用H264visa能够正常播放就可以
        CPU     :高配在2%以内  低配在4%以内
        MEM     :?MB以内

    9、网上查找H264文件播放器,验证编码的正确性

        使用H264visa验证编码后H264文件的正确性
        H264visa下载地址:http://ishare.iask.sina.com.cn/f/25002676.html (这个须要2新浪积分)

        假设对X264编解码比較感兴趣,打算深入研究,能够从这里開始:http://www.rosoo.net/a/200908/7424.html,这篇是罗索实验室的文章。一个专业研究音视频,流媒体解决方式的站点。



    工具推荐

    1.软件开发必备翻墙代理。低延迟(50ms),月费10元,详询(宝哥儿QQ1066690060)请自觉遵守国家法律法规



  • 相关阅读:
    Analysis Services features supported by SQL Server editions
    Azure DevOps to Azure AppServices
    Power BI For Competition
    Win10开机“提示语音”以及”随机播放音乐”
    Azure DevOps
    Allow Only Ajax Requests For An Action In ASP.NET Core
    Mobile CI/CD 101
    Configure SSL for SharePoint 2013
    AWS Step Function Serverless Applications
    Cordova Upload Images using File Transfer Plugin and .Net core WebAPI
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/6820728.html
Copyright © 2011-2022 走看看