本次测试软件环境:Intel Celeron双核 2.60 Ghz CPU; 4GB 内存;安装 Ubuntu 13.04

hzsx@hzsx-server:~$ lsb_release -a

No LSB modules are available.

Distributor ID: Ubuntu

Description:    Ubuntu 13.04

***

hzsx@hzsx-server:~$ uname -a

Linux hzsx-server 3.8.0-35-generic #50-Ubuntu SMP Tue Dec 3 01:25:33 UTC 2013 i686 i686 i686 GNU/Linux

hzsx@hzsx-server:~$ cat /proc/cpuinfo

***

model name      : Intel(R) Celeron(R) CPU G1610 @ 2.60GHz

***

cpu MHz         : 1600.000

cache size      : 2048 KB

265编码器 http://x265.org/

测试序列下载地址 ftp://ftp.ldv.ei.tum.de/videolab/public/SVT_Test_Set/720p/  720p50_parkrun_ter.yuv 和 720p50_shields_ter.yuv

http://x265.org/下载源码编译出可执行265,查看编码效率。

发现暂时还不能用于产品。

本次测试使用了两个720P 504帧的YUV序列。压缩时间均超过2分钟。这才20秒的视频而已。

encoded 504 frames in 119.35s (4.22 fps), 525.44 kb/s  // 720p50_parkrun_ter.yuv

encoded 504 frames in 124.79s (4.04 fps), 503.96 kb/s  // 720p50_shields_ter.yuv

一下是对比ffmpeg和libx264编码时间。

720p50_xxx_1280x720.yuv   --->>>   720p50_xxx_.h264
ffmpeg 采用gusari已经编译好的 http://ffmpeg.gusari.org/static/32bit/   ffmpeg.static.32bit.2014-04-18.tar.gz
采用2014.4.18 版本是为了和 libx264 对应
./ffmpeg -s 1280x720 -i ~/multimedia/720p50_shields_ter_1280x720.yuv -r 25 -vcodec libx264 -b 800000 ~/multimedia/720p50_shields_ter_ffmpeg_800k.h264
-b 800000 代表 800k bitrate

libx264 采用 官网 x264-snapshot-20140420-2245.tar.gz 自编译
./x264 --bitrate 800 --fps 25 --output ~/multimedia/720p50_shields_ter_libx264_800k.h264 ~/multimedia/720p50_shields_ter_1280x720.yuv
--bitrate 800 代表 800k bitrate 。 和ffmpeg命令不同,这里是以k为单位。
这里之所以没有添加参数 1280:720,后面解释。

视频序列 720p50_parkrun_ter_1280x720.yuv 记作 p ; 720p50_shields_ter_1280x720.yuv 记作 s ;
对比一下时间消耗
首先,使用ffmpeg编码对应的时间消耗
bitrate         800k       5000k        8000k
时间消耗     p16s|s17s   p27s|s33s   p32s|s39s

然后,使用libx264编码对应的时间消耗
bitrate         800k       5000k        8000k
时间消耗     p16s|s17s   p27s|s33s   p32s|s39s

从时间消耗上来说,基本上是一样的。

最后解释一下,libx264参数设置中,如果添加了 --sar 1280:720
得到的H264视频文件,使用mediainfo查一下就会发现,Display aspect ratio  : 3.160 。
申明,这里的yuv序列不包含任何其他信息,仅仅是颜色yuv值。
这是因为我yuv文件的命名,后缀前给出了分辨率1280x720,libx264会自动判断分辨率。
如果添加了--sar 1280:720,导致编码后再次缩放比例1280:720,即是(1280:720)*(1280:720) = 3.16

