防止视频编辑时丢帧的方法、设备及系统的制作方法

文档序号:7818218阅读:144来源:国知局
防止视频编辑时丢帧的方法、设备及系统的制作方法
【专利摘要】本发明实施例提供一种防止视频编辑时丢帧的方法、设备及系统,包括:由客户端生成虚拟文件链表并同步至存储设备,该链表包括多个链表节点,每个链表节点包括一个文件片段的序号和描述字段,存储设备接收读请求后,根据读请求中第一文件片段的序号从内存中读取第一文件片段的数据并返回客户端,根据第一文件片段的序号在虚拟文件链表中确定第一文件片段的序号所属链表节点的下一个链表节点,从下一个链表节点中获取第二文件片段的描述字段,再根据该字段从存储介质中读取第二文件片段的数据存入内存中。从而使每次读请求都能命中内存中的数据,防止视频编辑时丢帧。
【专利说明】防止视频编辑时丢帧的方法、设备及系统

【技术领域】
[0001] 本发明实施例涉及视频处理技术,尤其涉及一种防止视频编辑时丢帧的方法、设 备及系统。

【背景技术】
[0002] 在现有的视频编辑技术中,对存储设备的读时延都有着比较严格的要求,读时延 是指编辑视频的客户端向存储设备发起读请求后,存储设备向客户端返回数据的时间,如 果读时延过长会导致视频软件出现"丢帧"问题。这是因为,在现有技术中,客户端运行的 视频编辑软件一般可以分为:读数据线程、数据缓冲区、视频编辑线程三部分,其工作流程 为:读数据线程先从存储设备中读出数据,并填入数据缓冲区,视频编辑线程从数据缓冲区 中读出缓存的数据进行视频处理。现有的存储设备大都采用的是磁盘存储介质(比如机 械硬盘),由于磁盘存储介质的响应时间较长,可能出现视频编辑线程从数据缓冲区中读出 数据缓冲区中的所有数据时,读数据线程还没有从存储设备中读出新的数据填入数据缓冲 区,此时数据缓冲区是空的,如果视频编辑线程再试图从数据缓冲区读取数据就会出现"丢 帧"的问题。
[0003] 为了解决上述问题,在一种现有技术中,存储设备在接收到读请求之前就预先把 数据读取到存储设备的内存中,当收到读请求时,就可以将内存中预先读取的数据返回给 客户端。但是,上述方法只能解决线性编辑时的"丢帧"的问题,线性编辑是指客户端按照 时间顺序进行编辑,比如本次请求的是第η个数据块,下次请求的就是第n+1个数据块,这 样预先将第n+1个数据块读取到内存中,当第n+1个数据块的读请求到来时,刚好能够将第 n+1个数据块立即返回给客户端。当非线性编辑时,客户端请求的数据块可能是随机的,t匕 如本次请求的是第η个数据块,下次请求的可能是第n+3个数据块,这种情况下就无法命中 预先读取到内存中的数据,依然只能等待从磁盘存储介质中读出第n+3个数据块后,才能 返回给客户端,这种情况下依然可能出现"丢帧"的问题。


【发明内容】

