CN110267062B - 拼装视频帧的优化方法、装置及可读存储介质 - Google Patents

拼装视频帧的优化方法、装置及可读存储介质 Download PDF

Info

Publication number
CN110267062B
CN110267062B CN201910687654.9A CN201910687654A CN110267062B CN 110267062 B CN110267062 B CN 110267062B CN 201910687654 A CN201910687654 A CN 201910687654A CN 110267062 B CN110267062 B CN 110267062B
Authority
CN
China
Prior art keywords
data
assembled
effective
preset
target
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
CN201910687654.9A
Other languages
English (en)
Other versions
CN110267062A (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.)
Shenzhen TCL New Technology Co Ltd
Original Assignee
Shenzhen TCL New Technology 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 Shenzhen TCL New Technology Co Ltd filed Critical Shenzhen TCL New Technology Co Ltd
Priority to CN201910687654.9A priority Critical patent/CN110267062B/zh
Publication of CN110267062A publication Critical patent/CN110267062A/zh
Application granted granted Critical
Publication of CN110267062B publication Critical patent/CN110267062B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种拼装视频帧的优化方法,包括:接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及mdat段;根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。本发明还公开了一种拼装视频帧的优化装置、可读存储介质及系统。本发明通过应用两个缓存区域分别安置不同数据段的有效数据,使得在有效数据缓存完后,统一按顺序将两个缓存区域的有效数据复制至拼装数据进行拼装,实现了提高音视频帧的拼装效率的有益效果。

Description

