当前位置: 首页 > 编程日记 > 正文

王豪:HW265到“HW266”

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/82929609

640?wx_fmt=jpeg


每年的MSU的视频压缩评比报告都是多媒体的热点话题之一,在MSU 2018评比中,华为HW265在多项测试中排名第一。LiveVideoStack采访了华为媒体技术院视频编码团队负责人王豪,在参赛之前,HW265已经在多领域商用。未来华为将投入到VVC的研发,并看好AV1的下一代AV2。


文 / 王豪

策划 / LiveVideoStack


LiveVideoStack:王豪你好,向LiveVideoStack的读者介绍下自己,以及您(或您团队)目前负责工作和感兴趣的技术方向。


王豪:我毕业于华中科技大学,2011年加入华为,现任媒体技术院视频编码团队负责人,一直从事流媒体、视频编解码、质量评价等领域的研究和开发工作。团队目前关注于泛娱乐视频领域的视频技术,包括视频编码/处理,视频传输和视频分析,目的就是能为用户提供极致的视频体验。


LiveVideoStack:能否介绍下华为媒体技术院?


王豪:中央媒体技术院隶属于2012实验室,是华为公司媒体技术创新和工程能力中心,对媒体领域产品技术竞争力负责。面对客户、产业和公司未来业务的挑战和机遇,持续聚焦媒体领域的技术研究、创新和突破,确保公司媒体产品核心竞争力持续领先,支撑华为公司长期商业成功。


LiveVideoStack:MSU发布2018年视频压缩评比报告中,华为Codec在YUV-SSIM得分排名第一。这个成绩很了不起,能简单总结下这次华为Codec的成绩吗?


王豪:这里自夸一下,HW265在MSU 2018编码器评比中,SSIM和VMAF总成绩均排名第一,尤其SSIM的三个测试场景(极致压缩,通用编码,快速编码)均为单项第一,压缩率平均优于友商7%,在互联网常用的快速编码场景测试中,HW265压缩率(BDBR)优于友商12%。


LiveVideoStack:随软MSU每年的评测已是业界顶级,但也有不少吐槽。比如测试场景已经跟不上实际业务,视频数据集少等。您认为这项评测还有那些改进的地方?


王豪:先说下MSU评测的参数,评价码率范围:1mbsp~12Mbps,不考虑码率波动,在素材选择方面,根据时空域复杂度,选择不同复杂度区间的视频,同时人工考虑素材场景,尽量包含不同类型的素材,编码速度考虑三个不同档位,速度为1fps,25fps,60fps。


我觉得谈合理性,取决于其评比的出发点,我理解MSU编码器评比的出发点就是尽可能的评价编码器的通用编码能力,因为大家知道不同视频应用场景,设定码率,码控波动,场景复杂度,编码速度都不同,例如IPTV整体码率偏高,但码率波动小,OTT点播码率低,但允许的波动大。


所以MSU在评测中,在以上几方面从场景覆盖和评测的简易方面进行均衡,个人觉得目前MSU评测配置挺合理的。


如果改进的话,MSU素材方面一直选取高质量素材,后续可以考虑增加一些质量一般的UGC视频。


LiveVideoStack:聊聊华为Codec的前生今世吧,他有哪些特点?未来还有那些改进计划?


王豪:HW265开发于2013年HEVC标准刚出的时候,以HM为基准,我们做了大量的重构、优化,最终于2014年定稿,那时主要给国内外运营商使用,包括IPTV、离线转码等场景。从2016年开始,支撑华为视频、华为公有云的点播与直播商用。


我觉得HW265最大的特点是通用性好,我们在编码器内核方面做了很多优化,尤其在快速算法方面进行了深度开发和优化,保证编码内核的通用竞争力。


同时以HW265内核为基础,我们进行感知编码研发——“高清低码”,将场景优化,质量评价,视频处理与编码器结合,为用户提供极致的视频体验。


关于改进,后续我们将引入更多基于数据驱动的算法,例如结合深度学习,强化学习等来提升编码速度和质量,同时也会针对超高清以及VR/HDR进行编码工具优化。


LiveVideoStack:华为Codec在哪里平台或产品上部署?


王豪:我们主要聚焦泛娱乐视频场景,HW265从2014年开始已经在华为运营商业务(无线,核心网),华为视频, 华为公有云,welink直播(华为内部APP)等平台商用,已经过全面商用考验。


LiveVideoStack:是否评估过AV1?未来是否有可能提供AV1的方案?您怎么看待未来Codec的市场格局?


王豪:我们内部对AV1和HEVC的参考软件进行评测和分析,从压缩效率讲,AV1稍优于HEVC,基本上属于同一代,但AV1的参考软件复杂度是HEVC的40~50倍,优化难度比较高。


团队暂时没有计划提供AV1方案,个人觉得AV1来的有点晚,因为VVC 预计2020年进行发布,团队明年会投入VVC的优化。由于HEVC的专利纷争,我觉得VVC的专利政策肯定会相对温和,更适宜产业使用,个人反而对AV2更加期待。