[0004] 本发明实施例提供一种防止视频编辑时丢帧的方法、设备及系统,能够解决视频 编辑时丢帧的问题。
[0005] 第一方面,本发明实施例提供一种防止视频编辑时丢帧的方法,应用于存储设备, 所述存储设备存储有客户端发送的虚拟文件链表,所述虚拟文件链表与所述客户端中的虚 拟文件链表保持同步,所述虚拟文件链表包括多个链表节点,每个链表节点包括一个文件 片段的序号和所述文件片段的描述字段;所述方法包括:
[0006] 根据所述第一文件片段的序号从内存中读取所述第一文件片段的数据,并将所述 第一文件片段的数据返回给所述客户端;所述第一文件片段的数据是接收到所述客户端的 上一次读请求时从存储介质读取并存入在所述内存中的;
[0007] 根据所述第一文件片段的序号在所述虚拟文件链表中确定所述第一文件片段的 序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取第二文件片段的描述 字段;
[0008] 根据所述第二文件片段的描述字段从所述存储介质中读取所述第二文件片段的 数据,并将所述第二文件片段的数据存入所述内存中。
[0009] 结合第一方面,在第一方面的第一种可能的实现方式中,所述虚拟文件链表与所 述客户端中的虚拟文件链表保持同步包括:
[0010] 当所述客户端中的虚拟文件链表更新后,从所述客户端接收更新后的虚拟文件链 表;
[0011] 或者,当所述客户端中的虚拟文件链表更新后,从所述客户端接收链表更新信息, 并根据所述链表更新信息对已存储的所述虚拟文件链表进行更新,得到更新后的虚拟文件 链表;
[0012] 或者,周期性的接收所述客户端发送的虚拟文件链表。
[0013] 结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述描述字段包括:
[0014] 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长 度。
[0015] 结合第一方面,在第三种可能的实现方式中,所述存储设备与所述客户端通过采 用客户端/服务器C/S模式的私有接口传输所述虚拟文件链表,所述存储设备与所述客户 端之间通过所述私有接口传输心跳报文保持所述私有接口的连接状态。
[0016] 第二方面,本发明实施例提供一种防止视频编辑时丢帧的方法,应用于视频编辑 系统,所述视频编辑系统包括客户端和存储设备,所述客户端和所述存储设备均存储有所 述客户端生成的虚拟文件链表,所述存储设备中的虚拟文件链表与所述客户端中的虚拟文 件链表保持同步,所述虚拟文件链表包括多个链表节点,每个链表节点包括一个文件片段 的序号和所述文件片段的描述字段;所述方法包括:
[0017] 所述客户端向所述存储设备发送读请求,所述读请求中包括要读取的第一文件片 段的序号;
[0018] 所述存储设备根据所述第一文件片段的序号从内存中读取所述第一文件片段的 数据;所述第一文件片段的数据是所述存储设备接收到所述客户端的上一次读请求时从存 储介质读取并存入在所述内存中的;
[0019] 所述存储设备向所述客户端返回所述第一文件片段的数据;
[0020] 所述存储设备根据所述第一文件片段的序号在所述虚拟文件链表中确定所述第 一文件片段的序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取第二文 件片段的描述字段;
[0021] 所述存储设备根据所述第二文件片段的描述字段从所述存储介质中读取所述第 二文件片段的数据,并将所述第二文件片段的数据存入所述内存中。
[0022] 结合第二方面,在第一种可能的实现方式中,所述存储设备中的虚拟文件链表与 所述客户端中的虚拟文件链表保持同步包括:
[0023] 当更新所述虚拟文件链表后,所述客户端向所述存储设备发送更新后的虚拟文件 链表;
[0024] 或者,当更新所述虚拟文件链表后,所述客户端向所述存储设备发送链表更新信 息;
[0025] 所述存储设备根据所述链表更新信息对已存储的虚拟文件链表进行更新,得到更 新后的虚拟文件链表;
[0026] 或者,所述客户端周期性的向所述存储设备发送虚拟文件链表。
[0027] 结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述描述字段包括:
[0028] 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长 度。
[0029] 结合第二方面,在第三种可能的实现方式中,所述存储设备与所述客户端通过采 用客户端/服务器C/S模式的私有接口传输所述虚拟文件链表,所述存储设备与所述客户 端之间通过所述私有接口传输心跳报文保持所述私有接口的连接状态。
[0030] 第三方面,本发明实施例提供一种存储设备,所述存储设备存储有客户端发送的 虚拟文件链表,所述虚拟文件链表与所述客户端中的虚拟文件链表保持同步,所述虚拟文 件链表包括多个链表节点,每个链表节点包括一个文件片段的序号和所述文件片段的描述 字段;所述存储设备包括:主机协议接口、读接口、内存、预取模块和存储介质;
[0031] 所述主机协议接口,用于接收所述客户端发送的读请求,所述读请求中包括要读 取的第一文件片段的序号;
[0032] 所述读接口,用于根据所述第一文件片段的序号从内存中读取所述第一文件片段 的数据,并将所述第一文件片段的数据返回给所述客户端;所述第一文件片段的数据是接 收到所述客户端的上一次读请求时从存储介质读取并存入在所述内存中的;
[0033] 所述读接口还用于,根据所述第一文件片段的序号在所述虚拟文件链表中确定所 述第一文件片段的序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取第 二文件片段的描述字段;
[0034] 所述预取模块,用于根据所述第二文件片段的描述字段从所述存储介质中读取所 述第二文件片段的数据,并将所述第二文件片段的数据存入所述内存中。
[0035] 结合第三方面,在第一种可能的实现方式中,所述存储设备还包括:私有接口,所 述私有接口用于从所述客户端接收所述虚拟文件链表,以及所述虚拟文件链表与所述客户 端中的虚拟文件链表保持同步,所述私有接口具体用于:
[0036] 当所述客户端中的虚拟文件链表更新后,从所述客户端接收更新后的虚拟文件链 表;
[0037] 或者,当所述客户端中的虚拟文件链表更新后,从所述客户端接收链表更新信息, 并根据所述链表更新信息对已存储的所述虚拟文件链表进行更新,得到更新后的虚拟文件 链表;
[0038] 或者,周期性的接收所述客户端发送的虚拟文件链表。
[0039] 结合第三方面或第三方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述描述字段包括:
[0040] 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长 度。
[0041] 结合第三方面的第一种可能的实现方式,在第三种可能的实现方式中,所述私有 接口为采用客户端/服务器C/S模式的接口,所述存储设备与所述客户端之间通过所述私 有接口传输心跳报文保持所述私有接口的连接状态。
[0042] 第四方面,本发明实施例提供一种视频编辑系统,所述视频编辑系统包括客户端 和存储设备,所述客户端和所述存储设备均存储有所述客户端生成的虚拟文件链表,所述 存储设备中的虚拟文件链表与所述客户端中的虚拟文件链表保持同步,所述虚拟文件链表 包括多个链表节点,每个链表节点包括一个文件片段的序号和所述文件片段的描述字段; 其中:
[0043] 所述客户端用于向所述存储设备发送读请求,所述读请求中包括要读取的第一文 件片段的序号;
[0044] 所述存储设备用于根据所述第一文件片段的序号从内存中读取所述第一文件片 段的数据,所述第一文件片段的数据是所述存储设备接收到所述客户端的上一次读请求时 从存储介质读取并存入在所述内存中的;
[0045] 所述存储设备还用于向所述客户端返回所述第一文件片段的数据;
[0046] 所述存储设备还用于根据所述第一文件片段的序号在所述虚拟文件链表中确定 所述第一文件片段的序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取 第二文件片段的描述字段;
[0047] 所述存储设备还用于根据所述第二文件片段的描述字段从所述存储介质中读取 所述第二文件片段的数据,并将所述第二文件片段的数据存入所述内存中。
[0048] 结合第四方面,在第一种可能的实现方式中,
[0049] 当更新所述虚拟文件链表后,所述客户端还用于向所述存储设备发送更新后的虚 拟文件链表;
[0050] 或者,当更新所述虚拟文件链表后,所述客户端还用于向所述存储设备发送链表 更新信息
[0051] 所述存储设备还用于根据所述链表更新信息对已存储的虚拟文件链表进行更新, 得到更新后的虚拟文件链表;
[0052] 或者,所述客户端还用于周期性的向所述存储设备发送虚拟文件链表。
[0053] 结合第四方面或第四方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述描述字段包括:
[0054] 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长 度。
[0055] 结合第四方面的第一种可能的实现方式,在第三种可能的实现方式中,所述私有 接口为采用客户端/服务器C/S模式的接口,所述客户端与所述存储设备之间通过所述私 有接口传输心跳报文保持所述私有接口的连接状态。
[0056] 本发明实施例提供一种防止视频编辑时丢帧的方法、设备及系统,首先由客户端 生成虚拟文件链表并将该虚拟文件链表同步至存储设备,虚拟文件链表包括多个链表节 点,每个链表节点包括一个文件片段的序号和文件片段的描述字段,当存储设备接收到客 户端的读请求后,根据读请求中的第一文件片段的序号从内存中读取第一文件片段的数据 并返回给客户端;并且,存储设备还根据第一文件片段的序号在虚拟文件链表中确定第一 文件片段的序号所属链表节点的下一个链表节点,从下一个链表节点中获取第二文件片段 的描述字段,再根据该描述字段从存储介质中读取第二文件片段的数据并存入内存中,以 便当接收到客户端的下一次读请求时,从内存中读取第二文件片段的数据返回给客户端。 可见能够实现每次读请求都能命中内存中预取的数据,从而能够防止视频编辑时丢帧。