X265编码效率仍然低的更多相关文章

  1. (原)理解码率控制模式(x264,x265,vpx)

    理解码率控制模式(x264,x265,vpx) 原文链接:https://slhck.info/video/2017/03/01/rate-control.html 翻译:lihaiping1603@ ...

  2. Android开发学习之路-Android Studio开发小技巧

    上一次发过了一个介绍Studio的,这里再发一个补充下. 我们都知道,Android Studio的功能是非常强大的,也是很智能的.如果有人告诉你学Android开发要用命令行,你可以告诉他Andro ...

  3. DataTable数据赋值给Model通用方法

    注:该文属本人原创,今后项目中发现该方法存在BUG会实时更新,转载记得附上原文出处,方便大家获得最新代码. 相信大家在做项目中,经常会根据不同的表new各种不同的Model,当需要对Model进行实例 ...

  4. iOS开发之音频口通信-通过方波来收发数据

    之前做过的项目有需要通过音频口通信用方波来收发数据,由于这方面的资料比较少,下面就介绍下其原理,希望能给大家帮助. 一. 音频通信简介大家应该都知道支付宝声波支付和拉卡拉吧,它们都是利用手机的音频口( ...

  5. erl0008 - unicode 和 utf-8之间的关系

    转载:http://blog.jobbole.com/84903/ 原文出处: 卢钧轶   欢迎分享原创到伯乐头条 本文将简述字符集,字符编码的概念.以及在遭遇乱码时的一些常用诊断技巧. 背景:字符集 ...

  6. jxls2.3-简明教程

    jxls是一个简单的.轻量级的excel导出库,使用特定的标记在excel模板文件中来定义输出格式和布局.java中成熟的excel导出工具有pol.jxl,但他们都是使用java代码的方式来导出ex ...

  7. protobuf 编码实现解析(java)

    一:protobuf编码基本数据类型 public enum FieldType { DOUBLE (JavaType.DOUBLE , WIRETYPE_FIXED64 ), FLOAT (Java ...

  8. 【视频编解码·学习笔记】7. 熵编码算法:基础知识 & 哈夫曼编码

    一.熵编码概念: 熵越大越混乱 信息学中的熵: 用于度量消息的平均信息量,和信息的不确定性 越是随机的.前后不相关的信息,其熵越高 信源编码定理: 说明了香农熵越信源符号概率之间的关系 信息的熵为信源 ...

  9. JQuery --- 第三期 (jQuery事件相关)

    个人学习笔记 1.JQuery事件绑定 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...

随机推荐

  1. Git权威指南 读笔(1)

    第四章 Git初始化: 设置Git当前用户和邮件地址: $ git config --global user.name $ git config --global user.email 设置Git命令 ...

  2. MSCRM4.0如何使js事件在批量编辑表单中触发

    MSCRM4.0如何使js事件在批量编辑表单中触发 MSCRM4.0如何使js事件在批量编辑表单中触发 MSCRM3.0我们可以通过在onload事件加入以下代码来控制某个属性为只读.crmForm. ...

  3. SQL中Case的使用方法(下篇)(转)

    接上篇 四,根据条件有选择的UPDATE. 例,有如下更新条件 工资5000以上的职员,工资减少10% 工资在2000到4600之间的职员,工资增加15% 很容易考虑的是选择执行两次UPDATE语句, ...

  4. 李洪强iOS开发之-环信04_消息

    李洪强iOS开发之-环信04_消息 消息:IM 交互实体,在 SDK 中对应的类型是 EMMessage.EMMessage 由 EMMessageBody 组成. 构造消息   构造文字消息 EMT ...

  5. 140. Word Break II

    题目: Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where e ...

  6. RxJava开发精要4 – Observables过滤

    原文出自<RxJava Essentials> 原文作者 : Ivan Morgillo 译文出自 : 开发技术前线 www.devtf.cn 转载声明: 本译文已授权开发者头条享有独家转 ...

  7. Django中的Model继承

    Django 中的 model 继承和 Python 中的类继承非常相似,只不过你要选择具体的实现方式:让父 model 拥有独立的数据库:还是让父 model 只包含基本的公共信息,而这些信息只能由 ...

  8. hbase安装(zookeeper等)

    文库:http://wenku.baidu.com/link?url=5mnYL7ZuxUBWZnrnmak4JRVF5fJquJmjgmZy788i7UW8lUk4QXD8Nc_haPz33vjt9 ...

  9. Emmet(前身是zen coding)介绍和使用

    Zen coding - 一种快速编写HTML/CSS代码的方法.它使用仿CSS选择器的语法来快速开发HTML和CSS - 由Sergey Chikuyonok开发. 现在它改名为了Emmet,并且搭 ...

  10. tlplayer for ios V1.1.2加密测试版本(修复1.1.1版本 for ios7播放闪退问题)

    此版本主要修复了ios7播放列表导致的程序闪退问题,方便大家测试加密与非加密视频. 此为tlplayer for ios版本,可以播放加密视频与非加密视频. 加密视频下载地址:http://blog. ...