基于hdmi的vesa dsc压缩算法原理介绍

1.视频压缩概述

近几年来是由4k分辨率到8k分辨率过渡的时期,hdmi2.1协议规定了frl模式,使带宽从原来的tmds下的18G提升到48G(12G4l),但是对于超高分辨率如4k144 yuv444 12bit或者8k60,48G的带宽依旧可能不够用。原有的物理传输层不足以满足如此之高的带宽需求。将视频进行高效的压缩以减少数据传输所需要的带宽是一种可行的方式。dsc压缩算法是其中一种,本文详细介绍其算法原理。
影像压缩传输(Display Stream Compression)简称DSC,是将影像数据压缩后进行传输,达成低带宽就可输出高分辨率内容,并且经压缩后画面表现上视觉无失真、低延迟的技术。
在介绍hdmi的DSC之前,先简略介绍DSC的运作原理。一个完整的DSC系统需要一个编码器及译码器。编码器配置在传送端,传输影像数据前将影像压缩; 译码器则配置在接收端,将接收到的影像数据解压缩、还原并显示。由此可知,传送端及接收端两者都必须要支持DSC方可启用。

2.dsc压缩算法的c model的使用

本文不想一上来就长篇大论介绍一堆dsc压缩算法的原理,笔者查阅了很多dsc相关的资料,dsc协议是英文的,国内的一些文献仅仅是简单翻译了一下,一堆比较难懂的概念,不是工作压力,项目驱动,没有具体的例子和环境跑起来,很难对算法进行深入的研究。这里先演示下由官方给出的开源c model 是如何跑起来的。
c model文件如下图所示:
在这里插入图片描述
除代码实现的.c和.h文件外,还有makefile文件,cfg文件,list文件,输入文件
makefile就是用来编译生成可执行文件的,dsc是生成的可执行文件。
cfg文件是配置文件,内容如下:
在这里插入图片描述
dsc模型的输入文件是dpx图像文件,可以用jpg转dpx转换。list文件指定输入文件,内容如下:
在这里插入图片描述
找了一张dpx格式的图像文件,用dpx文件查看工具看下图像内容
在这里插入图片描述
这里我们把cfg中的func字段配成1,只编码
在这里插入图片描述
执行完后,在当前目录下生成.ref文件和.dsc文件

Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Intellectual Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Patents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Support for this Standard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 Section 1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.1 Document Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15 1.2 Display Stream Compression Objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16 1.3 Display Stream Compression Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16 1.4 Acronyms, Initialisms, and Abbreviations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 1.5 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19 1.6 Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 1.6.1 Bit Ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 1.6.2 Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 1.7 Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 1.8 Reference Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 Section 2 Requirements (Informative) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Section 3 Theory of Operation (Informative). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 3.2 Color Space Conversion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 3.3 Prediction and Quantization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 3.3.1 Modified Median-Adaptive Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 3.3.2 Block Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31 3.3.3 Midpoint Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32 3.4 Indexed Color History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33 3.5 Bitstream Construction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34 3.5.1 Substream Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34 3.5.2 Substream Multiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 3.6 Rate Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 3.7 Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39 3.7.1 Hypothetical Reference Decoder-Based Timing Model . . . . . . . . . . . . . . . . . .39 3.7.2 Constant and Variable Bit Rate Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41 3.7.3 Slices and Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42 3.8 Options for Slices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 3.9 Slice Multiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46VESA Display Stream Compression (DSC) Standard UNAUTHORIZED DISTRIBUTION PROHIBITED Version 1.2a Copyright © 2014 – 2017 V
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值