CN112835730A - 图像存储、内存分配、图像合成方法、装置、设备及介质 - Google Patents

图像存储、内存分配、图像合成方法、装置、设备及介质 Download PDF

Info

Publication number
CN112835730A
CN112835730A CN202110250968.XA CN202110250968A CN112835730A CN 112835730 A CN112835730 A CN 112835730A CN 202110250968 A CN202110250968 A CN 202110250968A CN 112835730 A CN112835730 A CN 112835730A
Authority
CN
China
Prior art keywords
image
shared memory
video stream
module
memory address
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.)
Pending
Application number
CN202110250968.XA
Other languages
English (en)
Inventor
陈凌奇
于林灯
冯歆鹏
周骥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NextVPU Shanghai Co Ltd
Original Assignee
NextVPU Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NextVPU Shanghai Co Ltd filed Critical NextVPU Shanghai Co Ltd
Priority to CN202110250968.XA priority Critical patent/CN112835730A/zh
Publication of CN112835730A publication Critical patent/CN112835730A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明实施例公开了一种图像存储、内存分配、图像合成方法、装置、设备及介质。所述方法包括:获取至少一个共享内存地址;将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。本发明实施例可以提高图像与视频流的合成效率,降低图像与视频流的合成功耗。

Description

图像存储、内存分配、图像合成方法、装置、设备及介质
技术领域
本发明实施例涉及数据处理领域,尤其涉及一种图像存储、内存分配、图像合成方法、装置、设备及介质。
背景技术
在屏显示(On Screen Display,OSD)技术是在显示器上生成的文本或图形,使用户获得更多的信息,并为用户提供友好的人机界面。
应用程序在用户空间中绘制OSD图像,并存放在用户空间中,视频流的OSD控制器通常会使用一块或若干块固定显存,用于存储OSD图像,在OSD图像与视频流合成时,需要将OSD图像从用户空间中搬运到固定显存中,再将显存中的OSD图像与视频流进行合成。
此时OSD图像的绘制和搬运操作与OSD图像合成操作之间的耦合性较高,同时绘制操作和搬运操作会竞争中央处理器(Central Processing Unit,CPU)资源,而搬运操作和合成操作又会竞争OSD硬件资源(比如OSD控制器),而且,搬运操作会额外消耗资源。
发明内容
本发明实施例提供一种图像存储、内存分配、图像合成方法、装置、设备及介质,可以提高图像与视频流的合成效率,降低图像与视频流的合成功耗。
第一方面,本发明实施例提供了一种图像存储方法,应用于中央处理器,包括:
获取至少一个共享内存地址;
将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
第二方面,本发明实施例还提供了一种内存分配方法,应用于图形处理器,包括:
为待写入的至少一个图像分配共享内存;
获取各所述共享内存的共享内存地址;
将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
第三方面,本发明实施例还提供了一种图像存储装置,配置于中央处理器,包括:
共享内存地址获取模块,用于获取至少一个共享内存地址;
图像绘制模块,用于将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
第四方面,本发明实施例还提供了一种内存分配装置,配置于图形处理器,包括:
共享内存分配模块,用于为待写入的至少一个图像分配共享内存;
共享内存地址获取模块,用于获取各所述共享内存的共享内存地址;
共享内存地址发送模块,用于将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
第五方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序所述处理器执行所述程序时实现如本发明实施例中任一所述的图像存储方法或内存分配方法。
第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中任一所述的图像存储方法或内存分配方法。
第七方面,本发明实施例还提供了一种图像合成方法,包括:
通过中央处理器获取至少一个共享内存地址,将至少一个图像写入对应的共享内存地址指向的共享内存中;
通过视频流模块从各所述共享内存地址指向的共享内存中提取存储数据,并添加到视频流中,所述存储数据包括所述图像。
本发明实施例通过配置共享内存,并由中央处理器将图像写入共享内存中,以便视频流模块可以根据需要从共享内存中读取图像,并将图像和视频流进行合成,省略了图像的搬运操作,同时将图像的写入操作和图像的合成操作进行解耦,图像的写入操作无需置于图像的搬运操作完成之后,解决了现有技术中图像的搬运操作与图像合成操作的耦合性高,导致图像合成效率低以及成本高的问题,图像的合成操作与图像的写入操作相互独立,提高图像合成效率,同时省略图像的搬运操作,可以降低图像合成成本,并且去除了传统OSD技术中使用的固定显存,更新为动态申请并及时释放大小可配置的共享内存,提高了整个系统的内存资源使用效率。
附图说明
图1是本发明实施例一中的一种图像存储方法的流程图;
图2是本发明实施例二中的一种内存分配方法的流程图;
图3是本发明实施例三中的一种图像存储装置的结构示意图;
图4是本发明实施例四中的一种内存分配装置的结构示意图;
图5是本发明实施例五中的一种计算机设备的结构示意图;
图6a是本发明实施例七中的一种图像合成方法的流程图;
图6b是本发明实施例七中的一种图像合成系统的结构示意图;
图6c是本发明实施例七中的一种应用场景的流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一中的一种图像存储方法的流程图,本实施例可适用于中央处理器将待添加到视频流的图像写入共享内存的情况,该方法可以由本发明实施例提供的图像存储装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成计算机设备中,具体是中央处理器。如图1所示,本实施例的方法具体包括:
S110,获取至少一个共享内存地址。
共享内存地址指向共享内存,共享内存用于存储图像。共享内存可以是指可以被多个不同程序或处理器访问的大容量内存。通过共享内存,处理器和处理器之间,或程序和程序之间可以进行消息传递。
可选的,所述获取共享内存地址,包括:根据各所述图像的图像属性信息,生成共享内存申请请求;向图形处理器发送共享内存申请请求;接收所述图形处理器反馈的至少一个共享内存地址,所述共享内存地址指向的共享内存的容量与对应图像的图像属性信息匹配。
图像属性信息用于确定图像的占用空间,图像属性信息可以是指描述图像的信息,图像属性信息可以包括下述至少一项图像的尺寸、图像的颜色模式和图像深度等。其中,图像的尺寸可以包括矩形图像的宽和矩形图像的高,或者包括圆形图像的半径等。图像的颜色模式可以包括红绿蓝(Red Green Blue,RGB)模式、灰度模式、青红黄黑(CyanMagenta Yellow Black,CMYK)模式、明亮度和色度(Luminance或Luma和Chrominance或Chroma,YUV)模式或亮度绿至红蓝至黄(Lightness AB,LAB)模式等。图像深度信息用于描述图像的深度信息。图像属性信息决定着一个图像将占用的存储空间容量。
共享内存申请请求用于申请写入图像的共享内存。共享内存申请请求可以包括待写入的每个图像的图像属性信息。实际上,在申请共享内存之前,不配置存储图像的共享内存,可以避免为图像配置固定存储空间的显存,合理配置存储资源,减少存储资源的消耗,提高存储资源的利用率。共享内存申请请求为中央处理器发送给图形处理器。图形处理器(Graphics Processing Unit,GPU)用于为中央处理器分配共享内存。图形处理器可以根据图像的图像属性信息为该图像分配共享内存,分配的共享内存足以承载该图像,示例性的,分配的共享内存的容量与图像的占用空间容量相等,或者分配的共享内存的容量略大于图像的占用空间容量,例如,图像占用空间容量为10MB,共享内存容量为10.1MB。根据图像的占用空间容量分配共享内存,实际是根据图像的大小动态分配共享内存,可以针对性分配共享内存,避免共享内存的容量固定,导致无法写入完整图像,导致图像数据丢失,或避免共享内存写入图像之后剩余过多容量,导致存储资源浪费。
通过根据图像的图像属性信息,生成共享内存申请请求,并发送给图形处理器,由图形处理器分别分配与各图像的占用空间容量匹配的共享内存,并接收分配的共享内存的地址,可以针对图像的实际占用空间容量,来分配共享内存,可以有效利用共享内存的资源,合理配置存储资源,减少存储资源浪费。
S120,将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
将图像写入共享内存地址对应的共享内存中,视频流模块可以从共享内存中读取数据,节省了图像写入缓存,并搬运到显存的搬运操作,可以减少搬运操作的资源消耗,以及节省搬运操作的操作时间。
在图像数量有多个时,一个图像写入一个共享内存中,隔离每个图像的存储位置,即一个图像对应一个共享内存,一个图像对应一个共享内存地址。此外,也可以将多个图像写入同一个共享内存中,例如,将同一图层的图像写入同一个共享内存中。具体可以根据实际需要进行设定。
视频流模块用于获取视频流,并将获取的视频流和图像进行合成,输出合成后的视频流。其中,获取视频流包括生成视频流,或接收(或下载)视频流。视频流模块可以是指获取视频流的集成电路。示例性的,视频流模块包括下述至少一项:图像采集模块(如摄像头)、数字信号处理器(Digital Signal Processor,DSP)、编码器、解码器和输出模块(如显示器)等。视频流模块可以对场景进行拍摄,得到实时视频流;或者可以从互联网中下载视频流。
视频流模块可以将至少一个图像分别添加到视频流中,在存在多个图像时,可以依次获取各图像,并将各图像叠加合成到视频流中,其中,添加次序可以预先配置。
可选的,图像存储方法还包括:向图形处理器发送图像合成参数,以使所述图像处理器将所述图像合成参数转发给所述视频流模块,以及所述视频流模块根据所述图像合成参数依次将各所述图像添加到所述视频流中。
图像合成参数用于视频流和图像合成。图像合成参数可以是指图像添加视频流关联的参数。可选的,图像合成参数可以包括下述至少一项:共享内存地址、图像添加位置、图像尺寸和多个图像的添加次序。共享内存地址用于指示视频流模块从哪里获取待添加到视频流中的图像。图像对应的图像添加位置用于确定图像在视频流中的位置,每个图像都配置有对应的图像添加位置。示例性的,图像添加位置可以是指在视频流的各帧中添加图像的位置。添加次序可以是指在图像的数量为多个时,在视频流中各图像的添加次序。添加次序用于确定各图像的叠加顺序,以及确定各图像的显示区域。可以理解为,在视频流上配置多个图层,每个图层添加一个图像,图层之间的从底层到顶层的叠加次序与图像的添加次序匹配,例如,添加次序最前的图像添加到最底层图层,添加次序最后的图像添加到最顶层图层。如果各图像的图像添加位置重叠,位于上层的图层会遮挡位于下层的图层。
视频流模块根据共享内存地址依次获取各图像,在视频流中按照添加次序依次根据各图像对应的图像添加位置添加图像,同时添加后的该图像的尺寸与图像尺寸相同。
在一个具体的例子中,图像和视频流的帧均为矩形图像。获取图像,按照图像尺寸对图像进行缩放,或者可以不变,形成图像尺寸的图像。按照添加次序依次从各图像中选择一个图像。针对每个图像,在视频流的各帧中建立二维坐标系,图像添加位置为坐标(a,b)。将图像的关键点置于该坐标(a,b),关键点可以是指图像的左顶点(还可以是对角线交点或其他顶点等)。将当前图像添加到视频流中之后,返回选择添加次序中相邻下一个图像,重复前述操作,直至全部图像添加到视频流中。
图形处理器与中央处理器通过核间通信传输图像合成参数。图形处理器还用于接收中央处理器发送的图像合成参数,以及转发图像合成参数至视频流模块,以使视频流模块根据图像合成参数,将共享内存中的图像添加到视频流中。
通过配置图像合成参数,并发送至图形处理器,由图形处理器转发至视频流模块,以使视频流模块根据图像合成参数,对图像和视频流进行合成,可以灵活配置图像的合成方式,丰富图像的合成模式,还可以精确控制多个图像与视频流的合成,增加可添加到视频流的图像的数量。
可选的,图像存储方法还包括:向图形处理器发送视频流控制指令,以使所述图像处理器控制所述视频流模块工作。
图形处理器还用于接收中央处理器发送的视频流控制指令,以及控制视频流模块,以使视频流模块执行视频流关联的操作。视频流控制指令可以包括下述至少一项视频流启动指令、视频流合成指令和视频流关闭指令等。视频流启动指令用于控制视频流模块开始生成视频流并输出视频流。视频流合成指令用于控制视频流模块在视频流获取并输出的流程中添加视频流添加图像的合成环节,以控制视频流模块开始将共享内存中获取的数据添加到视频流中。视频流关闭指令用于控制视频流模块停止生成视频流。
通过向图形处理器发送视频流控制指令,以使图形处理器控制视频流模块,可以精准控制视频流模块进行视频流的生成、合成和关闭等操作,准确实现合成视频流与图像。
本发明实施例通过配置共享内存,并由中央处理器将图像写入共享内存中,以便视频流模块可以根据需要从共享内存中读取图像,并将图像和视频流进行合成,省略了图像的搬运操作,同时将图像的写入操作和图像的合成操作进行解耦,图像的写入操作无需置于图像的搬运操作完成之后,解决了现有技术中图像的搬运操作与图像合成操作的耦合性高,导致图像合成效率低以及成本高的问题,图像的合成操作与图像的写入操作相互独立,提高图像合成效率,同时省略图像的搬运操作,可以降低图像合成成本,并且去除了传统OSD技术中使用的固定显存,更新为动态申请并及时释放大小可配置的共享内存,提高了整个系统的内存资源使用效率。
实施例二
图2为本发明实施例二中的一种图像存储方法的流程图,本实施例可适用于图形处理器分配存放图像的共享内存,以便从共享内存中读取图像添加到视频流的情况,该方法可以由本发明实施例提供的图像存储装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成计算机设备中,具体是图形处理器。
本实施例的方法具体包括:
S210,为待写入的至少一个图像分配共享内存。
可以在内存中,为每个图像动态分配对应的共享内存,将图像与共享内存进行绑定。
本发明实施例中未详细介绍的描述可以参考上述实施例的描述。
S220,获取各所述共享内存的共享内存地址。
共享内存的共享内存地址指向该共享内存。
S230,将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
将共享内存地址发送给中央处理器,中央处理器可以在共享内存地址指向的共享内存中绘制图像。同时,将共享内存地址还发送给视频流模块,以使视频流模块从共享内存中获取数据,并添加到视频流中。
可选的,所述为待写入的至少一个图像分配共享内存,包括:接收所述中央处理器发送的共享内存申请请求;从所述共享内存申请请求中提取各所述图像的图像属性信息;根据各所述图像的图像属性信息,确定各所述图像对应的占用空间;根据各所述图像对应的占用空间,在内存中为各所述图像分配共享内存。
可以根据图像属性信息,计算图像的占用空间容量。示例性的,可以根据图像属性信息,以及预先配置的占用空间容量计算公式,计算图像的占用空间容量。其中,图像属性信息可以包括下述至少一项:尺寸、颜色模式和深度信息等。例如,可以根据尺寸和颜色模式,确定图像包括的像素点的数量,像素点的数量与占用空间容量成正比。深度信息的丰富程度,决定着一个像素点的信息量。信息量与占用空间容量成正比。可以配置每一项的权重,计算权重与每一项的乘积,并进行加权和计算,得到占用空间容量。
此外,图像属性信息还可以包括分辨率等,同样可以配置分辨率的权重,并计算权重与分辨率的乘积,并累加求和,得到占用空间容量。
通过根据图像属性信息确定图像对应的占用空间,并对应分配共享内存,可以适配图像的占用空间分配共享内存,合理配置存储资源,避免分配过多共享内存,导致存储资源浪费,提高存储资源的利用率。
可选的,内存分配方法,还包括:接收中央处理器发送的图像合成参数;将所述图像合成参数转发给视频流模块,以使所述视频流模块根据所述图像合成参数依次将各所述图像添加到所述视频流中。
可选的,所述图像合成参数包括至少一项:所述共享内存地址、图像添加位置、图像尺寸和多个图像的添加次序。
可选的,内存分配方法,还包括:接收中央处理器发送的视频流控制指令,并根据所述视频流控制指令控制所述视频流模块工作。
其中,接收的视频流控制指令,可以直接转发给视频流模块,以使视频流模块根据视频流控制指令,执行对应的操作。视频流控制指令可以包括下述至少一项视频流启动指令、视频流合成指令和视频流关闭指令等。
本发明实施例通过图形处理器为待写入共享内存的图像分配共享内存,并将共享内存地址发送给中央处理器,以使中央处理器将图像写入分配的共享内存中,并使视频流模块从共享内存中直接读取数据,降低图像的写入操作和图像的合成操作的耦合性,使得图像的合成操作与图像的写入操作相互独立,提高图像合成效率,同时省略图像的搬运操作,可以降低图像合成成本,加快图像合成速度。
实施例三
图3为本发明实施例三中的一种图像存储装置的示意图。实施例三是实现本发明上述实施例提供的图像存储方法的相应装置,该装置可采用软件和/或硬件的方式实现,并一般可集成计算机设备中。
相应的,本实施例的装置可以包括:
共享内存地址获取模块310,用于获取至少一个共享内存地址;
图像绘制模块320,用于将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
本发明实施例通过配置共享内存,并由中央处理器将图像写入共享内存中,以便视频流模块可以根据需要从共享内存中读取图像,并将图像和视频流进行合成,省略了图像的搬运操作,同时将图像的写入操作和图像的合成操作进行解耦,图像的写入操作无需置于图像的搬运操作完成之后,解决了现有技术中图像的搬运操作与图像合成操作的耦合性高,导致图像合成效率低以及成本高的问题,图像的合成操作与图像的写入操作相互独立,提高图像合成效率,同时省略图像的搬运操作,可以降低图像合成成本,并且去除了传统OSD技术中使用的固定显存,更新为动态申请并及时释放大小可配置的共享内存,提高了整个系统的内存资源使用效率。
进一步的,所述共享内存地址获取模块310,包括:共享内存申请单元,用于根据各所述图像的图像属性信息,生成共享内存申请请求;向图形处理器发送共享内存申请请求;接收所述图形处理器反馈的至少一个共享内存地址,所述共享内存地址指向的共享内存的容量与对应图像的图像属性信息匹配。
进一步的,所述图像存储装置,还包括:图像合成参数配置模块,用于向图形处理器发送图像合成参数,以使所述图像处理器将所述图像合成参数转发给所述视频流模块,以及所述视频流模块根据所述图像合成参数依次将各所述图像添加到所述视频流中。
进一步的,所述图像合成参数包括至少一项:所述共享内存地址、图像添加位置、图像尺寸和多个图像的添加次序。
进一步的,所述图像存储装置,还包括:控制指令发送模块,用于向图形处理器发送视频流控制指令,以使所述图像处理器控制所述视频流模块工作。
上述装置可执行本发明实施例所提供的方法,具备执行方法相应的功能组件和有益效果。
实施例四
图4为本发明实施例四中的一种内存分配装置的示意图。实施例四是实现本发明上述实施例提供的内存分配方法的相应装置,该装置可采用软件和/或硬件的方式实现,并一般可集成计算机设备中。
相应的,本实施例的装置可以包括:
内存分配模块410,用于为待写入的至少一个图像分配共享内存;
共享内存地址获取模块420,用于获取各所述共享内存的共享内存地址;
共享内存地址发送模块430,用于将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
本发明实施例通过图形处理器为待写入共享内存的图像分配共享内存,并将共享内存地址发送给中央处理器,以使中央处理器将图像写入分配的共享内存中,并使视频流模块从共享内存中直接读取数据,降低图像的写入操作和图像的合成操作的耦合性,使得图像的合成操作与图像的写入操作相互独立,提高图像合成效率,同时省略图像的搬运操作,可以降低图像合成成本,加快图像合成速度。
进一步的,所述内存分配模块410,包括:共享内存动态分配单元,用于接收所述中央处理器发送的共享内存申请请求;从所述共享内存申请请求中提取各所述图像的图像属性信息;根据各所述图像的图像属性信息,确定各所述图像对应的占用空间;根据各所述图像对应的占用空间,在内存中为各所述图像分配共享内存。
进一步的,所述内存分配装置还包括:图像合成参数转发模块,用于接收所述中央处理器发送的图像合成参数;将所述图像合成参数转发给所述视频流模块,以使所述视频流模块根据所述图像合成参数依次将各所述图像添加到所述视频流中。
进一步的,所述图像合成参数包括至少一项:所述共享内存地址、图像添加位置、图像尺寸和多个图像的添加次序。
进一步的,所述内存分配装置还包括:视频流控制模块,用于接收所述中央处理器发送的视频流控制指令,并根据所述视频流控制指令控制所述视频流模块工作。
上述装置可执行本发明实施例所提供的方法,具备执行方法相应的功能组件和有益效果。
实施例五
图5为本发明实施例五提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图5显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。计算机设备12可以是挂接在总线上的设备。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MCA)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(PerIPheral Component Interconnect,PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM),数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序组件,这些程序组件被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序组件42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序组件42包括但不限于操作系统、一个或者多个应用程序、其它程序组件以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序组件42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(Input/Output,I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local AreaNetwork,LAN),广域网(Wide Area Network,WAN)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它组件通信。应当明白,尽管图5中未示出,可以结合计算机设备12使用其它硬件和/或软件组件,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列(Redundant Arrays of Inexpensive Disks,RAID)系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明任意实施例所提供的图像存储方法或内存分配方法。
实施例六
本发明实施例六提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有发明实施例提供的图像存储方法:
也即,该程序被处理器执行时实现:获取至少一个共享内存地址;将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
或者实现如本申请所有发明实施例提供的内存分配方法,程序被处理器执行时实现:为待写入的至少一个图像分配共享内存;获取各所述共享内存的共享内存地址;将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、只读存储器(Read OnlyMemory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、无线电频率(Radio Frequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括LAN或WAN——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
实施例七
图6a为本发明实施例七中的一种图像合成方法的流程图,本实施例可适用于中央处理器在共享内存写入图像,视频流模块从共享内存中读取图像,并与视频流合成的情况,该方法可以由本发明实施例提供的图像合成系统来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成计算机设备中,如图6a所示,本实施例的方法具体包括:
S701,通过中央处理器获取至少一个共享内存地址,将至少一个图像写入对应的共享内存地址指向的共享内存中。
中央处理器用于在共享内存中绘制图像。
中央处理器还用于根据各所述图像的图像属性信息,生成共享内存申请请求;向图形处理器发送共享内存申请请求;接收所述图形处理器反馈的至少一个共享内存地址,所述共享内存地址指向的共享内存的容量与对应图像的图像属性信息匹配。
中央处理器还用于向图形处理器发送图像合成参数,以使所述图像处理器将所述图像合成参数转发给所述视频流模块,以及所述视频流模块根据所述图像合成参数依次将各所述图像添加到所述视频流中,所述图像合成参数包括至少一项:所述共享内存地址、图像添加位置、图像尺寸和多个图像的添加次序。
中央处理器还用于向图形处理器发送视频流控制指令,以使所述图像处理器控制所述视频流模块工作。
S702,通过视频流模块从各所述共享内存地址指向的共享内存中提取存储数据,并添加到视频流中,所述存储数据包括所述图像。
视频流模块用于从共享内存中读取存储数据。存储数据为共享内存中存储的数据。存储数据包括完整图像、部分图像或空等。在中央处理器绘制完成时,存储数据包括完整图像。在中央处理器绘制过程中,存储数据包括部分图像。在中央处理器未绘制时,存储数据为空。
视频流模块的读取操作和中央处理器的绘制操作相互独立。视频流模块的读取操作无需等待中央处理器绘制完成,从而中央处理器的绘制操作不会影响视频流模块针对视频流的获取和输出操作,从而不会影响视频流的输出质量,提高视频流的输出稳定性。
可选的,图像合成方法还包括:通过图形处理器为待写入的至少一个图像分配共享内存,并将各所述共享内存的共享内存地址,发送给所述中央处理器和所述视频流模块。
图形处理器用于为每个图像分配共享内存,并将共享内存的地址,提供给中央处理器和视频流模块,以使中央处理器将各图像写入对应的共享内存地址指向的共享内存中,以及使视频流模块从各共享内存地址指向的共享内存中提取存储数据,并添加到视频流中。
图形处理器还用于接收所述中央处理器发送的共享内存申请请求;从所述共享内存申请请求中提取各所述图像的图像属性信息;根据各所述图像的图像属性信息,确定各所述图像对应的占用空间;根据各所述图像对应的占用空间,在内存中为各所述图像分配共享内存。
图形处理器还用于接收所述中央处理器发送的视频流控制指令,控制所述视频流模块。
在一个应用场景中,如图6b所示,图像合成系统可以包括中央处理器710、图形处理器720和视频流模块730。其中,中央处理器710、图形处理器720、视频流模块730和共享内存为硬件模块。图像绘制主程序和视频流处理程序为软件模块。
示例性的,中央处理器710可以是进阶精简指令集机器(Advanced ReducedInstruction Set Computing Machine,ARM)处理器。中央处理器710上运行有图像绘制主程序。示例性的,图像为OSD图像。图像绘制主程序包括视频流控制模块,和图像绘制模块。其中,视频流控制模块用于输出视频流模块的控制指令,以控制视频流模块执行相应操作,操作可以包括启动、暂停和播放等操作。图像绘制模块用于绘制图像,并写入预先配置的共享内存中。此外,图像绘制主程序还可以包括前述共享内存地址获取模块。
图形处理器720上运行有视频流处理程序,视频流处理程序包括共享内存管理模块和视频流处理模块。其中,共享内存管理模块用于为中央处理器710分配共享内存。视频流处理模块用于根据中央处理器710发送的控制指令,控制视频流模块执行相应操作,操作包括图像与视频流的视频帧的合成操作。此外,共享内存管理模块还可以包括前述内存分配模块、共享内存地址获取模块和共享内存地址发送模块。
图形处理器720运行的视频流处理程序具备直接访问视频流模块(的寄存器)的能力,可以控制视频流模块工作状态及设置参数;打开或关闭图像合成功能开关;绑定内存地址到视频流模块供合成使用。示例性的,视频流模块可以是pipeline。在视频流模块工作时,如果图像合成功能开关处于打开状态,则会在输出到视频流输出设备之前把绑定的共享内存地址里的OSD数据按像素合成到视频流的各视频帧上。
中央处理器710与图形处理器720通过核间通讯进行数据传输。中央处理器710向图形处理器720申请(①)共享内存,图形处理器720分配(①)共享内存给中央处理器710。中央处理器710将分配的共享内存配置(②)为存储图像的共享内存。图形处理器720将分配的共享内存与图像进行绑定(②)并通知视频流模块730。视频流模块730将分配的共享内存与图像进行绑定(②)。中央处理器710在共享内存中写入(③)图像。视频流模块730从预先绑定的共享内存中读取图像,并与当前获取的视频流进行合成(④)。
如图6c所示,合成系统实现的视频流图像合成方法具体可以包括:
S740,图像绘制主程序启动视频流。
图像绘制主程序启动视频流,并生成视频流启动的控制指令。
中央处理器向图形处理器发送视频流控制指令,当前视频流控制指令为视频流启动指令。
S741,图像绘制主程序向视频流处理程序发送视频流启动指令,以启动视频流。
S742,视频流处理程序创建视频流。
视频流处理程序创建进程,运行视频流模块的程序。该程序被执行时,以获取视频流,并输出视频流到显示器中进行显示。
图形处理器控制视频流模块获取视频流,获取视频流包括生成视频流或下载视频流。
S743,视频流处理程序向图像绘制主程序返回结果。
该结果包括视频流处理结果和状态事件。例如,视频流处理程序创建视频流,视频流处理程序返回视频流创建成功的结果;视频流处理程序未能创建视频流,视频流处理程序返回视频流创建失败的结果。
S744,图像绘制主程序向视频流处理程序申请共享内存块。
图像绘制主程序根据待绘制的至少一个图像的图像属性信息,生成共享内存申请请求,并发送给视频流处理程序。
S745,视频流处理程序分配共享内存块。
视频流处理程序根据各图像的图像属性信息,确定各图像对应的占用空间;根据各图像对应的占用空间,在内存中为各图像分配共享内存。获取各共享内存的共享内存地址。
S746,视频流处理程序向图像绘制主程序返回共享内存块地址。
图形处理器将各共享内存地址发送给中央处理器。中央处理器获取至少一个共享内存地址。
S747,图像绘制主程序向视频流处理程序发送图像合成参数。
中央处理器向图形处理器发送图像合成参数,以使图像处理器将图像合成参数转发给视频流模块。图像合成参数包括至少一项:共享内存地址、图像添加位置、图像尺寸和多个图像的添加次序等。图像尺寸包括长和宽。
S748,视频流处理程序向视频流模块发送图像合成参数。
S749,视频流处理程序向图像绘制主程序返回结果。
该结果为图像合成参数配置结果。例如,视频流处理程序成功发送图像合成参数,视频流处理程序返回图像合成参数配置成功的结果;视频流处理程序未成功发送图像合成参数,视频流处理程序返回图像合成参数配置失败的结果。
S750,图像绘制主程序向视频流处理程序发送视频流合成指令,以开启图像合成功能。
中央处理器向图形处理器发送视频流控制指令,当前视频流控制指令为视频流合成指令。
S751,视频流处理程序控制视频流模块添加图像合成环节。
添加图像合成环节,实际是在视频流模块获取视频流之后,到输出视频流之前,增加视频流与图像的合成步骤。
S752,视频流处理程序向图像绘制主程序返回结果。
该结果为图像合成环节添加结果。例如,视频流模块成功添加图像合成环节,视频流处理程序返回图像合成环节添加成功的结果;视频流处理程序未成功添加图像合成环节,视频流处理程序返回图像合成环节添加失败的结果。
S753,图像绘制主程序在共享内存块上绘制图像。
中央处理器在共享内存块上绘制至少一个图像,即中央处理器分别将各图像写入共享内存中。图像为OSD图像。
需要说明的是,S750-S752和S753相互独立,S750-S752和S753的顺序不分先后。图中仅是示例性的示出S750-S752和S753的流程。S753可以在S750-S752之前执行。在图像绘制主程序未绘制或者未完整绘制图像时,视频流模块仍可以根据绑定的共享内存地址中读取存储数据,与视频帧进行合成,存储数据可以包括完整图像、部分图像或空。
S754,图像绘制主程序向视频流处理程序发送视频流关闭指令,以关闭视频流。
中央处理器向图形处理器发送视频流关闭指令,当前视频流控制指令为视频流关闭指令。
S755,视频流处理程序控制视频流模块销毁视频流。
视频流模块停止生成视频流或停止下载视频流,并销毁视频流,释放视频流关联的资源,例如,视频流占用的进程和缓存,同时还可以释放共享内存。
S756,视频流处理程序向图像绘制主程序返回结果。
该结果为视频流关闭结果。例如,视频流模块成功关闭视频流,视频流处理程序返回视频流关闭成功的结果;视频流处理程序未成功关闭视频流,视频流处理程序返回视频流关闭失败的结果。关闭视频流可以是指销毁视频流,并释放共享内存、视频流关联的进程和缓存等。
本发明实施例通过将图像绘制与视频流处理配置为两个独立的程序执行,并异步执行,从而互不影响,视频处理程序只需把共享内存地址、图像宽高和位置信息配置给视频流模块,从而视频流模块在视频流输出之前根据绑定的共享内存地址,将存储在共享内存中的图像添加到视频帧的指定位置,由于绘制和合成相互独立,图像绘制的快慢不会影响视频流的流畅度,视频流的处理也不会影响图像绘制的效率,并且,存储图像的共享内存动态分配,在不需要图像时可以被其他模块使用,其空间容量根据实际使用的情况来设定,灵活且省资源,同时,在空闲物理内存足以承载多个图像的情况下,图像的数量可以配置为多个,添加到视频帧的图像层数无限制。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种图像存储方法,其特征在于,应用于中央处理器,包括:
获取至少一个共享内存地址;
将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
2.根据权利要求1所述的方法,其特征在于,所述获取共享内存地址,包括:
根据各所述图像的图像属性信息,生成共享内存申请请求;
向图形处理器发送共享内存申请请求;
接收所述图形处理器反馈的至少一个共享内存地址,所述共享内存地址指向的共享内存的容量与对应图像的图像属性信息匹配。
3.根据权利要求1所述的方法,其特征在于,还包括:
向图形处理器发送图像合成参数,以使所述图像处理器将所述图像合成参数转发给所述视频流模块,以及所述视频流模块根据所述图像合成参数依次将各所述图像添加到所述视频流中。
4.一种内存分配方法,其特征在于,应用于图形处理器,包括:
为待写入的至少一个图像分配共享内存;
获取各所述共享内存的共享内存地址;
将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
5.根据权利要求4所述的方法,其特征在于,所述为待写入的至少一个图像分配共享内存,包括:
接收所述中央处理器发送的共享内存申请请求;
从所述共享内存申请请求中提取各所述图像的图像属性信息;
根据各所述图像的图像属性信息,确定各所述图像对应的占用空间;
根据各所述图像对应的占用空间,在内存中为各所述图像分配共享内存。
6.一种图像存储装置,其特征在于,配置于中央处理器,包括:
共享内存地址获取模块,用于获取至少一个共享内存地址;
图像绘制模块,用于将至少一个图像写入对应的共享内存地址指向的共享内存中,以使视频流模块从各所述共享内存中提取各所述图像,并添加到视频流中。
7.一种内存分配装置,其特征在于,配置于图形处理器,包括:
共享内存分配模块,用于为待写入的至少一个图像分配共享内存;
共享内存地址获取模块,用于获取各所述共享内存的共享内存地址;
共享内存地址发送模块,用于将各所述共享内存地址发送给中央处理器,以使所述中央处理器将各所述图像写入对应的共享内存中,所述共享内存用于视频流模块从中提取各所述图像,并添加到视频流中。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-3中任一所述的图像存储方法,或如权利要求4-5中任一所述的内存分配方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-3中任一所述的图像存储方法,或如权利要求4-5中任一所述的内存分配方法。
10.一种图像合成方法,其特征在于,包括:
通过中央处理器获取至少一个共享内存地址,将至少一个图像写入对应的共享内存地址指向的共享内存中;
通过视频流模块从各所述共享内存地址指向的共享内存中提取存储数据,并添加到视频流中,所述存储数据包括所述图像。
CN202110250968.XA 2021-03-08 2021-03-08 图像存储、内存分配、图像合成方法、装置、设备及介质 Pending CN112835730A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110250968.XA CN112835730A (zh) 2021-03-08 2021-03-08 图像存储、内存分配、图像合成方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110250968.XA CN112835730A (zh) 2021-03-08 2021-03-08 图像存储、内存分配、图像合成方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN112835730A true CN112835730A (zh) 2021-05-25

Family

ID=75929727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110250968.XA Pending CN112835730A (zh) 2021-03-08 2021-03-08 图像存储、内存分配、图像合成方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN112835730A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114584786A (zh) * 2022-01-20 2022-06-03 百果园技术(新加坡)有限公司 基于视频解码的内存分配方法及系统
CN115278264A (zh) * 2022-09-26 2022-11-01 杭州雄迈集成电路技术股份有限公司 一种图像放大和osd叠加编码方法和系统
CN116309763A (zh) * 2023-02-17 2023-06-23 珠海视熙科技有限公司 Tof相机深度的计算方法、装置、设备及存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114584786A (zh) * 2022-01-20 2022-06-03 百果园技术(新加坡)有限公司 基于视频解码的内存分配方法及系统
CN114584786B (zh) * 2022-01-20 2024-02-13 百果园技术(新加坡)有限公司 基于视频解码的内存分配方法及系统
CN115278264A (zh) * 2022-09-26 2022-11-01 杭州雄迈集成电路技术股份有限公司 一种图像放大和osd叠加编码方法和系统
CN115278264B (zh) * 2022-09-26 2023-02-28 杭州雄迈集成电路技术股份有限公司 一种图像放大和osd叠加编码方法和系统
CN116309763A (zh) * 2023-02-17 2023-06-23 珠海视熙科技有限公司 Tof相机深度的计算方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN112835730A (zh) 图像存储、内存分配、图像合成方法、装置、设备及介质
CN110227259B (zh) 一种数据处理的方法、装置、服务器和系统
JP4489806B2 (ja) スケーラブルシェーダアーキテクチャ
WO2022048097A1 (zh) 一种基于多显卡的单帧画面实时渲染方法
US7015915B1 (en) Programming multiple chips from a command buffer
CN103026402B (zh) 显示压缩超级切片图像
CA2113600C (en) Video processing unit
CN111737019B (zh) 一种显存资源的调度方法、装置及计算机存储介质
CN103631634A (zh) 实现图形处理器虚拟化的方法与装置
KR100864998B1 (ko) 명령 전송 제어 장치 및 명령 전송 제어 방법
US20060277437A1 (en) Command execution controlling apparatus, command execution instructing apparatus and command execution controlling method
CN116821040B (zh) 基于gpu直接存储器访问的显示加速方法、装置及介质
US20190037266A1 (en) Image receiving/reproducing device, image generating/transmitting device, display system, image receiving/reproducing method, image generating/transmitting method, and computer readable medium
US20060061578A1 (en) Information processing apparatus for efficient image processing
CN114567784B (zh) 一种用于飞腾显卡的vpu视频解码输出方法及系统
CN115665342A (zh) 图像处理方法、图像处理电路、电子设备和可读存储介质
CN114820272A (zh) 数据交互的方法、装置、存储介质及电子设备
MXPA02005310A (es) Sistema de procesamiento de datos, programa de computadora y medio de registro.
CN111752619A (zh) 图像处理方法及系统
CN114697555B (zh) 一种图像处理方法、装置、设备及存储介质
WO2023035619A1 (zh) 一种场景渲染方法、装置、设备及系统
CN115661011A (zh) 渲染方法、装置、设备和存储介质
CN111045623B (zh) 一种多gpu拼接环境下图形命令的处理方法
CN110519530B (zh) 基于硬件的画中画显示方法及装置
US7474311B2 (en) Device and method for processing video and graphics data

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