一种基于对象存储支持视音频文件内容追加的方法技术

技术编号:20657478 阅读:48 留言:0更新日期:2019-03-23 08:52
本发明专利技术公开了一种基于对象存储支持视音频文件内容追加的方法,涉及视音频处理技术领域,本发明专利技术包括S1:写入源文件,生成相应的inx文件;S2:将视音频文件和inx文件同时以追加写入的方式写入对象存储;S3:视音频文件写入完成时,删除相应的inx文件;S4:读取视音频文件时判断该视音频文件是否存在相应的inx文件,若不存在相应的inx文件则代表视音频文件已经完整写入对象存储,直接读取;若存在相应的inx文件,则根据inx文件记录的视音频文件每帧的偏移和大小读取视音频文件,本发明专利技术以数据追加的方式写入对象存储,使文件在采集过程中对用户可见,用户将可以在采集过程中读取文件并对文件进行编辑操作,由此实现了视音频文件在对象存储中支持边采边编。

A Method of Supporting Content Addition of Video and Audio Files Based on Object Storage

The invention discloses an object-based storage method for supporting content addition of video and audio files, which relates to the technical field of video and audio processing. The invention includes S1: writing source files to generate corresponding INX files; S2: writing video and audio files and INX files simultaneously to object storage in the form of additional writing; S3: deleting corresponding INX files when the video and audio files are written to completion; S4: reading; When the video and audio files are retrieved, it is judged whether there are corresponding INX files in the video and audio files. If there are no corresponding INX files, the video and audio files are written into the object storage completely and read directly. If there are corresponding INX files, the video and audio files are read according to the offset and size of each frame of the video and audio files recorded in the INX files. The present invention writes the video and audio files into the object memory by adding data. Storage makes the files visible to users during the acquisition process. Users will be able to read and edit the files during the acquisition process, thus realizing the video and audio files in object storage while mining and editing.

【技术实现步骤摘要】
一种基于对象存储支持视音频文件内容追加的方法
本专利技术涉及视音频处理
,更具体的是涉及一种基于对象存储支持视音频文件内容追加的方法。
技术介绍
伴随着中国广电事业的蓬勃发展,与此同时,节目的制作要求也越来越高,媒体内容的及时性和高效性都需要兼顾,如果不能在节目内容采集的同时进行编辑,将会降低内容传递的及时性,浪费节目制作的时间,但目前使用对象存储的方式并不能满足一边采集一边编辑的需求,存在以下弊端:1、文件在写入过程中对用户不可见目前使用对象存储时,文件在写入过程中对用户不可见,用户无法感知文件的写入进度,可能导致长时间的等待,降低内容传递的及时性,造成不必要的时间浪费;2、文件在写入过程中无法进行编辑目前使用对象存储时,用户只能读取完整文件,如果文件一直在写入过程中,那么用户将一直不能读取文件,在采集过程中的视频文件,由于一直在追加写入内容,导致无法在存储中形成完整文件,所以用户将无法在采集过程中对文件进行编辑,大幅降低文件编辑效率。
技术实现思路
本专利技术的目的在于:为了解决目前采用对象存储的方式文件在写入过程中无法进行编辑,及时性和效率较低的问题,本专利技术提供一种基于对象存储支持视音频文件内容追加的方法。本专利技术为了实现上述目的具体采用以下技术方案:一种基于对象存储支持视音频文件内容追加的方法,包括如下步骤:S1:写入源文件,并根据源文件格式生成相应的inx文件,所述inx文件记录源文件的视音频文件每帧的偏移和大小;S2:将视音频文件和inx文件同时以追加写入的方式写入对象存储;S3:视音频文件写入完成时,删除相应的inx文件;S4:读取视音频文件时判断该视音频文件是否存在相应的inx文件,若不存在相应的inx文件则代表视音频文件已经完整写入对象存储,直接读取即可;若存在相应的inx文件,则根据该inx文件记录的视音频文件每帧的偏移和大小读取视音频文件。进一步的,所述inx文件包括head部分和data部分,所述head部分用于保存源文件的medatada数据,所述medatada数据用于描述源文件的视音频编码格式、视音频流个数以及duration信息;data部分用于保存源文件中视音频文件每帧的index数据,index数据记录每一帧视音频在源文件中的偏移位置,便于读文件时找到要取的帧。进一步的,所述S2中追加写入包括如下步骤:S2.1:收到源文件http写请求,检查对象存储中的对象是否存在,若对象不存在,则返回请求失败;若对象存在,则读取对象的manifest数据;S2.2:检查写入内容所在位置是否为manifest数据描述的最后一个分片;若是,则在该分片尾写入新数据,并更新manifest数据描述此分片的大小;若不是,则创建一个新分片,在新分片中写入新数据,并在manifest中添加新分片信息;S2.3:若经过S2.2不能写完新数据,则追加新的分片,在新的分片中写入未写完的新数据,并在manifest中追加新的分片的描述信息,直至新数据全部写入;S2.4:新数据全部写入后,形成目标文件,返回http写请求结果。进一步的,所述S4中存在相应的inx文件时,读取视音频文件包括如下步骤:S4.1:收到目标文件http读请求后,检查对象存储中的对象是否存在,若对象不存在,则返回请求失败;若对象存在,读取对象的manifest数据;S4.2:计算目标文件尾所在的分片位置及分片偏移,读取数据;S4.3:返回http读请求结果。本专利技术的有益效果如下:1、本专利技术的方法在源文件写入对象存储的过程中,以数据追加的方式写入对象存储,使文件在采集过程中对用户可见,用户将可以在采集过程中读取文件并对文件进行编辑操作,由此实现视音频文件在对象存储中支持边采边编的方法;并且结合对视音频文件格式的解析对S3协议进行修改,使视音频文件在写入的过程中可以被封装为完整文件,则用户可以在采集过程中对文件进行读取、编辑,大幅提高了节目制作的效率,具有高效实用,便于维护,降低成本的特点。附图说明图1是本专利技术的视音频文件写入流程示意图。图2是本专利技术的视音频文件读取流程示意图。图3是本专利技术追加写入新数据的流程示意图。图4是本专利技术存在相应的inx文件时,读取视音频文件的流程示意图。图5是本专利技术inx文件结构示意图。具体实施方式为了本
的人员更好的理解本专利技术,下面结合附图和以下实施例对本专利技术作进一步详细描述。实施例1如图1和图2所示,本实施例提供一种基于对象存储支持视音频文件内容追加的方法,包括如下步骤:S1:写入源文件,并根据源文件格式生成相应的inx文件,所述inx文件包括head部分和data部分,所述head部分用于保存源文件的medatada数据,所述medatada数据用于描述源文件的视音频编码格式、视音频流个数以及duration信息;data部分用于保存源文件中视音频文件每帧的index数据,index数据记录每一帧视音频在源文件中的偏移位置,便于读文件时找到要取的帧;S2:将视音频文件和inx文件同时以追加写入的方式写入对象存储;如图3所示,所述追加写入包括如下步骤:S2.1:收到源文件http写请求,检查对象存储中的对象是否存在,若对象不存在,则返回请求失败;若对象存在,则读取对象的manifest数据;S2.2:检查写入内容所在位置是否为manifest数据描述的最后一个分片;若是,则在该分片尾写入新数据,并更新manifest数据描述此分片的大小;若不是,则创建一个新分片,在新分片中写入新数据,并在manifest中添加新分片信息;S2.3:若经过S2.2不能写完新数据,则追加新的分片,在新的分片中写入未写完的新数据,并在manifest中追加新的分片的描述信息,直至新数据全部写入;S2.4:新数据全部写入后,形成目标文件,返回http写请求结果S3:视音频文件写入完成时,删除相应的inx文件;S4:读取视音频文件时判断该视音频文件是否存在相应的inx文件,若不存在相应的inx文件则代表视音频文件已经完整写入对象存储,直接读取即可;若存在相应的inx文件,则根据该inx文件记录的视音频文件每帧的偏移和大小读取视音频文件;如图4所示,所述S4中存在相应的inx文件时,读取视音频文件包括如下步骤:S4.1:收到目标文件http读请求后,检查对象存储中的对象是否存在,若对象不存在,则返回请求失败;若对象存在,则读取对象的manifest数据;S4.2:计算目标文件尾所在的分片位置及分片偏移,读取数据;S4.3:返回http读请求结果。本实施例在源文件写入对象存储的过程中,以数据追加的方式写入对象存储,使文件在采集过程中对用户可见,用户将可以在采集过程中读取文件并对文件进行编辑操作,由此实现了视音频文件在对象存储中支持边采边编,大幅提高了节目制作的效率,高效实用。以上所述,仅为本专利技术的较佳实施例,并不用以限制本专利技术,本专利技术的专利保护范围以权利要求书为准,凡是运用本专利技术的说明书及附图内容所作的等同结构变化,同理均应包含在本专利技术的保护范围内。本文档来自技高网
...

【技术保护点】
1.一种基于对象存储支持视音频文件内容追加的方法,其特征在于,包括如下步骤:S1:写入源文件,并根据源文件格式生成相应的inx文件,所述inx文件记录源文件的视音频文件每帧的偏移和大小;S2:将视音频文件和inx文件同时以追加写入的方式写入对象存储;S3:视音频文件写入完成时,删除相应的inx文件;S4:读取视音频文件时判断该视音频文件是否存在相应的inx文件,若不存在相应的inx文件则代表视音频文件已经完整写入对象存储,直接读取即可;若存在相应的inx文件,则根据该inx文件记录的视音频文件每帧的偏移和大小读取视音频文件。

【技术特征摘要】
1.一种基于对象存储支持视音频文件内容追加的方法,其特征在于,包括如下步骤:S1:写入源文件,并根据源文件格式生成相应的inx文件,所述inx文件记录源文件的视音频文件每帧的偏移和大小;S2:将视音频文件和inx文件同时以追加写入的方式写入对象存储;S3:视音频文件写入完成时,删除相应的inx文件;S4:读取视音频文件时判断该视音频文件是否存在相应的inx文件,若不存在相应的inx文件则代表视音频文件已经完整写入对象存储,直接读取即可;若存在相应的inx文件,则根据该inx文件记录的视音频文件每帧的偏移和大小读取视音频文件。2.根据权利要求1所述的一种基于对象存储支持视音频文件内容追加的方法,其特征在于,所述inx文件包括head部分和data部分,所述head部分用于保存源文件的medatada数据,所述medatada数据用于描述源文件的视音频编码格式、视音频流个数以及duration信息;data部分用于保存源文件中视音频文件每帧的index数据,index数据记录每一帧视音频在源文件中的偏移位置。3.根据权利要求1所述的一种基于对象存储支持视音频文件内容追加的方法,其特征在于,所述S...

【专利技术属性】
技术研发人员:罗天张金沙黎胜
申请(专利权)人:成都索贝数码科技股份有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1