【专利附图】

【附图说明】
[0057] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。
[0058] 图1为本发明实施例提供的防止视频编辑时丢帧的方法的流程示意图;
[0059] 图2为本发明实施例提供的防止视频编辑时丢帧的方法的另一流程示意图;
[0060] 图3为本发明实施例提供的防止视频编辑时丢帧的方法的又一流程示意图; [0061] 图4为本发明实施例提供的虚拟文件链表的结构示意图;
[0062] 图5为本发明实施例提供的存储设备的结构示意图;
[0063] 图6为本发明实施例提供的客户端的结构示意图;
[0064] 图7为本发明实施例提供的视频编辑系统的结构示意图。

【具体实施方式】
[0065] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0066] 本发明实施例提供一种防止视频编辑时丢帧的方法,应用于存储设备,存储设备 存储有客户端发送的虚拟文件链表,虚拟文件链表与客户端中的虚拟文件链表保持同步, 虚拟文件链表包括多个链表节点,每个链表节点包括一个文件片段的序号和所述文件片段 的描述字段;如图1所示,方法包括:
[0067] S101、接收客户端发送的读请求,读请求中包括要读取的第一文件片段的序号。
[0068] S103、根据第一文件片段的序号从内存中读取第一文件片段的数据,并将第一文 件片段的数据返回给客户端;第一文件片段的数据是接收到客户端的上一次读请求时从存 储介质读取并存入在内存中的。
[0069] S105、根据第一文件片段的序号在虚拟文件链表中确定第一文件片段的序号所属 链表节点的下一个链表节点,从下一个链表节点中获取第二文件片段的描述字段。
[0070] S107、根据第二文件片段的描述字段从存储介质中读取第二文件片段的数据,并 将第二文件片段的数据存入内存中。
[0071] 从而,当接收到客户端的下一次读请求时,从内存中读取第二文件片段的数据,并 将第二文件片段的数据返回给客户端。
[0072] 本发明实施例还提供一种防止视频编辑时丢帧的方法,应用于视频编辑系统,该 视频编辑系统包括客户端和存储设备,客户端和存储设备均存储有客户端生成的虚拟文件 链表,存储设备中的虚拟文件链表与客户端中的虚拟文件链表保持同步,虚拟文件链表包 括多个链表节点,每个链表节点包括一个文件片段的序号和所述文件片段的描述字段;如 图2所示,方法包括:
[0073] S102、客户端向存储设备发送读请求,读请求中包括要读取的第一文件片段的序 号。
[0074] S104、存储设备根据第一文件片段的序号从内存中读取第一文件片段的数据。其 中,第一文件片段的数据是存储设备接收到客户端的上一次读请求时从存储介质读取并存 入在内存中的。
[0075] S106、存储设备向客户端返回第一文件片段的数据。
[0076] S108、存储设备根据第一文件片段的序号在虚拟文件链表中确定第一文件片段的 序号所属链表节点的下一个链表节点,从下一个链表节点中获取第二文件片段的描述字 段。
[0077] S110、存储设备根据第二文件片段的描述字段从存储介质中读取第二文件片段的 数据,并将第二文件片段的数据存入内存中。
[0078] 从而当存储设备接收到下一次读请求时,存储设备能够从内存中读取第二文件片 段的数据,并将第二文件片段的数据返回给客户端。
[0079] 本发明实施例提供的一种防止视频编辑时丢帧的方法,首先由客户端生成虚拟文 件链表并将该虚拟文件链表同步至存储设备,虚拟文件链表包括多个链表节点,每个链表 节点包括一个文件片段的序号和文件片段的描述字段,当存储设备接收到客户端的读请求 后,根据读请求中的第一文件片段的序号从内存中读取第一文件片段的数据并返回给客户 端;并且,存储设备还根据第一文件片段的序号在虚拟文件链表中确定第一文件片段的序 号所属链表节点的下一个链表节点,从下一个链表节点中获取第二文件片段的描述字段, 再根据该描述字段从存储介质中读取第二文件片段的数据并存入内存中,以便当接收到客 户端的下一次读请求时,从内存中读取第二文件片段的数据返回给客户端。可见能够实现 每次读请求都能命中内存中预取的数据,从而能够防止视频编辑时丢帧。
[0080] 为了使本领域技术人员能够更清楚地理解本发明实施例提供的技术方案,下面通 过具体的实施例,对本发明的实施例提供的防止视频编辑时丢帧的方法进行详细说明,如 图3所示,该方法包括:
[0081] S201、客户端生成虚拟文件链表。
[0082] 具体的,客户端可以是视频编辑工作站,该客户端运行有用于编辑视频文件的软 件,用户可以预先将需要合成目标文件的多个文件片段的信息以及这多个文件片段的编 辑顺序输入至客户端,该客户端就可以通过视频编辑软件的视频编辑线程生成虚拟文件链 表,虚拟文件链表包括多个链表节点,每个链表节点包括一个文件片段的序号和文件片段 的描述字段,其中描述字段可以具体包括文件片段所属原始文件的文件名、读取原始文件 的起始地址(用于指示获取该文件片段需要从原始文件的那个位置开始读)、读取原始文 件的长度(用于指示获取该文件片段需要的原始文件的长度)。
[0083] 示例性的,该虚拟文件链表可以如图4所示,虚拟文件链表中的读取顺序可以如 图4中所示箭头方向为例,设置为从虚拟文件链表的头端到尾端依次读取。图4中的虚拟 文件链表中包括N个链表节点,分别表示为链表节点1?N,每个链表节点都包括一文件片 段的序号,该文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的 长度,具体的每个链表节点中包括的信息可以定义为如下字段:
[0084]

【权利要求】
1. 一种防止视频编辑时丢帧的方法,应用于存储设备,其特征在于,所述存储设备存储 有客户端发送的虚拟文件链表,所述虚拟文件链表与所述客户端中的虚拟文件链表保持同 步,所述虚拟文件链表包括多个链表节点,每个链表节点包括一个文件片段的序号和所述 文件片段的描述字段;所述方法包括: 接收所述客户端发送的读请求,所述读请求中包括要读取的第一文件片段的序号; 根据所述第一文件片段的序号从内存中读取所述第一文件片段的数据,并将所述第一 文件片段的数据返回给所述客户端;所述第一文件片段的数据是接收到所述客户端的上一 次读请求时从存储介质读取并存入在所述内存中的; 根据所述第一文件片段的序号在所述虚拟文件链表中确定所述第一文件片段的序号 所属链表节点的下一个链表节点,从所述下一个链表节点中获取第二文件片段的描述字 段; 根据所述第二文件片段的描述字段从所述存储介质中读取所述第二文件片段的数据, 并将所述第二文件片段的数据存入所述内存中。
2. 根据权利要求1所述的方法,其特征在于,所述虚拟文件链表与所述客户端中的虚 拟文件链表保持同步包括: 当所述客户端中的虚拟文件链表更新后,从所述客户端接收更新后的虚拟文件链表; 或者,当所述客户端中的虚拟文件链表更新后,从所述客户端接收链表更新信息,并 根据所述链表更新信息对已存储的所述虚拟文件链表进行更新,得到更新后的虚拟文件链 表; 或者,周期性的接收所述客户端发送的虚拟文件链表。
3. 根据权利要求1或2所述的方法,其特征在于,所述描述字段包括: 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长度。
4. 根据权利要求1所述的方法,其特征在于,所述存储设备与所述客户端通过采用客 户端/服务器C/S模式的私有接口传输所述虚拟文件链表,所述存储设备与所述客户端之 间通过所述私有接口传输心跳报文保持所述私有接口的连接状态。
5. -种防止视频编辑时丢帧的方法,应用于视频编辑系统,其特征在于,所述视频编辑 系统包括客户端和存储设备,所述客户端和所述存储设备均存储有所述客户端生成的虚拟 文件链表,所述存储设备中的虚拟文件链表与所述客户端中的虚拟文件链表保持同步,所 述虚拟文件链表包括多个链表节点,每个链表节点包括一个文件片段的序号和所述文件片 段的描述字段;所述方法包括: 所述客户端向所述存储设备发送读请求,所述读请求中包括要读取的第一文件片段的 序号; 所述存储设备根据所述第一文件片段的序号从内存中读取所述第一文件片段的数据; 所述第一文件片段的数据是所述存储设备接收到所述客户端的上一次读请求时从存储介 质读取并存入在所述内存中的; 所述存储设备向所述客户端返回所述第一文件片段的数据; 所述存储设备根据所述第一文件片段的序号在所述虚拟文件链表中确定所述第一文 件片段的序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取第二文件片 段的描述字段; 所述存储设备根据所述第二文件片段的描述字段从所述存储介质中读取所述第二文 件片段的数据,并将所述第二文件片段的数据存入所述内存中。
6. 根据权利要求5所述的方法,其特征在于,所述存储设备中的虚拟文件链表与所述 客户端中的虚拟文件链表保持同步包括: 当更新所述虚拟文件链表后,所述客户端向所述存储设备发送更新后的虚拟文件链 表; 或者,当更新所述虚拟文件链表后,所述客户端向所述存储设备发送链表更新信息; 所述存储设备根据所述链表更新信息对已存储的虚拟文件链表进行更新,得到更新后 的虚拟文件链表; 或者,所述客户端周期性的向所述存储设备发送虚拟文件链表。
7. 根据权利要求5或6所述的方法,其特征在于,所述描述字段包括: 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长度。
8. 根据权利要求5所述的方法,其特征在于,所述存储设备与所述客户端通过采用客 户端/服务器C/S模式的私有接口传输所述虚拟文件链表,所述存储设备与所述客户端之 间通过所述私有接口传输心跳报文保持所述私有接口的连接状态。
9. 一种存储设备,其特征在于,所述存储设备存储有客户端发送的虚拟文件链表,所述 虚拟文件链表与所述客户端中的虚拟文件链表保持同步,所述虚拟文件链表包括多个链表 节点,每个链表节点包括一个文件片段的序号和所述文件片段的描述字段;所述存储设备 包括:主机协议接口、读接口、内存、预取模块和存储介质; 所述主机协议接口,用于接收所述客户端发送的读请求,所述读请求中包括要读取的 第一文件片段的序号; 所述读接口,用于根据所述第一文件片段的序号从内存中读取所述第一文件片段的数 据,并将所述第一文件片段的数据返回给所述客户端;所述第一文件片段的数据是接收到 所述客户端的上一次读请求时从存储介质读取并存入在所述内存中的; 所述读接口还用于,根据所述第一文件片段的序号在所述虚拟文件链表中确定所述第 一文件片段的序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取第二文 件片段的描述字段; 所述预取模块,用于根据所述第二文件片段的描述字段从所述存储介质中读取所述第 二文件片段的数据,并将所述第二文件片段的数据存入所述内存中。
10. 根据权利要求9所述的存储设备,其特征在于,所述存储设备还包括:私有接口,所 述私有接口用于从所述客户端接收所述虚拟文件链表,以及所述虚拟文件链表与所述客户 端中的虚拟文件链表保持同步,所述私有接口具体用于: 当所述客户端中的虚拟文件链表更新后,从所述客户端接收更新后的虚拟文件链表; 或者,当所述客户端中的虚拟文件链表更新后,从所述客户端接收链表更新信息,并 根据所述链表更新信息对已存储的所述虚拟文件链表进行更新,得到更新后的虚拟文件链 表; 或者,周期性的接收所述客户端发送的虚拟文件链表。
11. 根据权利要求9或10所述的存储设备,其特征在于,所述描述字段包括: 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长度。
12. 根据权利要求10所述的存储设备,其特征在于,所述私有接口为采用客户端/服务 器C/S模式的接口,所述存储设备与所述客户端之间通过所述私有接口传输心跳报文保持 所述私有接口的连接状态。
13. -种视频编辑系统,其特征在于,所述视频编辑系统包括客户端和存储设备,所述 客户端和所述存储设备均存储有所述客户端生成的虚拟文件链表,所述存储设备中的虚拟 文件链表与所述客户端中的虚拟文件链表保持同步,所述虚拟文件链表包括多个链表节 点,每个链表节点包括一个文件片段的序号和所述文件片段的描述字段;其中: 所述客户端用于向所述存储设备发送读请求,所述读请求中包括要读取的第一文件片 段的序号; 所述存储设备用于根据所述第一文件片段的序号从内存中读取所述第一文件片段的 数据,所述第一文件片段的数据是所述存储设备接收到所述客户端的上一次读请求时从存 储介质读取并存入在所述内存中的; 所述存储设备还用于向所述客户端返回所述第一文件片段的数据; 所述存储设备还用于根据所述第一文件片段的序号在所述虚拟文件链表中确定所述 第一文件片段的序号所属链表节点的下一个链表节点,从所述下一个链表节点中获取第二 文件片段的描述字段; 所述存储设备还用于根据所述第二文件片段的描述字段从所述存储介质中读取所述 第二文件片段的数据,并将所述第二文件片段的数据存入所述内存中。
14. 根据权利要求13所述的视频编辑系统,其特征在于, 当更新所述虚拟文件链表后,所述客户端还用于向所述存储设备发送更新后的虚拟文 件链表; 或者,当更新所述虚拟文件链表后,所述客户端还用于向所述存储设备发送链表更新 信息; 所述存储设备还用于根据所述链表更新信息对已存储的虚拟文件链表进行更新,得到 更新后的虚拟文件链表; 或者,所述客户端还用于周期性的向所述存储设备发送虚拟文件链表。
15. 根据权利要求13或14所述的视频编辑系统,其特征在于,所述描述字段包括: 文件片段所属原始文件的文件名、读取原始文件的起始地址、读取原始文件的长度。
16. 根据权利要求14所述的视频编辑系统,其特征在于,所述私有接口为采用客户端/ 服务器C/S模式的接口,所述客户端与所述存储设备之间通过所述私有接口传输心跳报文 保持所述私有接口的连接状态。
【文档编号】H04N21/458GK104333803SQ201410594344
【公开日】2015年2月4日 申请日期:2014年10月29日 优先权日:2014年10月29日
【发明者】刘渊, 王锦 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1