未来的Codec市场格局是群雄割据场景,之前AVC一统江湖的时代已经一去不复返了,后续主要看各家的终端话语权,个人从竞争力方面还是看好VVC。



640?wx_fmt=jpeg

相关文章:

Flex报错Error #2048: 安全沙箱冲突

FlexJPA架构,JPA程序迁移,从A服务器到B。其他一切没变,唯一变的就是IP。 前端Flex也就是swf报错Error #2048: 安全沙箱冲突:http://xxx.swf 不能从 xxx 加载数据 如下:其实原因就是需要在www网站的根目录放一个crossdomain.xml就可…

centos 默认mysql_centos改变mysql默认目录

centos改变mysql默认目录查看SELinux状态:如果未关闭,则要关闭1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态SELinux status: enabled2、getenforce ##也可以用这个命令检查关闭SELinux修改配置文件需要重启机器:…

如何免费(轻成本)在网上做推广宣传

最近有很多人在问我一个问题,如何少成本或者免费的在网上做推广宣传,这里我也总结一下,给各位一些建议和小方法,目前就以“BAT”和其他平台为例说明一下,通常来说都会以百度重技术、阿里重运营、腾讯重产品来形容“BAT…

BZOJ2631tree——LCT

题目描述 一棵n个点的树,每个点的初始权值为1。对于这棵树有q个操作,每个操作为以下四种操作之一: u v c:将u到v的路径上的点的权值都加上自然数c;- u1 v1 u2 v2:将树中原有的边(u1,v1)删除,加入…

MyBatis点滴积累

MyBatis在使用中不知不觉积累了很多经验1.#和$ MyBatis/Ibatis中#和$的区别1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如…

java可以调用python程序吗_我们可以从java调用python方法吗?

