CN117793367B - 一种图像编码方法及*** - Google Patents
一种图像编码方法及*** Download PDFInfo
- Publication number
- CN117793367B CN117793367B CN202410205399.0A CN202410205399A CN117793367B CN 117793367 B CN117793367 B CN 117793367B CN 202410205399 A CN202410205399 A CN 202410205399A CN 117793367 B CN117793367 B CN 117793367B
- Authority
- CN
- China
- Prior art keywords
- image
- type
- display processing
- processing unit
- synthesized
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 108
- 239000002131 composite material Substances 0.000 claims abstract description 35
- 238000009877 rendering Methods 0.000 claims abstract description 26
- 230000005540 biological transmission Effects 0.000 claims abstract description 22
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 21
- 238000004891 communication Methods 0.000 claims description 9
- 230000003068 static effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提出一种图像编码方法及***,显示处理单元在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号;视频编码单元在接收到第一类开始信号后,从高速缓存读取第一类合成图像,在获取到完整的第一类合成图像后,向显示处理单元反馈完成信号,以使显示处理单元开始合成下一帧图像。避免了将第一类合成图像回写到***内存,从而有效降低数据在显示处理单元和视频编码单元之间传输的延迟,降低视频编码单元读取数据的时间,可以提高图像编码***对图像数据编码的效率。
Description
技术领域
本申请涉及图像处理领域,具体而言,涉及一种图像编码方法及***。
背景技术
随着互联网带宽的不断提升和云计算技术的成熟,视频直播、云游戏以及云电脑等新兴技术逐渐成为日常生活中的重要组成部分。这些新兴技术不仅改变了人们的工作方式,还极大地丰富了人们的娱乐生活。云游戏和视频直播等技术在实时传输视频数据方面具有较高的要求。为了实现高质量的游戏体验和实时直播观看,发送端需要将渲染后的图像画面快速传输到远程服务器,同时用户端通过网络接收传输过来的实时图像数据和指令。尤其是随着云游戏的快速发展,对视频图像数据传输的延迟性能提出了更高的要求。
在视频图像发送端,每一帧图像数据需要被显示处理单元(DPU, DisplayProcessing Unit)合成并存储到***内存(DDR, Double Data Rate SynchronousDynamic Random Access Memory),视频编码单元(VPU,Video Processing Encoder Unit)读取***内存中存储的图像帧进行编码并通过网络端口发送到接收设备。
如何提高视频发送端的视频图像传输效率,以降低延迟,成为了本领域技术人员所持续关注的难题。
发明内容
本申请的目的在于提供一种图像编码方法及***,以至少部分改善上述问题。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供一种图像编码***,所述图像编码***包括:显示处理单元、视频编码单元、***内存以及高速缓存,所述显示处理单元、所述视频编码单元以及所述***内存通过第一总线通信连接,所述显示处理单元、所述视频编码单元以及所述高速缓存通过第二总线通信连接;
所述显示处理单元用于在待合成图像帧为第一类型图像时,对从所述***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将所述第一类合成图像写入所述高速缓存,并向所述视频编码单元发送第一类开始信号;
所述视频编码单元用于在接收到所述第一类开始信号后,从所述高速缓存读取所述第一类合成图像,在获取到完整的所述第一类合成图像后,向所述显示处理单元反馈完成信号,以使所述显示处理单元开始合成下一帧图像。
第二方面,本申请实施例提供一种图像编码方法,应用于上述的图像编码***,所述方法包括:
显示处理单元在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将所述第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号;
所述视频编码单元在接收到所述第一类开始信号后,从所述高速缓存读取所述第一类合成图像,在获取到完整的所述第一类合成图像后,向所述显示处理单元反馈完成信号,以使所述显示处理单元开始合成下一帧图像。
相对于现有技术,本申请实施例所提供的一种图像编码方法及***,图像编码***包括:显示处理单元、视频编码单元、***内存以及高速缓存,显示处理单元、视频编码单元以及***内存通过第一总线通信连接,显示处理单元、视频编码单元以及高速缓存通过第二总线通信连接;显示处理单元用于在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号;视频编码单元用于在接收到第一类开始信号后,从高速缓存读取第一类合成图像,在获取到完整的第一类合成图像后,向显示处理单元反馈完成信号,以使显示处理单元开始合成下一帧图像。通过高速缓存实现将第一类合成图像从显示处理单元传输到视频编码单元,避免了将第一类合成图像回写到***内存,从而有效降低数据在显示处理单元和视频编码单元之间传输的延迟,降低视频编码单元读取数据的时间,可以提高图像编码***对图像数据编码的效率。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
图1为本申请实施例提供的一种图像编码***的结构示意图;
图2为本申请实施例提供的高速缓存的区域分布示意图;
图3为本申请实施例提供的图像编码方法的流程示意图。
图中:10-显示处理单元;11-视频编码单元;12-第一总线;13-***内存;14-第二总线;15-高速缓存。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本申请的描述中,需要说明的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
需要说明的是,提高视频发送端的视频图像传输效率是降低延迟的关键一环。除了提高图像编码速度之外,显示处理单元对视频图像帧的合成和数据传输方式上也具有较大的优化空间。通过优化图像数据合成和传输模式,可以提高视频发送端的图像传输效率,从而降低延迟,提供更流畅的实时视频传输体验。
基于此,本申请实施例提供了一种图像编码***,该图像编码***可以部署于电子设备(图像视频的发送端)。请参考图1,图1为本申请实施例提供的一种图像编码***的结构示意图。
图像编码***包括:显示处理单元10、视频编码单元11、***内存13以及高速缓存15,显示处理单元10、视频编码单元11以及***内存13通过第一总线12通信连接,显示处理单元10、视频编码单元11以及高速缓存15通过第二总线14通信连接。
其中,高速缓存15可以但不限定为静态随机存取存储器(SRAM,Static Random-Access Memory)。需要说明的是,高速缓存15的读写速率高于***内存13的读写速率。第一总线12和第二总线14为两根总线,二者均可以但不限定为AXI(Advanced eXtensibleInterface)总线。
在一些可选的场景中,显示处理单元10、视频编码单元11、***内存13以及高速缓存15也可以通过一根总线实现相互连接。
显示处理单元10用于在待合成图像帧为第一类型图像时,对从***内存13读取到的应用渲染图层进行合成,得到第一类合成图像,将第一类合成图像写入高速缓存15,并向视频编码单元11发送第一类开始信号。
其中,第一类型图像为非参考帧图像。
需要说明的是,在进行图像合成时,显示处理单元10可以从***内存13中读取不同的应用所绘制产生的应用渲染图层。
在一种可选的实施方式中,第一类合成图像包括多个数据量相同的图像块。显示处理单元10可以将第一类合成图像对应的图像块写入高速缓存15,并在第1个图像块写入后,向视频编码单元11发送第一类开始信号。
视频编码单元11用于在接收到第一类开始信号后,从高速缓存15读取第一类合成图像,在获取到完整的第一类合成图像后,向显示处理单元10反馈完成信号,以使显示处理单元10开始合成下一帧图像。
可选地,视频编码单元11会对接收到第一类合成图像(所有的图像块),进行编码。
在本申请方案中,通过高速缓存15实现将第一类合成图像从显示处理单元10传输到视频编码单元11,避免了将第一类合成图像回写到***内存13,从而有效降低数据在显示处理单元10和视频编码单元11之间传输的延迟,降低视频编码单元11读取数据的时间,可以提高图像编码***对图像数据编码的效率。
需要说明的是,高速缓存15通常成本较高,且容量较小,难以将完整的第一类合成图像写入其中,为了克服该问题,本申请实施例还提供了一种可选的实施方式,请参考下文。
第一类合成图像包括多个数据量相同的图像块。可选地,第一类合成图像包括N个图像块,且每一个图像块的数据量相同,N表示图像块数量。
高速缓存15包括第一区域和第二区域。请参考图2,图2为本申请实施例提供的高速缓存的区域分布示意图。第一区域用于存储图像块,第二区域用于存储图像块的传输信息,传输信息包括图像块数据量、图像块读取地址以及图像块写入地址。
显示处理单元10用于在待合成图像帧为第一类型图像时,按照图像块数据量对从***内存13读取到的应用渲染图层进行合成,得到多个数据量相同的图像块。
显示处理单元10用于第1个图像块写入第一区域,更新图像块写入地址,并向视频编码单元11发送第一类开始信号。
显示处理单元10用于在将第i个图像块写入第一区域后,基于图像块读取地址和图像块写入地址确定第一区域的剩余空间是否大于图像块数据量,若是,令i=i+1,将第i个图像块写入第一区域,更新图像块写入地址。
其中,1≤i≤N,N表示图像块数量,图像块读取地址表示视频编码单元11将要(下一次)读取的图像块对应的位置。
如图2所示,显示处理单元10在将第i个图像块写入第一区域之后,会更新第一区域中的图像块写入地址。
通过图像块的形式,将第一类合成图像写入高速缓存15中,可以克服其容量较小的问题。
关于如何得到图像块,本申请实施例还提供了一种可选的实施方式,请参考下文。
显示处理单元10用于在待合成图像帧为第一类型图像时,按照图像块数据量将应用渲染图层拆分为多个数据量相同的子模块。
可选的,当显示处理单元10从***内存13中所读取到的应用渲染图层的数量为M(M大于或等于1的正整数)时,需要按照图像块数据量对M个应用渲染图层分别进行拆分,得到M组按顺序排列的子模块。
显示处理单元10用于对相同区域的子模块进行合成,以得到对应的图像块。
其中,相同区域是指不同的应用渲染图像中对应的显示位置相同(重叠)的子模块。可选地,相同区域的子模块可以是M组中排列序号相同的子模块。
关于如何得到图像块,本申请实施例还提供了一种可选的实施方式,请参考下文。
显示处理单元10用于在待合成图像帧为第一类型图像时,对从***内存13读取到的应用渲染图层进行合成,以得到第一类合成图像。
显示处理单元10用于按照图像块数据量对第一类合成图像进行拆分,得到多个数据量相同的图像块。
需要说明的是,先拆分再合成的方式相对于先合成再拆分的方式,可以极大地降低计算量,提升处理效率。
在一种可选的实施方式中,显示处理单元10和视频编码单元11采取异步的读写模式,为了防止高速缓存15中未读取的图像块被覆写,显示处理单元10还可以根据以下方式合成图像块。
在需要向高速缓存15中写入图像块的情况下,表示未将完整第一类合成图像写入高速缓存15中,显示处理单元10根据图像块读取地址、图像块写入地址以及图像块数据量,高速缓存15对应的当前可写入数量,基于该当前可写入数量和已经写入的图像块数量确定当前需要,确定需要进行合成写入的图像块的位置,进而基于根据需要进行合成写入的图像块的位置从***内存13中读取应用渲染图层对应的图像数据,进行合成,将合成后的图像块逐个写入高速缓存15中。从而避免由于显示处理单元10合成图像块后盲目地执行写入操作,导致高速缓存15中未被读取的图像块数据被破坏的情况发生。
可选地,第二区域中所存储的传输信息还包括图像块数量,在此基础上,关于视频编码单元11如何完整地从高速缓存中读取第一类合成图像,本申请实施例还提供了一种可选的实施方式,请参考下文。
视频编码单元11用于在接收到第一类开始信号后,从图像块读取地址开始读取第i个图像块,并在第i个图像块读取完成后,更新图像块读取地址,令i=i+1,若i≤N,则重复从图像块读取地址开始读取第i个图像块,直至i>N,向显示处理单元10反馈完成信号,以使显示处理单元10开始合成下一帧图像。
需要说明的是,i>N表示获取到完整的第一类合成图像。
视频编码单元11读取到高速缓存15中的图像块数据后即可进行编码,不需要等待完整的一帧(第一类合成图像)读取完成后再进行编码,视频编码单元11从高速缓存15中读取图像块内容进行编码(按照图像块分块进行编码),而不是等一帧数据读取完成后再整体进行编码,能够提高整体的编码效率。
在本申请方案中,通过显示处理单元10和视频编码单元11共同对图像块写入地址和图像块读取地址进行管理,以确保高速缓存15中图像块读取和写入的正确性和一致性。
可选地,显示处理单元10用于在***初始化时,根据预先配置的图像分辨率和图像块数据量确定图像块数量,并将图像块数据量和图像块数量写入第二区域。
在一种可选的实施方式中,第二区域所存储的传输信息还包括高速缓存基地址和高速缓存容量,高速缓存基地址表示高速缓存15中用于存储图像块的首地址,高速缓存容量由电子设备硬件配置决定,并在***初始化后由驱动程序初始化配置。
在一种可选的实施方式中,显示处理单元10在接收到视频编码单元11反馈的完成信号时,根据预设的视频帧率,确定新的待合成图像帧的类型,待合成图像帧的类型为第一类型图像或第二类型图像。
其中,第二类型图像为参考帧图像。
显示处理单元10在接收到视频编码单元11反馈的完成信号时,确定连续合成的第一类型图像的数量是否大于视频帧率,若是,则确定新的待合成图像帧的类型为第二类型图像,反之,则为第一类型图像。
需要说明的是,还可以通过其他的实现方式确定待合成图像帧的类型。
可选地,显示处理单元10用于在待合成图像帧为第二类型图像时,对从***内存13读取到的应用渲染图层进行合成,得到第二类合成图像,将第二类合成图像写入***内存13,并向视频编码单元11发送第二类开始信号。
需要说明的是,第二类合成图像可以完整地写入***内存13,不用拆分为多个图像块。
需要说明的是,在视频编码过程中,视频编码单元11需要将参考帧图像数据缓存到内部帧缓存模块中,作为参考对当前编码数据进行预测和差值编码。非参考帧通常根据前后的参考帧来进行预测编码和解码,不会被单独存储用于后续帧的预测。
视频编码单元11用于在接收到第二类开始信号后,从***内存13读取第二类合成图像,在获取到完整的第二类合成图像后,向显示处理单元10反馈完成信号,以使显示处理单元10开始合成下一帧图像。
可选地,视频编码单元11用于对获取到的目标合成图像进行编码处理,并将编码结果发送给接收设备。
其中,目标合成图像为视频编码单元11所获取到的任一完成的合成图像,包括第一类合成图像和第二类合成图像。
在本申请提供的图像编码***中,将一帧图像拆分为多个图像块进行合成和传输。避免了频繁对***内存13进行写入和读取操作,在显示处理单元10和视频编码单元11之间增设了高速缓存15,用于图像块缓存和读写,显著降低了***内存13的读写带宽需求和视频编码过程中图像数据的读写延迟,进而提高了视频图像的传输和编码效率。可以有效降低远程视频图像数据传输过程中的延迟,保障视频图像的高质量传输,即便在视频发送端内存负载较高或者高视频帧率的情况下也能维持流畅的视频编码传输。
应当理解的是,图1所示的结构仅为图像编码***的部分的结构示意图,图像编码***还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
本申请实施例提供的一种图像编码方法,可以但不限于应用于图1所示的图像编码***,具体的流程,请参考图3,图像编码方法包括:S103和S201,具体阐述如下。
S103,显示处理单元在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号。
S201,视频编码单元在接收到第一类开始信号后,从高速缓存读取第一类合成图像,在获取到完整的第一类合成图像后,向显示处理单元反馈完成信号,以使显示处理单元开始合成下一帧图像。
关于S103中的内容,本申请实施例还提供了一种可选的实施方式,请参考下文,S103包括:S103-1、S103-2以及S103-3,具体阐述如下。
S103-1,显示处理单元在待合成图像帧为第一类型图像时,按照图像块数据量对从***内存读取到的应用渲染图层进行合成,得到多个数据量相同的图像块。
S103-2,显示处理单元第1个图像块写入第一区域,更新图像块写入地址,并向视频编码单元发送第一类开始信号。
S103-3,显示处理单元在将第i个图像块写入第一区域后,基于图像块读取地址和图像块写入地址确定第一区域的剩余空间是否大于图像块数据量,若是,则令i=i+1,将第i个图像块写入第一区域,更新图像块写入地址。
其中,1≤i≤N,N表示图像块数量。
可选地,S103-1包括:S103-1A和S103-1B,具体阐述如下。
S103-1A,显示处理单元在待合成图像帧为第一类型图像时,按照图像块数据量将应用渲染图层拆分为多个数据量相同的子模块。
S103-1B,显示处理单元对相同区域的子模块进行合成,以得到对应的图像块。
在前文的基础上,关于S201中的内容,本申请实施例还提供了一种可选的实施方式,请参考下文,S201包括:S201-1,具体阐述如下。
S201-1,视频编码单元在接收到第一类开始信号后,从图像块读取地址开始读取第i个图像块,并在第i个图像块读取完成后,更新图像块读取地址,令i=i+1,若i≤N,则重复从图像块读取地址开始读取第i个图像块,直至i>N,向显示处理单元反馈完成信号,以使显示处理单元开始合成下一帧图像。
在一种可选的实施方式中,图像编码方法还包括:S101(图中未示出),具体阐述如下。
S101,显示处理单元在***初始化时,根据预先配置的图像分辨率和图像块数据量确定图像块数量,并将图像块数据量和图像块数量写入第二区域。
在一种可选的实施方式中,图像编码方法还包括:S102(图中未示出),具体阐述如下。
S102,显示处理单元在接收到视频编码单元反馈的完成信号时,根据预设的视频帧率,确定新的待合成图像帧的类型,待合成图像帧的类型为第一类型图像或第二类型图像。
在一种可选的实施方式中,图像编码方法还包括:S104和S202(图中未示出),具体阐述如下。
S104,显示处理单元在待合成图像帧为第二类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第二类合成图像,将第二类合成图像写入***内存,并向视频编码单元发送第二类开始信号;
S202,视频编码单元在接收到第二类开始信号后,从***内存读取第二类合成图像,在获取到完整的第二类合成图像后,向显示处理单元反馈完成信号,以使显示处理单元开始合成下一帧图像。
在一种可选的实施方式中,图像编码方法还包括:S203(图中未示出),具体阐述如下。
S203,视频编码单元对获取到的目标合成图像进行编码处理,并将编码结果发送给接收设备。
其中,目标合成图像为视频编码单元所获取到的任一完成的合成图像。
需要说明的是,本实施例所提供的图像编码方法,其可以执行上述图像编码***实施例所示的功能用途,以实现对应的技术效果。为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
综上所述,本申请实施例提供的一种图像编码方法及***,图像编码***包括:显示处理单元、视频编码单元、***内存以及高速缓存,显示处理单元、视频编码单元以及***内存通过第一总线通信连接,显示处理单元、视频编码单元以及高速缓存通过第二总线通信连接;显示处理单元用于在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号;视频编码单元用于在接收到第一类开始信号后,从高速缓存读取第一类合成图像,在获取到完整的第一类合成图像后,向显示处理单元反馈完成信号,以使显示处理单元开始合成下一帧图像。通过高速缓存实现将第一类合成图像从显示处理单元传输到视频编码单元,避免了将第一类合成图像回写到***内存,从而有效降低数据在显示处理单元和视频编码单元之间传输的延迟,降低视频编码单元读取数据的时间,可以提高图像编码***对图像数据编码的效率。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
Claims (9)
1.一种图像编码***,其特征在于,所述图像编码***包括:显示处理单元、视频编码单元、***内存以及高速缓存,所述显示处理单元、所述视频编码单元以及所述***内存通过第一总线通信连接,所述显示处理单元、所述视频编码单元以及所述高速缓存通过第二总线通信连接;
所述显示处理单元用于在待合成图像帧为第一类型图像时,对从所述***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将所述第一类合成图像写入所述高速缓存,并向所述视频编码单元发送第一类开始信号,其中,所述第一类型图像为非参考帧图像;
所述视频编码单元用于在接收到所述第一类开始信号后,从所述高速缓存读取所述第一类合成图像,在获取到完整的所述第一类合成图像后,向所述显示处理单元反馈完成信号,以使所述显示处理单元开始合成下一帧图像;
所述第一类合成图像包括多个数据量相同的图像块,所述高速缓存包括第一区域和第二区域,所述第一区域用于存储图像块,所述第二区域用于存储所述图像块的传输信息,所述传输信息包括图像块数据量、图像块读取地址以及图像块写入地址;
所述显示处理单元用于在待合成图像帧为第一类型图像时,按照所述图像块数据量对从所述***内存读取到的应用渲染图层进行合成,得到多个数据量相同的图像块;
所述显示处理单元用于将第1个所述图像块写入所述第一区域,更新所述图像块写入地址,并向所述视频编码单元发送第一类开始信号;
所述显示处理单元用于在将第i个所述图像块写入所述第一区域后,基于所述图像块读取地址和所述图像块写入地址确定所述第一区域的剩余空间是否大于所述图像块数据量,若是,则令i=i+1,将第i个所述图像块写入所述第一区域,更新所述图像块写入地址;
其中,1≤i≤N,N表示所述图像块数量。
2.如权利要求1所述的图像编码***,其特征在于,
所述显示处理单元用于在待合成图像帧为第一类型图像时,按照所述图像块数据量将所述应用渲染图层拆分为多个数据量相同的子模块;
所述显示处理单元用于对相同区域的所述子模块进行合成,以得到对应的所述图像块。
3.如权利要求1所述的图像编码***,其特征在于,所述传输信息还包括图像块数量;
所述视频编码单元用于在接收到所述第一类开始信号后,从所述图像块读取地址开始读取第i个所述图像块,并在第i个所述图像块读取完成后,更新所述图像块读取地址,令i=i+1,若i≤N,则重复从所述图像块读取地址开始读取第i个所述图像块,直至i>N,向所述显示处理单元反馈完成信号,以使所述显示处理单元开始合成下一帧图像。
4.如权利要求3所述的图像编码***,其特征在于,
所述显示处理单元用于在***初始化时,根据预先配置的图像分辨率和所述图像块数据量确定所述图像块数量,并将所述图像块数据量和所述图像块数量写入所述第二区域。
5.如权利要求1所述的图像编码***,其特征在于,所述显示处理单元在接收到所述视频编码单元反馈的所述完成信号时,根据预设的视频帧率,确定新的待合成图像帧的类型,所述待合成图像帧的类型为第一类型图像或第二类型图像。
6.如权利要求1所述的图像编码***,其特征在于,
所述显示处理单元用于在待合成图像帧为第二类型图像时,对从所述***内存读取到的应用渲染图层进行合成,得到第二类合成图像,将所述第二类合成图像写入所述***内存,并向所述视频编码单元发送第二类开始信号;
所述视频编码单元用于在接收到所述第二类开始信号后,从所述***内存读取所述第二类合成图像,在获取到完整的所述第二类合成图像后,向所述显示处理单元反馈完成信号,以使所述显示处理单元开始合成下一帧图像。
7.如权利要求1所述的图像编码***,其特征在于,所述高速缓存为静态随机存取存储器。
8.如权利要求1所述的图像编码***,其特征在于,所述视频编码单元用于对获取到的目标合成图像进行编码处理,并将编码结果发送给接收设备;
其中,所述目标合成图像为所述视频编码单元所获取到的任一完成的合成图像。
9.一种图像编码方法,其特征在于,应用于权利要求1-8中任一项所述的图像编码***,所述方法包括:
显示处理单元在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将所述第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号;
所述视频编码单元在接收到所述第一类开始信号后,从所述高速缓存读取所述第一类合成图像,在获取到完整的所述第一类合成图像后,向所述显示处理单元反馈完成信号,以使所述显示处理单元开始合成下一帧图像;
所述显示处理单元在待合成图像帧为第一类型图像时,对从***内存读取到的应用渲染图层进行合成,得到第一类合成图像,将所述第一类合成图像写入高速缓存,并向视频编码单元发送第一类开始信号的步骤,包括:
所述显示处理单元在待合成图像帧为第一类型图像时,按照所述图像块数据量对从所述***内存读取到的应用渲染图层进行合成,得到多个数据量相同的图像块;
所述显示处理单元将第1个所述图像块写入所述第一区域,更新所述图像块写入地址,并向所述视频编码单元发送第一类开始信号;
所述显示处理单元在将第i个所述图像块写入所述第一区域后,基于所述图像块读取地址和所述图像块写入地址确定所述第一区域的剩余空间是否大于所述图像块数据量,若是,则令i=i+1,将第i个所述图像块写入所述第一区域,更新所述图像块写入地址;
其中,1≤i≤N,N表示所述图像块数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410205399.0A CN117793367B (zh) | 2024-02-26 | 2024-02-26 | 一种图像编码方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410205399.0A CN117793367B (zh) | 2024-02-26 | 2024-02-26 | 一种图像编码方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117793367A CN117793367A (zh) | 2024-03-29 |
CN117793367B true CN117793367B (zh) | 2024-06-04 |
Family
ID=90389480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410205399.0A Active CN117793367B (zh) | 2024-02-26 | 2024-02-26 | 一种图像编码方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117793367B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101257626A (zh) * | 2008-01-31 | 2008-09-03 | 炬力集成电路设计有限公司 | 动态随机存储器的存取方法、装置和媒体播放器 |
JP2012004898A (ja) * | 2010-06-17 | 2012-01-05 | Sharp Corp | 記憶装置、符号化装置、符号化方法及びコンピュータプログラム |
CN103533356A (zh) * | 2013-10-10 | 2014-01-22 | 深圳市智美达科技有限公司 | 视频数据传输方法和装置 |
CN110832868A (zh) * | 2018-08-31 | 2020-02-21 | 深圳市大疆创新科技有限公司 | 编码方法、解码方法、编码设备和解码设备 |
CN111357289A (zh) * | 2017-11-17 | 2020-06-30 | Ati科技无限责任公司 | 针对视频编码器渲染的游戏引擎应用程序 |
CN112291566A (zh) * | 2020-06-19 | 2021-01-29 | 珠海市杰理科技股份有限公司 | H.264视频编码方法、装置、芯片、存储设备及电子设备 |
WO2022028283A1 (zh) * | 2020-08-03 | 2022-02-10 | 阿里巴巴集团控股有限公司 | 图像帧编码方法、对象搜索方法、计算机设备、存储介质 |
CA3142044A1 (en) * | 2020-12-14 | 2022-06-14 | Comcast Cable Communications, Llc | Methods and systems for improved content encoding |
CN115348454A (zh) * | 2022-10-17 | 2022-11-15 | 此芯科技(上海)有限公司 | 一种视频传输处理方法与终端设备 |
CN116703699A (zh) * | 2023-05-24 | 2023-09-05 | 瑞芯微电子股份有限公司 | 图像数据处理方法和装置、存储介质、图像信号处理器 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030067627A1 (en) * | 2001-08-30 | 2003-04-10 | Tomoe Ishikawa | Image processing method and its data cache method |
KR100451554B1 (ko) * | 2002-08-30 | 2004-10-08 | 삼성전자주식회사 | 멀티미디어용 시스템온칩 프로세서 |
US7627227B2 (en) * | 2004-05-17 | 2009-12-01 | Microsoft Corporation | Reverse presentation of digital media streams |
US7760804B2 (en) * | 2004-06-21 | 2010-07-20 | Intel Corporation | Efficient use of a render cache |
DE102006057983A1 (de) * | 2006-12-08 | 2008-06-12 | Siemens Ag | Verfahren zur Vidoecodierung einer Folge digitalisierter Bilder |
US10516891B2 (en) * | 2015-11-20 | 2019-12-24 | Intel Corporation | Method and system of reference frame caching for video coding |
CN107517385B (zh) * | 2016-06-16 | 2020-02-21 | 华为技术有限公司 | 一种视频图像的编解码方法和装置 |
-
2024
- 2024-02-26 CN CN202410205399.0A patent/CN117793367B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101257626A (zh) * | 2008-01-31 | 2008-09-03 | 炬力集成电路设计有限公司 | 动态随机存储器的存取方法、装置和媒体播放器 |
JP2012004898A (ja) * | 2010-06-17 | 2012-01-05 | Sharp Corp | 記憶装置、符号化装置、符号化方法及びコンピュータプログラム |
CN103533356A (zh) * | 2013-10-10 | 2014-01-22 | 深圳市智美达科技有限公司 | 视频数据传输方法和装置 |
CN111357289A (zh) * | 2017-11-17 | 2020-06-30 | Ati科技无限责任公司 | 针对视频编码器渲染的游戏引擎应用程序 |
CN110832868A (zh) * | 2018-08-31 | 2020-02-21 | 深圳市大疆创新科技有限公司 | 编码方法、解码方法、编码设备和解码设备 |
CN112291566A (zh) * | 2020-06-19 | 2021-01-29 | 珠海市杰理科技股份有限公司 | H.264视频编码方法、装置、芯片、存储设备及电子设备 |
WO2022028283A1 (zh) * | 2020-08-03 | 2022-02-10 | 阿里巴巴集团控股有限公司 | 图像帧编码方法、对象搜索方法、计算机设备、存储介质 |
CA3142044A1 (en) * | 2020-12-14 | 2022-06-14 | Comcast Cable Communications, Llc | Methods and systems for improved content encoding |
CN115348454A (zh) * | 2022-10-17 | 2022-11-15 | 此芯科技(上海)有限公司 | 一种视频传输处理方法与终端设备 |
CN116703699A (zh) * | 2023-05-24 | 2023-09-05 | 瑞芯微电子股份有限公司 | 图像数据处理方法和装置、存储介质、图像信号处理器 |
Also Published As
Publication number | Publication date |
---|---|
CN117793367A (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10699361B2 (en) | Method and apparatus for enhanced processing of three dimensional (3D) graphics data | |
US8102400B1 (en) | Method and apparatus for providing enhanced resolution display for display telephones and PDAs | |
JP5678743B2 (ja) | 情報処理装置、画像送信プログラム、画像送信方法および画像表示方法 | |
CN101802872B (zh) | 深度缓冲器压缩 | |
CN112843676B (zh) | 数据处理方法、装置、终端、服务器及存储介质 | |
CN113286005B (zh) | 抓屏方法、装置、电子设备及存储介质 | |
CN111209116B (zh) | 一种分配显存空间的方法、装置及计算机存储介质 | |
JP2005513658A (ja) | サーバとクライアント端末との間でオブジェクトを送信する方法 | |
US11321905B2 (en) | Error concealment in split rendering | |
JPH10222699A (ja) | データ処理装置 | |
US9451197B1 (en) | Cloud-based system using video compression for interactive applications | |
WO2024140568A1 (zh) | 图像处理方法、装置、电子设备及可读存储介质 | |
CN117793367B (zh) | 一种图像编码方法及*** | |
US7768521B2 (en) | Image processing apparatus and image processing method | |
US20150022548A1 (en) | Graphics server for remotely rendering a composite image and method of use thereof | |
CN108259779B (zh) | 一种利用部分幅面数据实现快速处理大幅面视频图像的方法 | |
US6285373B1 (en) | Method and apparatus for texture transmission and storage | |
CN113126869B (zh) | 基于国产bmc芯片的kvm图像高速重定向的实现方法及*** | |
TWI512675B (zh) | 影像處理裝置與方法 | |
CN104581175A (zh) | 影像处理装置与方法 | |
CN104737225A (zh) | 用于存储器带宽有效的显示合成的***及方法 | |
CN116320248B (zh) | 存储芯片共享***、方法、相关装置及存储介质 | |
CN113268302B (zh) | 一种头戴式显示设备的显示模式切换方法、装置 | |
US20240233189A1 (en) | V3c syntax extension for mesh compression using sub-patches | |
CN114025162B (zh) | 熵解码方法、介质、程序产品和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |