CN111741246B - 一种视频存储方法、装置、soc系统、介质 - Google Patents

一种视频存储方法、装置、soc系统、介质 Download PDF

Info

Publication number
CN111741246B
CN111741246B CN202010540164.9A CN202010540164A CN111741246B CN 111741246 B CN111741246 B CN 111741246B CN 202010540164 A CN202010540164 A CN 202010540164A CN 111741246 B CN111741246 B CN 111741246B
Authority
CN
China
Prior art keywords
stored
video
video data
storage space
application request
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
Application number
CN202010540164.9A
Other languages
English (en)
Other versions
CN111741246A (zh
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.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry 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 Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN202010540164.9A priority Critical patent/CN111741246B/zh
Publication of CN111741246A publication Critical patent/CN111741246A/zh
Priority to PCT/CN2021/077020 priority patent/WO2021248936A1/zh
Priority to US18/008,381 priority patent/US20230199143A1/en
Application granted granted Critical
Publication of CN111741246B publication Critical patent/CN111741246B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/781On-chip cache; Off-chip memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/67Circuits for processing colour signals for matrixing
    • 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

Abstract

本申请公开了一种视频存储方法、装置、SOC系统、介质,该方法包括:根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求;接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应;将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。本申请中在视频存储的过程中,先根据待存储视频信息以及待写入DDR的占用情况进行存储空间的申请,再将待存储视频存储到申请的空间中,这样可以避免存储空间的浪费,且在不需要进行视频存储时,SOC系统上的存储资源便可以用于支持其他功能的运行,以保证系统上其他功能的正常运行,提高SOC系统的性能。

Description

一种视频存储方法、装置、SOC系统、介质
技术领域
本申请涉及数据存储技术领域,特别涉及一种视频存储方法、装置、SOC系统、介质。
背景技术
传统的集成视频压缩功能的SOC(System on Chip,片上系统)系统中,会预先在对应的片外DDR(Double Data Rate,双倍速率同步动态随机存储器)中分配地址连续的空间来存储源视频数据或压缩后视频数据,这样的存储空间在SOC系统关闭视频功能时,是无法释放的,这对于内存资源紧张的SOC系统而言,会影响SOC系统功能的运行。此外SOC系统上的视频存储空间需要用于不同的分辨率场景,为保险起见需要满足最大分辨率(如1920x1024)需求,所以一般会分配比较大的存储空间,但是如果在SOC系统的应用中,待存储视频的分辨率较小,如640x480,则该部分DDR空间中会有很大一部分被浪费掉,造成存储资源的浪费。
发明内容
有鉴于此,本申请的目的在于提供一种视频存储方法、装置、SOC系统、介质,能够避免SOC系统上的存储资源浪费,且保证SOC系统功能的正常运行。其具体方案如下:
第一方面,本申请公开了一种视频存储方法,应用于SOC系统,包括:
根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求;
接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应;
将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
可选地,所述根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求,包括:
当所述待存储视频数据为源视频数据时,根据所述待存储视频的分辨率、所述待存储视频的帧数以及目标DDR占用信息,向所述目标DDR发送存储空间申请请求;
当所述待存储视频数据为压缩后视频数据时,根据所述待存储视频的分辨率、所述待存储视频的帧数、压缩模式配置以及目标DDR占用信息,向所述目标DDR发送存储空间申请请求。
可选地,所述向所述目标DDR发送存储空间申请请求,包括:
当所述待存储视频数据为源视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率和帧数确定;
相应地,所述将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下,包括:
通过本地CPU将与所述存储空间申请请求对应的起始地址、所述待存储视频数据的帧数以及所述待存储视频数据的分辨率发送到本地源视频数据写入控制模块;
通过本地源视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
可选地,所述向所述目标DDR发送存储空间申请请求,包括:
当所述待存储视频数据为压缩后视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率、所述待存储视频数据的帧数以及压缩模式配置确定;
相应地,所述将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下,包括:
通过本地CPU将与所述存储空间申请请求对应的起始地址、所述待存储视频数据的帧数发送到本地压缩视频数据写入控制模块;
通过本地压缩视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
可选地,所述通过本地CPU向所述目标DDR发送存储空间申请请求之前,还包括:
通过本地CPU从本地显卡中读取所述待存储视频数据的分辨率;
或,通过本地CPU从本地分辨率检测模块中读取所述待存储视频数据的分辨率。
可选地,所述通过本地源视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中之前,还包括:
通过本地色彩空间转换模块对所述待存储视频数据进行色彩空间转换,得到转换后待存储视频数据。
可选地,所述视频存储方法,还包括:
若接收到视频功能关闭指令,则关闭本地视频功能;
停止向所述目标DDR申请存储空间,以便本地调用所述目标DDR以支持正处于运行状态的应用程序。
第二方面,本申请公开了一种视频存储装置,应用于SOC系统,包括:
请求发送模块,用于根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求;
信息接收模块,用于接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应;
数据存储模块,用于将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
第三方面,本申请公开了一种SOC系统,包括:
存储器和处理器;
其中,所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以实现前述公开的视频存储方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的视频存储方法。
可见,本申请先根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求,并接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应,然后将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。本申请中在视频存储的过程中,先根据待存储视频信息以及待写入DDR的占用情况进行存储空间的申请,再将待存储视频存储到申请的空间中,这样可以避免存储空间的浪费,且在不需要进行视频存储时,SOC系统上的存储资源便可以用于支持其他功能的运行,以保证系统上其他功能的正常运行,且提高了SOC系统的性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种视频存储方法流程图;
图2为本申请公开的一种视频存储框图;
图3为本申请公开的一种具体的视频存储方法流程图;
图4为本申请公开的一种压缩模式配置示意图;
图5为本申请公开的一种视频存储装置结构示意图;
图6为本申请公开的一种SOC系统结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,集成视频压缩功能的SOC系统中,会预先在对应的片外DDR中分配地址连续的空间来存储源视频数据或压缩后视频数据,这样预先进行存储空间的分配会导致视频数据存储失去灵活性,造成存储资源的浪费以及影响SOC系统功能的正常运行等。有鉴于此,本申请提出了一种视频存储方法,能够避免SOC系统上的存储资源浪费,且保证SOC系统功能的正常运行。
参见图1所示,本申请实施例公开了一种视频存储方法,应用于SOC系统,该方法包括:
步骤S11:根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求。
在具体的实施过程中,需要先根据待存储视频信息和目标DDR占用信息向所述目标DDR发送存储空间申请请求,其中,所述目标DDR为本地对应的、可用于写入本地待存储数据的DDR,在待存储视频数据为源视频数据时,所述待存储视频信息包括待存储视频的分辨率、帧数,在待存储视频数据为压缩后视频数据时,所述待存储视频信息包括待存储视频的分辨率、帧数、压缩模式配置。所述存储空间申请请求中可以包括本地要申请的存储空间的起始地址、待存储视频的分辨率以及帧数,其中,所述起始地址可以根据所述目标DDR占用信息确定。
步骤S12:接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应。
在发送所述存储空间申请请求之后,如果所述存储空间申请请求对应的存储空间分配成功,则所述目标DDR会返回相应的响应,所以本地需要接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应。如果分配不成功,则需要申请新的地址空间。
步骤S13:将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
在接收到所述存储空间分配响应之后,便可以将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
可见,本申请先根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求,并接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应,然后将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。本申请中在视频存储的过程中,先根据待存储视频信息以及待写入DDR的占用情况进行存储空间的申请,再将待存储视频存储到申请的空间中,这样可以避免存储空间的浪费,且在不需要进行视频存储时,SOC系统上的存储资源便可以用于支持其他功能的运行,以保证系统上其他功能的正常运行,且提高了SOC系统的性能。
参见图2所示,本申请实施例公开了一种具体的视频存储框图,包括:显卡、色彩空间转换模块、DDR、源视频数据写入空间模块、压缩视频数据写入控制模块、地址产生模块、压缩IP(也即IP核,Intellectual Property core,知识产权核)以及CPU,还可以包括分辨率检测模块。
结合图2所示的框架对本申请提供的视频存储方法进行说明。参见图3所示,本申请实施例公开了一种具体的视频存储方法,应用于SOC系统,该方法包括:
步骤S21:当所述待存储视频数据为源视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率和帧数确定。
在具体的实施过程中,可以先向所述目标DDR发送存储空间申请请求。也就是通过本地CPU向所述目标DDR发送存储空间申请请求。具体的是通过本地CPU上运行的相应软件向所述目标DDR发送存储空间申请请求。
在具体的实施过程中,当所述待存储视频数据为源视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率和帧数确定,申请的存储空间的起始地址可以根据所述目标DDR占用情况确定。
步骤S22:通过本地CPU接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应。
可以理解的是,在发送所述存储空间申请请求之后,还需要通过本地CPU接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应。
步骤S23:通过本地CPU将与所述存储空间申请请求对应的起始地址、所述待存储视频数据的帧数以及所述待存储视频数据的分辨率发送到本地源视频数据写入控制模块。
在接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应之后,本地CPU先将相关信息发送给本地源视频数据写入控制模块,以便本地源视频数据写入控制模块根据接收到的相关信息将待存储视频数据写入到目标DDR中。
在具体的实施过程中,因为视频是连续输出的,存储空间地址信息也是连续下发的,故可在本地源视频数据写入控制模块中设置3个FIFO(First InputFirst Output,先入先出队列):WR_ADDR_FIFO、WR_FRAME_NUM_FIFO、RSL_FIFO,分别存储起始地址、存储的帧数、分辨率。然后本地源视频数据写入控制模块依次读WR_ADDR_FIFO、WR_FRAME_NUM_FIFO、RSL_FIFO,便可得到一组存储空间地址信息,若用寄存器WR_ADDR,WR_FRAME_NUM,RSL表示,则第一个寄存器WR_ADDR为要写入的DDR的首地址,第二个寄存器WR_FRAME_NUM为以WR_ADDR为起始地址的DDR空间中,要写入的帧数,第三个寄存器RSL为分辨率信息。
步骤S24:通过本地源视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
在本地源视频数据写入控制模块得到所述起始地址、分辨率以及帧数之后,便可以通过本地源视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
在将源视频数据存储到所述目标DDR之前,还包括:通过本地色彩空间转换模块对所述待存储视频数据进行色彩空间转换,得到转换后待存储视频数据。将RGB数据转换成YUV数据并发送到本地源视频数据写入控制模块中。RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,是目前运用最广的颜色系统之一。YUV是一种颜色编码方法,Y表示亮度,U表示色度,V表示浓度。
具体的,通过本地源视频数据写入控制模块读取WR_ADDR,WR_FRAME_NUM,RSL三个寄存器中的信息,得到一组存储空间地址信息,将对应的待存储视频数据存储到该地址空间下,例如,读取的一组存储空间地址信息为WR_ADDR寄存器的值为0x1000_0000,WR_FRAME_NUM的值为2,即要在DDR上以0x1000_000为起始地址的空间中写入2帧的图像信息。所述分辨率用于计算写入目标DDR视频的帧数,比如以640x480分辨率为例,在本地源视频数据写入控制模块对写入目标DDR的数据进行计数wr_cnt,当wr_cnt=640x480x2时,表示写入了两帧的源视频数据。在这两帧视频存储结束之后,本地CPU又可以根据接下来需要存储的待存储视频信息以及目标DDR占用情况向所述目标DDR再次发出存储空间申请请求。直到待存储源视频数据存储完毕或目标DDR存储空间不足。
这样可以根据DDR空间的使用情况,灵活的进行存储空间申请,然后下发空间地址至本地源视频数据写入控制模块,以供数据存储使用,可以最大限度的提高DDR使用效率。同时可以在SOC系统关闭视频功能时,不申请DDR空间,将全部的DDR空间用于SOC其他的功能,提升了SOC系统的性能。
在通过本地CPU向所述目标DDR发送存储空间申请请求之前,还包括:通过本地CPU从本地显卡中读取所述待存储视频数据的分辨率;或,通过本地CPU从本地分辨率检测模块中读取所述待存储视频数据的分辨率。具体的,就是如果显卡中有寄存器存储了待存储视频数据对应的分辨率,则本地CPU可以直接从所述显卡中读取到所述待存储视频数据对应的分辨率,此时便不需要分辨率检测模块,此时过程如图2中虚线所示。如果所述显卡中没有寄存器存储了待存储视频数据对应的分辨率,需要将显卡源视频控制信息输入到分辨率检测模块,所述源视频控制信息包括Hs、Vs等行、场同步控制信息,以进行分辨率检测。
相应的,当所述待存储视频数据为压缩后视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率、所述待存储视频数据的帧数以及压缩模式配置确定。具体的,对于相同帧数以及相同分辨率的源视频数据来说,由于压缩模式配置不相同,压缩后视频数据所需要的存储空间大小也不相同,例如,对相同帧数以及相同分辨率的源视频数据来说,采用YUV420压缩模式配置的压缩后视频数据所需要的存储空间比采用YUV444压缩模式配置的压缩后视频数据所需要的存储空间小。因为对于YUV420压缩模式配置来说是每4个Y共用一组UV分量,对于YUV444压缩模式配置来说是每1个Y对应一组UV分量,其中,Y表示亮度,U表示色度,V表示浓度,所以对于YUV420压缩模式配置来说会舍弃一部分UV分量。
通过本地CPU将与所述存储空间申请请求对应的起始地址、所述待存储视频数据的帧数发送到本地压缩视频数据写入控制模块;通过本地压缩视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
在具体的实施过程中,因为视频是连续输出的,存储空间地址信息也是连续下发的,故可以在本地压缩视频数据写入控制模块内部有2个FIFO:WR_ADDR_FIFO、WR_FRAME_NUM_FIFO,分别存储起始地址、存储的帧数。然后本地压缩视频数据写入控制模块依次读WR_ADDR_FIFO、WR_FRAME_NUM_FIFO,便可以得到一组存储空间信息,若用寄存器WR_ADDR,WR_FRAME_NUL表示,则第一个寄存器WR_ADDR为要写入的DDR的起始地址,第二个寄存器WR_FRAME_NUM为以WR_ADDR为起始地址的DDR空间中要写入的视频图像帧数。
在将所述压缩后视频数据存储到目标DDR的过程中,可以先读取出一组存储空间地址信息,再将对应的压缩后视频数据存储到这组存储空间地址信息下,例如读取的一组存储空间地址信息为:WR_ADDR寄存器的值为0x7000_0000,WR_FRAME_NUM的值为3,即要在以0x7000_000为起始地址的存储空间中,写入3帧的压缩图像。在压缩图像下写入的过程中,该模块要利用压缩图像携带的帧头帧尾信息,计算已写入的图像帧数,比如JPEG格式一帧图像的帧头为0xFFD8,帧尾为0xFFD9,则检测到第三个帧尾0xFFD9时,停止写入。在这3帧视频存储结束之后,本地CPU又可以根据接下来需要存储的待存储视频信息以及目标DDR占用情况向所述目标DDR再次发出存储空间申请请求。直到待存储源视频数据存储完毕或目标DDR存储空间不足。
在将压缩后视频数据存储到目标DDR之前,还包括:从目标DDR中读取出源视频数据,并对所述源视频数据进行压缩。具体的,就是地址产生模块生成源视频数据读取地址,再由压缩IP根据所述源视频数据读取地址从所述目标DDR中读取出源视频数据,并进行压缩,将压缩后视频数据输入到所述本地压缩视频数据写入控制模块。
地址产生模块生成源视频数据读取地址的过程,包括:利用获取到的源视频数据存储的存储空间地址信息、分辨率以及压缩模式配置生成源视频数据读取地址。具体的,在地址产生模块内部设置3个FIFO:WR_ADDR_FIFO、WR_FRAME_NUM_FIFO、RSL_FIFO,分别存储起始地址、存储的帧数、分辨率。依次读取3个队列得到一组信息,在得到一帧图像的起始地址后,根据压缩模式配置,生成源视频数据读取地址。其中,压缩模式配置包括图4所示的YUV420以及YUV444两种,YUV420就是先读取16×16的Y,在再读取8×8的U,然后再读取8×8的V,然后再开始重复读取16×16的Y的步骤,YUV444就是先读取8×8的Y,在再读取8×8的U,然后再读取8×8的V,然后再开始重复读取8×8的Y的步骤。WR_ADDR_FIFO中只能读到第一帧的起始地址,如果当前地址存放的连续的多帧,则第2及以后帧的起始地址,要根据分辨率在该模块中进行计算,以生成源视频数据读取地址。例如:第2帧的起始地址为WR_ADDR+RSL_L*RSL_W,其中,RSL_L、RSL_W分别是分辨率的行和列信息,比如RSL_L=640,RSL_W=480。
步骤S25:若接收到视频功能关闭指令,则关闭本地视频功能。
在实际应用中,如果接收到视频功能关闭指令,则关闭本地视频功能。
步骤S26:停止向所述目标DDR申请存储空间,以便本地调用所述目标DDR以支持正处于运行状态的应用程序。
在关闭所述本地视频功能之后,便可以停止向所述目标DDR申请存储空间,以便本地调用所述目标DDR以支持正处于运行状态的应用程序。以保证本地运行的其他功能正常,提高SOC系统的性能。
参见图5所示,本申请实施例公开了一种视频存储装置,应用于SOC系统,包括:
请求发送模块11,用于根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求;
信息接收模块12,用于接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应;
数据存储模块13,用于将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
可见,本申请先根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求,并接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应,然后将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。本申请中在视频存储的过程中,先根据待存储视频信息以及待写入DDR的占用情况进行存储空间的申请,再将待存储视频存储到申请的空间中,这样可以避免存储空间的浪费,且在不需要进行视频存储时,SOC系统上的存储资源便可以用于支持其他功能的运行,以保证系统上其他功能的正常运行,且提高了SOC系统的性能。
进一步的,参见图6所示,本申请实施例还公开了一种SOC系统,包括:处理器21和存储器22。
其中,所述存储器22,用于存储计算机程序;所述处理器21,用于执行所述计算机程序,以实现前述实施例中公开的视频存储方法。
其中,关于上述视频存储方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述任一实施例中公开的视频存储方法。
其中,关于上述视频存储方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得一系列包含其他要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种视频存储方法、装置、SOC系统、介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.一种视频存储方法,其特征在于,应用于SOC系统,包括:
根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求;所述待存储视频信息用于确定所述存储空间申请请求对应的存储空间大小,所述目标DDR占用信息用于确定所述存储空间申请请求对应的起始地址;
接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应;若接收到视频功能关闭指令,则关闭本地视频功能;停止向所述目标DDR申请存储空间,以便本地调用所述目标DDR以支持正处于运行状态的应用程序;
将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
2.根据权利要求1所述的视频存储方法,其特征在于,所述根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求,包括:
当所述待存储视频数据为源视频数据时,根据所述待存储视频的分辨率、所述待存储视频的帧数以及目标DDR占用信息,向所述目标DDR发送存储空间申请请求;
当所述待存储视频数据为压缩后视频数据时,根据所述待存储视频的分辨率、所述待存储视频的帧数、压缩模式配置以及目标DDR占用信息,向所述目标DDR发送存储空间申请请求。
3.根据权利要求2所述的视频存储方法,其特征在于,所述向所述目标DDR发送存储空间申请请求,包括:
当所述待存储视频数据为源视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率和帧数确定;
相应地,所述将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下,包括:
通过本地CPU将与所述存储空间申请请求对应的起始地址、所述待存储视频数据的帧数以及所述待存储视频数据的分辨率发送到本地源视频数据写入控制模块;
通过本地源视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
4.根据权利要求2所述的视频存储方法,其特征在于,所述向所述目标DDR发送存储空间申请请求,包括:
当所述待存储视频数据为压缩后视频数据时,通过本地CPU向所述目标DDR发送存储空间申请请求,其中,所述存储空间申请请求中申请的存储空间大小根据所述待存储视频数据的分辨率、所述待存储视频数据的帧数以及压缩模式配置确定;
相应地,所述将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下,包括:
通过本地CPU将与所述存储空间申请请求对应的起始地址、所述待存储视频数据的帧数发送到本地压缩视频数据写入控制模块;
通过本地压缩视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中。
5.根据权利要求3所述的视频存储方法,其特征在于,所述通过本地CPU向所述目标DDR发送存储空间申请请求之前,还包括:
通过本地CPU从本地显卡中读取所述待存储视频数据的分辨率;
或,通过本地CPU从本地分辨率检测模块中读取所述待存储视频数据的分辨率。
6.根据权利要求3所述的视频存储方法,其特征在于,所述通过本地源视频数据写入控制模块将所述待存储视频数据存储到所述起始地址对应的地址空间中之前,还包括:
通过本地色彩空间转换模块对所述待存储视频数据进行色彩空间转换,得到转换后待存储视频数据。
7.一种视频存储装置,其特征在于,应用于SOC系统,包括:
请求发送模块,用于根据待存储视频信息和目标DDR占用信息,向所述目标DDR发送存储空间申请请求;所述待存储视频信息用于确定所述存储空间申请请求对应的存储空间大小,所述目标DDR占用信息用于确定所述存储空间申请请求对应的起始地址;
信息接收模块,用于接收所述目标DDR根据所述存储空间申请请求发送的存储空间分配响应;若接收到视频功能关闭指令,则关闭本地视频功能;停止向所述目标DDR申请存储空间,以便本地调用所述目标DDR以支持正处于运行状态的应用程序;
数据存储模块,用于将所述待存储视频信息对应的待存储视频数据存储到所述目标DDR中与所述存储空间申请请求对应的地址空间下。
8.一种SOC系统,其特征在于,包括:
存储器和处理器;
其中,所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以实现权利要求1至6任一项所述的视频存储方法。
9.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的视频存储方法。
CN202010540164.9A 2020-06-12 2020-06-12 一种视频存储方法、装置、soc系统、介质 Active CN111741246B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010540164.9A CN111741246B (zh) 2020-06-12 2020-06-12 一种视频存储方法、装置、soc系统、介质
PCT/CN2021/077020 WO2021248936A1 (zh) 2020-06-12 2021-02-20 一种视频存储方法、装置、soc系统、介质
US18/008,381 US20230199143A1 (en) 2020-06-12 2021-02-20 Video storage method and apparatus, and soc system and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010540164.9A CN111741246B (zh) 2020-06-12 2020-06-12 一种视频存储方法、装置、soc系统、介质

Publications (2)

Publication Number Publication Date
CN111741246A CN111741246A (zh) 2020-10-02
CN111741246B true CN111741246B (zh) 2022-07-05

Family

ID=72649162

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010540164.9A Active CN111741246B (zh) 2020-06-12 2020-06-12 一种视频存储方法、装置、soc系统、介质

Country Status (3)

Country Link
US (1) US20230199143A1 (zh)
CN (1) CN111741246B (zh)
WO (1) WO2021248936A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111741246B (zh) * 2020-06-12 2022-07-05 浪潮(北京)电子信息产业有限公司 一种视频存储方法、装置、soc系统、介质
CN113328998B (zh) * 2021-05-14 2023-02-21 维沃移动通信有限公司 影像数据传输的方法和电子设备
CN115190175B (zh) * 2022-07-18 2023-07-14 浪潮(北京)电子信息产业有限公司 连接处理方法、系统、电子设备、服务器及可读存储介质
CN115297094B (zh) * 2022-10-08 2023-02-28 苏州浪潮智能科技有限公司 视频传输控制方法、装置、设备及计算机可读存储介质
CN117082281B (zh) * 2023-10-17 2024-02-23 苏州元脑智能科技有限公司 音视频数据同步处理方法、系统、设备及介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241469B (zh) * 2007-02-05 2012-05-02 力博特公司 一种在嵌入式系统中存储、读取数据的方法及装置
JP4435251B2 (ja) * 2008-08-29 2010-03-17 株式会社東芝 映像表示装置、映像再生装置、映像表示方法および映像再生方法
KR101381595B1 (ko) * 2010-11-04 2014-04-07 한국전자통신연구원 그룹 미디어 통신을 위한 영상 통화 장치 및 그 처리 방법
CN103136105B (zh) * 2011-11-28 2017-06-09 广东新岸线计算机系统芯片有限公司 一种内存管理方法、嵌入式系统和视频数据处理系统
US9019291B2 (en) * 2013-02-25 2015-04-28 Apple Inc. Multiple quality of service (QoS) thresholds or clock gating thresholds based on memory stress level
CN105245912B (zh) * 2015-10-21 2019-05-31 东方网力科技股份有限公司 一种缓存视频数据及读取视频数据的方法及装置
US20170255565A1 (en) * 2016-03-02 2017-09-07 Intel Corporation Method and apparatus for providing a contiguously addressable memory region by remapping an address space
CN110555890B (zh) * 2018-05-30 2023-10-20 珠海全志科技股份有限公司 一种内存管理方法及系统
CN111741246B (zh) * 2020-06-12 2022-07-05 浪潮(北京)电子信息产业有限公司 一种视频存储方法、装置、soc系统、介质

Also Published As

Publication number Publication date
WO2021248936A1 (zh) 2021-12-16
US20230199143A1 (en) 2023-06-22
CN111741246A (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111741246B (zh) 一种视频存储方法、装置、soc系统、介质
CN111683251A (zh) 一种视频数据存储方法、装置和计算机可读存储介质
CN113709489A (zh) 一种视频压缩方法、装置、设备及可读存储介质
CN111918065A (zh) 一种信息压缩/解压缩方法及装置
CN115209145A (zh) 一种视频压缩方法、系统、装置及可读存储介质
CN112714357A (zh) 视频播放方法、视频播放装置、电子设备和存储介质
US10417814B2 (en) Method and apparatus for blending layers within a graphics display component
US10951870B2 (en) Digital image conversion method and apparatus, storage medium, and device
CN114339412A (zh) 视频质量增强方法、移动终端、存储介质及装置
US10249269B2 (en) System on chip devices and operating methods thereof
JP2006092217A (ja) メモリ制御方法、グラフィックプロセッサおよび情報処理装置
CN107908455B (zh) 一种浏览器页面的切换方法和切换系统
CN116364023A (zh) 基于gpu的电子墨水屏驱动方法、装置、介质及设备
CN109640090A (zh) 图片压缩方法及装置、设备和存储介质
CN110365962B (zh) 色域转换处理方法、装置以及电子设备
JPH09245164A (ja) 画像記憶装置及び画像出力装置
JP3238692B2 (ja) ソフトウェア/ハードウェア複合方式を用いたデータ処理装置及び方法
KR101937718B1 (ko) 유효 픽셀 기반의 버스 프로토콜을 이용한 영상 처리 장치 및 방법
JP6120561B2 (ja) 図形描画装置及び図形描画プログラム
CN115118922B (zh) 一种云会议中实时视频合屏插入动图的方法与装置
CN114554126B (zh) 一种基板管理控制芯片、视频数据传输方法及服务器
CN110730311B (zh) 图像处理方法、主机、单板及系统
JP2001236191A (ja) 印刷装置及び該印刷装置を備えた画像処理装置
KR20130091104A (ko) 안드로이드 플랫폼 기반 듀얼 메모리를 이용한 비디오 디코딩 장치 및 방법
CN114882132A (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