拼装视频帧的优化方法、装置及可读存储介质
技术领域
本发明涉及视频帧的拼接技术领域,尤其涉及一种拼装视频帧的优化方法、调试终端、电视终端及系统。
背景技术
ATSC3.0标准中有使用MMTP协议作为传输音视频的2种方式之一(另一种是ROUTE协议)。
MMTP传输音视频的数据结构称之为MPU(media processing unit,多媒体处理单元),我们需要解开MMTP的协议头并将多个数据包(每一个数据包通常只能携带一部分的有效数据)拼装成一个完整的MPU送给播放器进行播放。
通常的拼装的设计是使用一个缓冲区,每解析出一个有效数据就填充到该缓冲区,当解析完每一个MPU的最后一个数据之后(MMTP的数据包头有 FT字段可以判断当前包是属于某个完整帧的第一个包还是最后一个包),将缓冲区的内容排序,然后发送给播放器。这样的设计方式有一个问题,因为实际码流中,数据包来的顺序并非完全按照我们MPU的数据顺序来的(MPU数据可以分成三段,ftyp段,moof段,mdat段,正常MPU格式是按此顺序排列),实际码流中这三段中的moof段是在mdat段之后来的,所以使用单个缓冲区拼装数据我们需要将数据插入到前面,而插入数据需要进行额外的内存分配和拷贝,是一个耗时操作,降低了拼装效率。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种拼装视频帧的优化方法、装置、可读存储介质及系统,旨在解决现有技术的音视频数据拼接时,使用一个缓冲区缓存解析的有效数据并将有效数据拼接为完整数据,如此操作需要进行额外的内存分配及拷贝操作,影响了音视频拼接效率的技术问题。
为实现上述目的,本发明提供一种拼装视频帧的优化方法,包括以下内容:
接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及mdat段;
根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;
在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。
优选地,所述根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域的步骤,还包括:
若所述有效数据所属的数据段为ftyp段或moov段,则将所述有效数据缓存至第一预设数据缓存区域;
若所述有效数据所属的数据段为mdat段,则将所述有效数据缓存至第二预设数据缓存区域。
优选地,所述在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据的步骤,还包括:
清空所述预设数据缓存区域缓存的有效数据。
优选地,所述在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据的步骤,还包括:
确认所述有效数据所在的目标待拼装数据是否解析完成;
在确认所述目标待拼装数据解析完成时,确认所述有效数据解析完成。
优选地,所述确认所述有效数据所在的目标待拼装数据是否解析完成的步骤,还包括:
读取所述目标待拼装数据中数据包的目标属性信息,以所述目标属性信息确定所述目标待拼装数据是否接收完成;
在确认所述目标属性信息为预设信息时,确认所述目标待拼装数据接收完成。
优选地,所述拼装视频帧的优化方法,还包括:
在接收到数据拼装指令时,接收所述数据拼装指令对应的目标待拼装数据;
为所述目标待拼装数据构建预设数据缓存区域,所述预设数据缓存区域包括第一预设数据缓存区域及第二预设数据缓存区域。
优选地,所述为所述目标待拼装数据构建预设数据缓存区域的步骤,还包括:
确认所述目标待拼装数据的数据量;
根据已确认的所述数据量构建所述预设数据缓存区域。
此外,为实现上述目的,本发明还提供一种拼装视频帧的优化装置,所述拼装视频帧的优化装置包括:存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的拼装视频帧的优化程序,所述拼装视频帧的优化程序被处理器执行时实现如上所述的拼装视频帧的优化方法的步骤。
本发明还提供一种可读存储介质,所述可读存储介质包括:存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的拼装视频帧的优化程序,所述拼装视频帧的优化程序被处理器执行时实现如上所述的拼装视频帧的优化方法的步骤。
本发明还提供一种拼装视频帧的优化系统,所述拼装视频帧的优化系统在执行时实现如上所述的调试终端或如上所述的电视终端的步骤。
本发明提出的一种拼装视频帧的优化方法,在当前有数据拼装需求时,接收待拼装数据的数据包,并解析所述数据包,如此,接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括 ftyp段、moov段及mdat段;根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。本发明通过应用两个缓存区域分别安置不同数据段的有效数据,使得在有效数据缓存完后,统一按顺序将两个缓存区域的有效数据复制至拼装数据进行拼装,如此,将有效数据的缓存及拼装分为两个步骤进行,避免分配内存进行数据顺序排列也减少了出错效率,进而实现了提高音视频帧的拼装效率的有益效果。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端\装置结构示意图;
图2为本发明拼装视频帧的优化方法第一实施例的流程示意图;
图3为本发明拼装视频帧的优化方法第二实施例的流程示意图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及 mdat段;根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。
由于现有技术的音视频数据拼接时,使用一个缓冲区缓存解析的有效数据并将有效数据拼接为完整数据,如此操作需要进行额外的内存分配及拷贝操作,影响了音视频拼接效率的技术问题。
本发明提供一种解决方案,通过应用两个缓存区域分别安置不同数据段的有效数据,使得在有效数据缓存完后,统一按顺序将两个缓存区域的有效数据复制至拼装数据进行拼装,如此,将有效数据的缓存及拼装分为两个步骤进行,避免分配内存进行数据顺序排列也减少了出错效率,进而实现了提高音视频帧的拼装效率的有益效果。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器,便携计算机等具有多媒体播放功能的可移动式或不可移动式终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI 接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及拼装视频帧的优化应用程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的拼装视频帧的优化应用程序,并执行以下操作:
接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及mdat段;
根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;
在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。
进一步地,处理器1001可以调用存储器1005中存储的拼装视频帧的优化应用程序,还执行以下操作:
若所述有效数据所属的数据段为ftyp段或moov段,则将所述有效数据缓存至第一预设数据缓存区域;
若所述有效数据所属的数据段为mdat段,则将所述有效数据缓存至第二预设数据缓存区域。
进一步地,处理器1001可以调用存储器1005中存储的拼装视频帧的优化应用程序,还执行以下操作:
清空所述预设数据缓存区域缓存的有效数据。
进一步地,处理器1001可以调用存储器1005中存储的拼装视频帧的优化应用程序,还执行以下操作:
确认所述有效数据所在的目标待拼装数据是否解析完成;
在确认所述目标待拼装数据解析完成时,确认所述有效数据解析完成。
进一步地,处理器1001可以调用存储器1005中存储的拼装视频帧的优化应用程序,还执行以下操作:
读取所述目标待拼装数据中数据包的目标属性信息,以所述目标属性信息确定所述目标待拼装数据是否接收完成;
在确认所述目标属性信息为预设信息时,确认所述目标待拼装数据接收完成。
进一步地,处理器1001可以调用存储器1005中存储的拼装视频帧的优化应用程序,还执行以下操作:
在接收到数据拼装指令时,接收所述数据拼装指令对应的目标待拼装数据;
为所述目标待拼装数据构建预设数据缓存区域,所述预设数据缓存区域包括第一预设数据缓存区域及第二预设数据缓存区域。
进一步地,处理器1001可以调用存储器1005中存储的拼装视频帧的优化应用程序,还执行以下操作:
确认所述目标待拼装数据的数据量;
根据已确认的所述数据量构建所述预设数据缓存区域。
参照图2,图2为本发明拼装视频帧的优化方法第一实施例的流程示意图,所述拼装视频帧的优化方法包括:
步骤S10,接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及mdat段;
基于当前的音视频播放需求,接收当前需拼装并播放的目标待拼装数据,所述目标待拼装数据可能来自连接的网络传输,基于网络传输的数据传输状态,其音视频拼接的操作以MPU为拼接单位,因此,其目标待拼装数据的结构定义为MPU(media processingunit,多媒体处理单元),如此,根据传输到的目标待拼装数据,将接收到的目标待拼装数据进行数据解析,以将所述目标待拼装数据解析为可播放的有效数据并拼装为完整的音频帧后进行播放操作。另外,在传输目标待拼装数据时,其单个目标待拼装数据以数据包的形式进行传输,即,一个目标待拼装数据包括多个数据包,因此,在解析所述目标待拼装数据时,通过解析所述目标待拼装数据的数据包得到有效数据,进一步的,根据自所述目标待拼装数据中数据包解析到的有效数据,确认所述有效数据所述的数据段,在实际应用中,经由数据包解析出来的有效数据包括ftyp段、moov段及mdat段的数据,而不同数据段的数据所表示的对应有效数据在拼装是的位置也不一样,其数据段的拼装位置前后顺序为ftyp、moov、mdat。而确认有效数据所属的数据段的方式,可通过读取所述有效数据的数据内容决定。
步骤S20,根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;
在接收到目标待拼装数据的数据包解析到的有效数据后,确认所述有效数据所属的数据段,根据已确认的所述所属数据段,将所述有效数据缓存至对应的预设数据缓存区域,基于已设定的预设数据缓存区域,其不同的数据缓存区域分别用来承载不同数据段的有效数据,在实际应用中,考虑到数据拼装的效率,将预设数据缓存区域分为两个,其一定义为第一预设数据缓存区域(head buffer),用来缓存ftyp、moov段的有效数据,其二定义为第二预设数据缓存区域(data buffer),用来缓存mdat段数据。因此,基于已确认的解析到的有效数据所述的数据段,确认缓存的预设数据缓存区域,即所述根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域的步骤,还包括:
若所述有效数据所属的数据段为ftyp段或moov段,则将所述有效数据缓存至第一预设数据缓存区域;
若所述有效数据所属的数据段为mdat段,则将所述有效数据缓存至第二预设数据缓存区域。
根据解析到的有效数据,确认所述有效数据所属的数据段,若所述有效数据所属的数据段为ftyp段或者moov段时,将解析到的所述有效数据缓存至第一预设数据缓存区域(head buffer);若所述有效数据所属的数据段为mdat 端,则将所述有效数据缓存至第二预设数据缓存区域(data buffer)。
步骤S30,在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。
基于当前有效数据的解析操作,将解析到的有效数据根据所属的数据段缓存至对应的预设数据缓存区域。在确认当前的有效数据解析完成后,确认当前有效数据的缓存操作结束,考虑到有效数据的拼装,将缓存至预设数据缓存区域的有效数据复制至对应的数据拼装数据,使得有效数据在数据拼装区域进行拼装,以将有效数据拼装为完整数据拼装后的有效数据。进一步的,在将预设数据缓存区域的有效数据复制至数据拼装区域时,可根据预设数据缓存区域中缓存的有效数据的所属数据段,以先后顺序分别进行复制操作,例如,第一预设数据缓存区域缓存ftyp段、moov段数据,则第一预设数据缓存区域先复制至数据拼装区域;其复制操作的先后顺序,可根据当前的具体拼装操作设定。另外,考虑到预设数据缓存区域的内存,在将有效数据赋值至拼装区域后,还需清空所述预设数据缓存区域中缓存的有效数据,以空置所述预设数据存储区域的内容,即所述在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据的步骤,还包括:
清空所述预设数据缓存区域缓存的有效数据。
其中,在确认当前有效数据解析完成,并将解析完成的有效数据自预设数据缓存区域复制至数据拼装区域时,其确认当前有效数据解析完成的确认方式,需通过解析操作确认当前的有效数据是否解析完成,如此,所述在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据的步骤,还包括:
确认所述有效数据所在的目标待拼装数据是否解析完成;
在确认所述目标待拼装数据解析完成时,确认所述有效数据解析完成。根据当前解析的目标待拼装数据,确认所述目标待拼装数据是否解析完成,由于所述目标待拼装数据在传输过程中,以数据包的形式进行传输操作,因此,在解析所述目标待拼装数据时,以解析数据包的形式解析所述目标待拼装数据,因此,确认所述目标待拼装数据的数据包解析完成时,确认所述目标待拼装数据解析完成,即基于当前的目标待拼装数据的有效数据解析完成。进一步的,由于目标待拼装数据的以数据包形式为单位传输,即接收到的所述目标待拼装数据的形式为数据包,在确认当前的数据包是否解析完成的确认过程中,还需确认当前数据包所在的目标待拼接数据是否传输完成,如此,基于当前有效数据所在目标待拼接数据,所述确认所述有效数据所在的目标待拼装数据是否解析完成的步骤,还包括:
读取所述目标待拼装数据中数据包的目标属性信息,以所述目标属性信息确定所述目标待拼装数据是否接收完成;
在确认所述目标属性信息为预设信息时,确认所述目标待拼装数据接收完成。
根据接收到的目标待拼装数据的数据包,读取所述数据包的属性信息,根据所述属性信息确认所述目标待拼装数据的数据包是否传输完成,在实际应用中,目标待拼接数据以MPU为拼接单位,即一个目标待拼接数据即为一个MPU,而MPU中包括多个数据包,因此,MPU在以数据包为传输单位进行传输时,读取所述数据包的属性信息已确认当前MPU是否传输完成,一般来说,确认MPU是否传输完成可通过确认当前的数据包是否为MPU的最终数据包,而最终数据包的属性信息中已标记所述数据包的顺序,如此,在确认目标数据包的目标属性信息为预设信息时,即可确认所述目标待拼接数据传输完成,而数据包在接收到之后立即进行数据解析操作,因此,在当前解析到的数据包为目标待拼接数据(MPU)的最终数据包时,解析完成所述数据包后,即可确认当前有效数据解析完成。
本实施例中,通过应用两个缓存区域分别安置不同数据段的有效数据,使得在有效数据缓存完后,统一按顺序将两个缓存区域的有效数据复制至拼装数据进行拼装,如此,将有效数据的缓存及拼装分为两个步骤进行,避免分配内存进行数据顺序排列也减少了出错效率,进而实现了提高音视频帧的拼装效率的有益效果。
进一步的,参照图3,图3为本发明拼装视频帧的优化方法第二实施例的流程示意图,基于上述所示的第一实施例,所述拼装视频帧的优化方法,还包括:
步骤S40,在接收到数据拼装指令时,接收所述数据拼装指令对应的目标待拼装数据;
步骤S50,为所述目标待拼装数据构建预设数据缓存区域,所述预设数据缓存区域包括第一预设数据缓存区域及第二预设数据缓存区域。
本实施例中,基于当前的数据播放需求,接收传输来的待拼装数据,在实际应用中,一般以播放音视频的控制指令确认当前需进行数据拼装,如此,可将音视频的播放指令确认为数据拼装指令。基于此种情况,在接收到数据拼装指令时,接收所述数据拼装指令对应的目标待拼装数据,目标待拼装数据定义为MPU,即当前的拼装指令以MPU为拼装单位,在接收到基于当前数据拼装指令对应的目标待拼装数据时,为提高数据拼装效率,为接收到的目标待拼装数据构建预设数据缓存区域,由于预设数据缓存区域根据解析的有效数据所属数据段的不同分为两个,为最大限度的提高内存使用效率,需控制所述预设数据缓存区域的内存量,而所述内存量与接收到的所述待拼装数据的数量相关,因此,所述为所述目标待拼装数据构建预设数据缓存区域的步骤,还包括:
确认所述目标待拼装数据的数据量;
根据已确认的所述数据量构建所述预设数据缓存区域。
在接收到目标待拼装数据时,读取所述目标待拼装数据的数据信息,以所述数据信息确认所述目标待拼装数据的数据量,进而根据所述数据量的大小确定所述目标待拼装数据解析后有效数据的数据段的数据量,根据已确认的数据段的数据量构建缓存所述目标待拼接数据解析到的有效数据的预设数据缓存区域,其预设数据缓存区域的内存大小即为已确认的数据段的数据量。考虑到数据量的缓存,一般来说,预设数据缓存区域的内存需大于已确认的数据段的数据量,以避免有效数据存储内存不够,在实际应用中,构建所述预设数据缓存区域的内存初始大小可定义为2K。
此外,本发明实施例还提出一种可读存储介质,所述可读存储介质上存储有拼装视频帧的优化程序,所述拼装视频帧的优化程序被处理器执行时实现如下操作:
接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及mdat段;
根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域;
在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据复制至数据拼装区域,以将所述有效数据拼装为完整数据。
进一步地,所述拼装视频帧的优化程序被处理器执行时还实现如下操作:
若所述有效数据所属的数据段为ftyp段或moov段,则将所述有效数据缓存至第一预设数据缓存区域;
若所述有效数据所属的数据段为mdat段,则将所述有效数据缓存至第二预设数据缓存区域。
进一步地,所述拼装视频帧的优化程序被处理器执行时还实现如下操作:
清空所述预设数据缓存区域缓存的有效数据。
进一步地,所述拼装视频帧的优化程序被处理器执行时还实现如下操作:
确认所述有效数据所在的目标待拼装数据是否解析完成;
在确认所述目标待拼装数据解析完成时,确认所述有效数据解析完成。
进一步地,所述拼装视频帧的优化程序被处理器执行时还实现如下操作:
读取所述目标待拼装数据中数据包的目标属性信息,以所述目标属性信息确定所述目标待拼装数据是否接收完成;
在确认所述目标属性信息为预设信息时,确认所述目标待拼装数据接收完成。
进一步地,所述拼装视频帧的优化程序被处理器执行时还实现如下操作:
在接收到数据拼装指令时,接收所述数据拼装指令对应的目标待拼装数据;
为所述目标待拼装数据构建预设数据缓存区域,所述预设数据缓存区域包括第一预设数据缓存区域及第二预设数据缓存区域。
进一步地,所述拼装视频帧的优化程序被处理器执行时还实现如下操作:
确认所述目标待拼装数据的数据量;
根据已确认的所述数据量构建所述预设数据缓存区域。
本发明还提供一种拼装视频帧的优化系统,所述拼装视频帧的优化系统在执行时,实现如上所述的拼装视频帧的优化方法实施例的内容。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、药品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、药品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、药品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种拼装视频帧的优化方法,其特征在于,所述拼装视频帧的优化方法包括以下步骤:
接收目标待拼装数据解析的有效数据,确认所述有效数据所属的数据段,其中,所述数据段包括ftyp段、moov段及mdat段;
根据所述有效数据所属的数据段,将所述有效数据缓存至对应的预设数据缓存区域,其中,若所述有效数据所属的数据段为ftyp段或moov段,则将所述有效数据缓存至第一预设数据缓存区域,若所述有效数据所属的数据段为mdat段,则将所述有效数据缓存至第二预设数据缓存区域;
在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据,以所述有效数据所属数据段先后将所述有效数据复制至数据拼装区域,并将所述有效数据拼装为完整数据。
2.如权利要求1所述的拼装视频帧的优化方法,其特征在于,所述在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据,以所述有效数据所属数据段先后将所述有效数据复制至数据拼装区域的步骤之后,还包括:
清空所述预设数据缓存区域缓存的有效数据。
3.如权利要求1所述的拼装视频帧的优化方法,其特征在于,所述在确认所述有效数据解析完成后,将缓存在所述预设数据缓存区域的有效数据,以所述有效数据所属数据段先后将所述有效数据复制至数据拼装区域的步骤之后,还包括:
确认所述有效数据所在的目标待拼装数据是否解析完成;
在确认所述目标待拼装数据解析完成时,确认所述有效数据解析完成。
4.如权利要求3所述的拼装视频帧的优化方法,其特征在于,所述确认所述有效数据所在的目标待拼装数据是否解析完成的步骤,还包括:
读取所述目标待拼装数据中数据包的目标属性信息,以所述目标属性信息确定所述目标待拼装数据是否接收完成;
在确认所述目标属性信息为预设信息时,确认所述目标待拼装数据接收完成。
5.如权利要求1至4任一项所述的拼装视频帧的优化方法,其特征在于,所述拼装视频帧的优化方法,还包括:
在接收到数据拼装指令时,接收所述数据拼装指令对应的目标待拼装数据;
为所述目标待拼装数据构建预设数据缓存区域,所述预设数据缓存区域包括第一预设数据缓存区域及第二预设数据缓存区域。
6.如权利要求5所述的拼装视频帧的优化方法,其特征在于,所述为所述目标待拼装数据构建预设数据缓存区域的步骤,还包括:
确认所述目标待拼装数据的数据量;
根据已确认的所述数据量构建所述预设数据缓存区域。
7.一种拼装视频帧的优化装置,其特征在于,所述拼装视频帧的优化装置包括:存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的拼装视频帧的优化程序,所述拼装视频帧的优化程序被处理器执行时实现如权利要求1至6任一项所述的拼装视频帧的优化方法的步骤。
8.一种可读存储介质,其特征在于,所述可读存储介质包括:存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的拼装视频帧的优化程序,所述拼装视频帧的优化程序被处理器执行时实现如权利要求1至6任一项所述的拼装视频帧的优化方法的步骤。
CN201910687654.9A 2019-07-26 2019-07-26 拼装视频帧的优化方法、装置及可读存储介质 Active CN110267062B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910687654.9A CN110267062B (zh) 2019-07-26 2019-07-26 拼装视频帧的优化方法、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910687654.9A CN110267062B (zh) 2019-07-26 2019-07-26 拼装视频帧的优化方法、装置及可读存储介质

