【Codecs系列】H.266开源编解码器:vvenc和vvdec介绍

2024-01-16 16:32

本文主要是介绍【Codecs系列】H.266开源编解码器:vvenc和vvdec介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DATE: 2021.8.11


文章目录

    • 前言
    • 1、VVenC介绍
    • 2、VVenc和VVdec开源地址
    • 3、VVenC编译和运行命令
      • 3.1、编译方法
      • 3.2、运行命令行
    • 4、VVenC如何使用Lowdelay P配置编码?

前言

VVC(Versatile Video Coding)是由MPEG和ITU-T共同开发的最新一代视频编码标准,相比于HEVC(High Efficiency Video Coding)在相同质量下能节省50%的码率。VTM(VVC Test Model)是VVC的官方参考软件,由于VVC集成了大量新的编码工具导致复杂度也急剧上升,VTM的编码速度也非常慢。Fraunhofer 开发了速度比VTM更快和更实用的VVC编码器和解码器,号称是最快的VVC开源编解码器,分别为VVenC和VVdeC,具体介绍如下:

1、VVenC介绍

VVenC软件是在VTM的基础上进行了针对性的优化,包括重新设计软件以减轻性能瓶颈,广泛的SIMD优化,改进的编码器搜索算法以及基本的多线程支持。最新版本是v1.1.0,在最新版本中,faster档次速度提升20%,fast档次提升15%,medium档次提升7%。

特点:开源,BSD协议

2、VVenc和VVdec开源地址

https://github.com/fraunhoferhhi/vvenc

https://github.com/fraunhoferhhi/vvdec

3、VVenC编译和运行命令

VVenC编译完成之后会产生两个可执行文件,分别是标准编码器vvencapp和专业级编码器vvencFFapp。

3.1、编译方法

cmake ./
make
注意事项: cmake版本需要3.12.0及以上。

3.2、运行命令行

  • 标准编码器vvencapp:
    假设输入的序列采样格式为YUV420,位深为8比特,分辨率为416x240,使用faster preset进行编码:
./vvencapp  -i BlowingBubbles_416x240_50.yuv  -s 416x240 -c yuv420 --preset faster -p -1  -o out.266
  • 专家级编码器vvencFFapp:
    vvencFFapp的使用方式类似于VTM,也是使用配置文件进行。大部分编码参数和VTM保持一致,但是某些参数会增加额外的可选模式。其配置文件可在cfg文件夹下找到。
./bin/release-static/vvencapp -i SlideEditing_1280x720_30_300.yuv -s 1280x720 -c yuv420 -r 30 -ip 96 --preset faster -v 6 -b 0 --qp 45 -o out.266

4、VVenC如何使用Lowdelay P配置编码?

vvenc的默认配置是Random Access,但是我们需要测试Lowdelay P(IPPP)的编码场景怎么办呢?

1、首先需要在vvenc根目录下面的cfg/experimental中找到lowdelay_faster.cfg配置文件,这个配置文件是LDB的配置,即IBBBBBBB的时域参考结构,需要将其中的B帧改成P帧,参考VTM中的encoder_lowdelay_P_vtm.cfg对应修改成P帧;
2、命令行参数配置如下:

vvencFFapp -c ~/H266/vvenc/cfg/experimental/lowdelay_faster.cfg -s 1280x720  -fr 30 -ip 96 -dr 2 -i SlideShow_1280x720_20_500.yuv -b out.266

运行结果如下图所示:
在这里插入图片描述


THE END!

这篇关于【Codecs系列】H.266开源编解码器:vvenc和vvdec介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/613226

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提