是的,那可以做到.通常,这将通过创建PythonInterpreter对象然后使用它来调用python类来完成.请考虑以下示例:Java:import org.python.core.PyInstance;import org.python.util.PythonInterpreter;public class InterpreterExample{PythonInterpreter inte…

【转】Hbuilder MUI 页面刷新及页面传值问题

文章来源:http://www.111cn.net/sys/CentOS/67213.htm 一、页面刷新问题 1.父页面A跳转到子页面B,B页面修改数据后再跳回A页面,刷新A页面数据(1).父页面A代码window.addEventListener("pageflowrefresh", function (e) {location.r…

第三次作业---读《构造之法》1-5章有感

这个作业的要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2178。 第一章:概论 读完第一章了解到了什么是软件工程、软件工程的领域。软件工程是把系统的、有序的、可量化的方法应 用到软件的开发、运营和维护上的过程。软件工程包…

Solr安装与配置

需要Java Runtime Environment(JRE) 1.7或更高版本,先验证。 # java -version如果没有安装好Java环境,需要参考:http://blog.csdn.net/unix21/article/details/18774417无需安装tomcat,新版solr已经集成jettySolr最新版下载地址 http://mirro…

php字符串替换多余逗号_PHP字符过滤函数去除字符串最后一个逗号(rtrim)

首先分别解释下,trim过滤字符串两端,rtrim过滤字符串尾部,chop()ltrim过滤字符串首部.过滤字符串中键的咚咚就只能用str_replace咯.举个例子说明下,PHP代码$str 123,333,234,;echo rtrim($str, ,);rtrim实例代码2$text "\t\tThese are a few words :) ... ";$trim…

TensorFlow王位不保?ICLR投稿论文PyTorch出镜率快要反超了

自PyTorch出道以来,不断有人表示,发现了这样的趋势: “学术圈正在慢慢地抛弃TensorFlow,转投PyTorch。” 如今,PyTorch 1.0发布,ICLR 2019也才截稿不久,又是讨论这个问题的好时节。 Reddit上面&…

php的hashmap,php如何实现hashmap

php实现hashmap的方法:主要方法参照JAVA的HASHMAP实现的Class HashMap{var $H_table;public function __construct() {$this->H_table array ();}public function put($key, $value) {if (!array_key_exists($key, $this->H_table)) {$this->H_table[$key…

Dispatcher与UI线程交互

1 this.chart2.Dispatcher.BeginInvoke(new Action(() > 2 { 3 this.chart2.SetData("Series1", lxs, lys, lzs); 4 })); 转载于:https://www.cnblogs.com/ants_double/p/5359476.html

Linux防火墙限制指定端口只能由指定IP访问

需要对redis的端口做限制,只能让公司内指定IP的机器访问-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACC…

Kubernetes基于Metrics Server的HPA

Kubernetes基于Metrics Server的HPA [TOC] 1. 环境说明和相关介绍 我的kubernetes环境: kubeadm安装的kubernetes1.11Horizontal Pod Autoscaler(HPA,Pod水平自动伸缩),根据资源利用率或者自定义指标自动调整replicati…

Java判断文本文件编码格式以及读取

如果不是约定好的,要想解析txt文件就需要知道文件编码类型,由于文件编码类型众多,例如UTF-8,GBK,UTF-16,GB2312等等。其实有简单的办法,只需要这样就可以了String fileEncodeEncodingDetect.getJavaEncode(…

php 运维系统开发,PHP开发运维管理系统笔记

开发运维管理系统采用ThinkPHP框架mysql进行开发.框架配置return array(//‘配置项‘>‘配置值‘‘SHOW_PAGE_TRACE‘ > true,//允许访问的控制器‘MODULE_ALLOW_LIST‘ > array(‘Home‘),//默认控制器‘DEFAULT_MODULE‘ > ‘Home‘,//URL模式‘URL_MODEL‘ >…

[android]am自动化测试框架(原创)

在linux环境该目录下需要一个AndroidManifest.xml文件 需要一个python脚本就可以完成,功能点,打开某个package的所有activity并截图保存 import os import logging file open("AndroidManifest.xml") _adb_startActivity"adb shell am s…

Dubbo 整合 Pinpoint 做分布式服务请求跟踪

在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题&#x…

Memcached安装使用和源码调试

memcached官网:http://memcached.org/一.安装下载 # wget http://www.memcached.org/files/memcached-1.4.25.tar.gz解压 # tar xzvf memcached-1.4.25.tar.gz #cd memcached-1.4.25配置 #./configure --prefix/usr/local/memcached --with-libevent/usr 注意这里选…

上下或左右无缝滚动

文字或图片实现 向上 无缝滚动<div id"colee" style"overflow:hidden;height:80px;"><div id"colee1"><li><a href"/">文字或图片实现向上无缝滚动</a></li><li><a href"/"&g…

java老师拿钥匙,从Java中的NavigableMap获取第一把钥匙

要使用Java显示NavigableMap中的第一个键&#xff0c;请使用firstKey()方法。让我们首先创建NavigableMap-NavigableMap n new TreeMap();n.put("A", 498);n.put("B", 389);n.put("C", 868);n.put("D", 988);n.put("E", 68…

iphone X系列设配屏幕适配

2019独角兽企业重金招聘Python工程师标准>>> 截止目前&#xff0c;苹果所有刘海系列的设备屏幕数据如下&#xff1a; iPhone X 、iPhone XS&#xff1a; 5.8英寸&#xff0c; 375pt * 812pt(3x)&#xff0c;启动图1125px * 2436pxiPhone XR&#xff1a; 6.1英寸&…

Oracle官方教程之Fork/Join

原文链接&#xff0c;译文链接&#xff0c;译者&#xff1a;Zach&#xff0c;校对&#xff1a;郑旭东 fork/join框架是ExecutorService接口的一种具体实现&#xff0c;目的是为了帮助你更好地利用多处理器带来的好处。它是为那些能够被递归地拆解成子任务的工作类型量身设计的。…

《Java: The Complete Reference》等书读书笔记

春节期间读了下《Java: The Complete Reference》发现这本书写的深入浅出&#xff0c;我想一个问题&#xff0c;书中很多内容我们也知道&#xff0c;但是为什么我们就写不出这样一本书&#xff0c;这么全面&#xff0c;这么系统&#xff0c;这么简单易懂。不得不佩服Herbert Sc…

php upload ctf,强网杯CTF防御赛ez_upload Writeup

这是强网杯拟态防御线下赛遇到的web题目&#xff0c;本来是不打算分享Writeup的&#xff0c;但是由于问的人很多&#xff0c;于是这里分享给大家。ez_upload这题算是非常经典的堆叠black trick的题目&#xff0c;算是比较典型的ctf式题目(虽然现在大家都很抵制这样的题目)&…

Oracle 表空间扩容

2019独角兽企业重金招聘Python工程师标准>>> 1、查询当前表空间使用情况 col FILE_NAME format a50; col SPACE_NAME format a15; select b.file_name file_name,b.tablespace_name space_name, b.bytes/1024/1024 munM,(b.bytes-sum(nvl(a.bytes,0)))/1024/1024 …

PHP网站首页打不开的原因讲起

最近有个网站首页打不开&#xff0c;偶尔报504错误&#xff0c;如图所示&#xff0c;这是nginx直接返回的。今天下午16:00多又出现了&#xff0c;看了下阿里云数据库连接&#xff0c;其实在晚上2:00也出现了一次。这个图是后来问题已经解决了获取的&#xff0c;数据库连接的请求…

前端资源整理 - 订阅、工具等

取自 我的GITHUB 的 fe-store-house repo&#xff0c;欢迎 PR&#xff0c;欢迎 STAR。原 repo 不定期更新&#xff0c;此文可能断更。断更了一年多&#xff0c;重新更新一下&#xff0c;似乎 sfgg 的文章渲染中 gfm table 解析有问题。最新更新时间 2017-11-02。前端资源 中文 …

mysql和mariadb可以同时使用吗,MariaDB与MySQL在一台服务器同时运行

[rootHE3 ~]#groupaddmariadb-g 513[rootHE3 ~]#useradd -u 513-gmariadb-s /sbin/nologin -d /home/mariadbmariadb从MariaDB官网下载二进制安装包至/root目录&#xff0c;本文采用的是目前最新稳定版mariadb-10.1.16[rootHE3 ~]# tar xvf mariadb-10.1.16-linux-x86_64.tar.g…