Publications (2)

Publication Number Publication Date
CN110267062A CN110267062A (zh) 2019-09-20
CN110267062B true CN110267062B (zh) 2022-07-08

Family

ID=67912173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910687654.9A Active CN110267062B (zh) 2019-07-26 2019-07-26 拼装视频帧的优化方法、装置及可读存储介质

Country Status (1)

Country Link
CN (1) CN110267062B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147931A (zh) * 2019-12-31 2020-05-12 深圳Tcl新技术有限公司 Tlv数据包的传输方法、装置、设备及可读存储介质
CN112383819B (zh) * 2020-11-06 2022-03-11 平安科技(深圳)有限公司 视频帧提取方法及相关设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002368810A (ja) * 2001-04-03 2002-12-20 Matsushita Electric Ind Co Ltd ショートセル多重装置
CN101415069A (zh) * 2008-10-22 2009-04-22 清华大学 一种服务器及其在线播放视频的发送方法
CN103796047A (zh) * 2014-01-23 2014-05-14 福建星网锐捷安防科技有限公司 一种视音频数据的封装方法及封装装置
CN104168439A (zh) * 2013-05-17 2014-11-26 腾讯科技(深圳)有限公司 一种视频编码方法和装置
CN105282053A (zh) * 2015-09-21 2016-01-27 盛科网络(苏州)有限公司 避免网络交换芯片输出队头阻塞的方法及系统
CN105357148A (zh) * 2015-10-15 2016-02-24 盛科网络(苏州)有限公司 避免网络交换芯片输出报文乱序的方法及系统
CN106304851A (zh) * 2015-04-23 2017-01-04 Lg电子株式会社 发送广播信号的装置、接收广播信号的装置、发送广播信号的方法和接收广播信号的方法
CN107872716A (zh) * 2016-09-23 2018-04-03 杭州海康威视数字技术股份有限公司 一种后置封装的流式数据解析方法、装置及电子设备
CN109076025A (zh) * 2014-03-31 2018-12-21 三星电子株式会社 运动图像专家组媒体传输协议去封装缓冲器的信令和操作
CN109195012A (zh) * 2018-11-07 2019-01-11 成都索贝数码科技股份有限公司 一种基于对象存储分片转码/合成闪拼成mp4文件的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011132883A2 (ko) * 2010-04-19 2011-10-27 엘지전자 주식회사 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
US10650452B2 (en) * 2012-03-27 2020-05-12 Ip Reservoir, Llc Offload processing of data packets

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002368810A (ja) * 2001-04-03 2002-12-20 Matsushita Electric Ind Co Ltd ショートセル多重装置
CN101415069A (zh) * 2008-10-22 2009-04-22 清华大学 一种服务器及其在线播放视频的发送方法
CN104168439A (zh) * 2013-05-17 2014-11-26 腾讯科技(深圳)有限公司 一种视频编码方法和装置
CN103796047A (zh) * 2014-01-23 2014-05-14 福建星网锐捷安防科技有限公司 一种视音频数据的封装方法及封装装置
CN109076025A (zh) * 2014-03-31 2018-12-21 三星电子株式会社 运动图像专家组媒体传输协议去封装缓冲器的信令和操作
CN106304851A (zh) * 2015-04-23 2017-01-04 Lg电子株式会社 发送广播信号的装置、接收广播信号的装置、发送广播信号的方法和接收广播信号的方法
CN105282053A (zh) * 2015-09-21 2016-01-27 盛科网络(苏州)有限公司 避免网络交换芯片输出队头阻塞的方法及系统
CN105357148A (zh) * 2015-10-15 2016-02-24 盛科网络(苏州)有限公司 避免网络交换芯片输出报文乱序的方法及系统
CN107872716A (zh) * 2016-09-23 2018-04-03 杭州海康威视数字技术股份有限公司 一种后置封装的流式数据解析方法、装置及电子设备
CN109195012A (zh) * 2018-11-07 2019-01-11 成都索贝数码科技股份有限公司 一种基于对象存储分片转码/合成闪拼成mp4文件的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Delivery of ATSC 3.0 Services With MPEG Media Transport Standard Considering Redistribution in MPEG-2 TS Format;Kyungmo Park等;《IEEE Transactions on Broadcasting》;20160129;第62卷(第1期);338-351 *
数字音视频码流的分割及合并技术研究;翁超;《中国优秀硕士学位论文全文数据库(信息科技辑)》;20101115;全文 *

Also Published As

Publication number Publication date
CN110267062A (zh) 2019-09-20

Similar Documents

Publication Publication Date Title
KR101654957B1 (ko) 모바일 애플리케이션의 디바이스 의존적인 온 디맨드 컴파일링 및 설치 기법
KR101120796B1 (ko) 세션 기술 메시지 확장
CN111831538B (zh) 调试方法、装置以及存储介质
CN107404418B (zh) 互联网产品测试方法、装置、设备及存储介质
CN111177617A (zh) 基于运维管理系统的web直接运维方法、装置及电子设备
CN101123676A (zh) 显示设备、图像处理设备及用于升级其控制程序的方法
CN111309279A (zh) 多屏互动显示方法及装置
CN104539977A (zh) 直播预览方法及装置
WO2011038564A1 (zh) 网络应用中移动终端屏幕显示的自适应方法及系统
CN110267062B (zh) 拼装视频帧的优化方法、装置及可读存储介质
CN101795392A (zh) 下载应用数据的方法、数字电视接收终端及系统
CN110798445B (zh) 公共网关接口测试方法、装置、计算机设备及存储介质
US20160277306A1 (en) Data Stream Identifying Method and Device
CN104918105A (zh) 媒体文件的多屏播放方法、设备及系统
CN105786441A (zh) 一种音频处理的方法、服务器、用户设备及系统
US20120315931A1 (en) Short message processing method and apparatus
CN108512889B (zh) 一种基于http的应用响应推送方法及代理服务器
CN117041652A (zh) 基于浏览器的视频录制方法及装置、电子设备、存储介质
CN108965295B (zh) 一种文件压缩合并方法及相关装置
CN112052377A (zh) 资源推荐方法、装置、服务器和存储介质
KR100843725B1 (ko) 웹페이지 공유 시스템 및 그 방법
CN114138717A (zh) 一种富文本信息的发布方法及相关装置
CN112905464A (zh) 应用运行环境数据处理方法及装置
CN109117430B (zh) 一种检索系统及其方法
KR20160140047A (ko) 클라우드 스트리밍 서비스 제공을 위한 어플리케이션 캐싱 방법 및 이를 위한 장치

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