一种避免数字电影包重复传输的方法与流程

专利2024-06-07  84


本发明涉及数据传输领域。更具体地,涉及一种避免数字电影包重复传输的方法。



背景技术:

电影行业的dcp是存储影片数字内容的格式,通常都有上百g大小,因为分不同版本,经常会打包多个版本进行传输。然而由于相当一部分文件资源文件例如媒体文件在不同版本之间是重复的。这样造成了极大的重复,对影片所占用的资源尤其是传输带宽是极大的浪费。即使采用了p2p网络进行分发,将多部dcp影片文件包分别发送,仍然面对dcp数据量太大,占用过多网络带宽和传输时间,进而成本较高的问题。



技术实现要素:

有鉴于此,本发明的第一个实施例提供一种避免数字电影包重复传输的方法,包括:

s10:发送端生成待发送dcp目录的种子文件,并发送给接收端;

s13:接收端根据所述种子文件判断所述dcp中是否含有本地资源已有资源;

s15:发送端发送dcp中接收端本地未含有的dcp文件;

s17:接收端接收完成后,将所述本地资源已有资源复制到接收到的dcp文件目录中。

在一个具体实施例中,该方法还包括:在所述s10之前,

获取待发送dcp和接收端片库中所有大于预设阈值的mxf文件,

计算所述mxf文件的哈希值,

将哈希值相同的同名同目录的mxf文件保存在资源映射表中同一个哈希值下,将不同的保存在资源映射表中分别保存其哈希值。

在一个具体实施例中,所述s13包括:

所述接收端对所述种子文件进行分析,得到dcp中文件的目录;

获取发送端映射表中的目录下相应文件的哈希值;

根据文件的哈希值、文件名和文件大小查询接收端片库中是否完全相同的文件,若相同则记为本地已有资源,若没有,则记为本地未含有的dcp文件。

在一个具体实施例中,当接收端或发送端增加新的dcp时,

导入dcp时,计算dcp中文件的哈希值,并将新的哈希值加入到资源映射表。

在一个具体实施例中,对于资源映射表中同一个哈希值下的文件,且记为本地未含有的dcp文件仅发送一次。

在一个具体实施例中,所述资源映射表包括:文件名,文件的哈希值和文件值。

在一个具体实施例中,接收端完成所述s17后,将完整的dcp目录中的文件发送给业务端。

本发明的第二个实施例提供一种计算机设备,包括处理器及存储在存储有计算机程序的存储器,其特征在于,所述处理器执行所述程序时实现如第一个实施例中任一项所述的方法。

本发明的第三个实施例提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如第一个实施例中任一项所述的方法。

本发明的有益效果如下:

本申请通过在发送端发现和处理重复的dcp文件包,通过特定的处理,在p2p的传输过程中,重复文件不再多次传输,而是只传输一份,而在接收端处,将资源文件根据本地已有的dcp文件包,以及通过技术方案的设计恢复,在电影行业的大文件传输的环境下,播放端和影院服务器无需做改动,仍然得到此次传输完成的特定版本的dcp文件包,有效减少了大文件在传输过程中的重复文件,提高了传输效率,节省了带宽和相关资源。减少了数字电影包中多版本的重复资源的传输量,从而提高传输效率和带宽占用,支持到dcp对大量接收端的去中心化的分发。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出根据本发明一个实施例的避免数字电影包重复传输的方法的硬件架构图。

图2示出根据本发明一个实施例的避免数字电影包重复传输的方法流程图。

图3示出本发明的另一个实施例的计算机设备的结构示意图。

具体实施方式

为使本发明的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

如图1所示,一种避免数字电影包重复传输的方法硬件架构图,发送端10例如中国电影股份有限公司通过基于p2p的文件传输网络15将数字电影包(digitalcinemapackagedcp)发送到各个接收端端13。图中接收端以1个示出,然而本领域技术人员能够理解,在实际应用场景下,接收端端为多个,例如遍布于各个城市的电影院。

如图2所示,一种避免数字电影包重复传输的方法,包括:

获取待发送dcp和接收端片库中所有大于预设阈值的mxf文件,

计算所述mxf文件的哈希值,

将哈希值相同的同名同目录的mxf文件保存在资源映射表中同一个哈希值下,即在资源映射表中一个哈希值可能对应多个dcp文件中的多个mxf文件,将不同的保存在资源映射表中分别保存其哈希值。

在一个具体示例中,格式:hashdcpnamepath/filesize

即哈希==》dcp,文件名,尺寸大小

s10:发送端生成待发送dcp目录的种子文件,并发送给接收端;

s13:接收端根据所述种子文件判断所述dcp中是否含有本地资源已有资源;

所述接收端对所述种子文件进行分析,得到dcp中文件的目录,其中目录包括dcp中每个文件的名称以及大小;

通过网络查询发送端的api,然后将获取发送端映射表中的目录下相应文件的哈希值,并记录下来;

根据文件的哈希值、文件名和文件大小查询接收端片库中是否完全相同的文件,若相同则记为本地已有资源,若没有,则记为本地未含有的dcp文件。

s15:发送端发送dcp中接收端本地未含有的dcp文件;

s17:接收端接收完成后,将所述本地资源已有资源复制到接收到的dcp文件目录中。

在一个具体实施例中,接收端完成所述s17后,将完整的dcp目录中的文件发送给业务端。

在一个具体实施例中,当接收端或发送端增加新的dcp时,实时更新本地的映射表,实时计算dcp中文件的哈希值,并将新的哈希值加入到资源映射表。

本发明的另一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现,在实际应用中,所述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

如图3所示,本发明的另一个实施例提供的一种计算机设备的结构示意图。图3显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图3所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。

计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图3所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图3中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理器单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的一种避免数字电影包重复传输的方法。

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。


技术特征:

1.一种避免数字电影包重复传输的方法,其特征在于,包括:

s10:发送端生成待发送dcp目录的种子文件,并发送给接收端;

s13:接收端根据所述种子文件判断所述dcp中是否含有本地资源已有资源;

s15:发送端发送dcp中接收端本地未含有的dcp文件;

s17:接收端接收完成后,将所述本地资源已有资源复制到接收到的dcp文件目录中。

2.根据权利要求1所述的方法,其特征在于,该方法还包括:在所述s10之前,

获取待发送dcp和接收端片库中所有大于预设阈值的mxf文件,

计算所述mxf文件的哈希值,

将哈希值相同的同名同目录的mxf文件保存在资源映射表中同一个哈希值下,将不同的保存在资源映射表中分别保存其哈希值。

3.根据权利要求1所述的方法,其特征在于,所述s13包括:

所述接收端对所述种子文件进行分析,得到dcp中文件的目录;

获取发送端映射表中的目录下相应文件的哈希值;

根据文件的哈希值、文件名和文件大小查询接收端片库中是否完全相同的文件,若相同则记为本地已有资源,若没有,则记为本地未含有的dcp文件。

4.根据权利要求2所述的方法,其特征在于,当接收端或发送端增加新的dcp时,

导入dcp时,计算dcp中文件的哈希值,并将新的哈希值加入到资源映射表。

5.根据权利要求4所述的方法,其特征在于,对于资源映射表中同一个哈希值下的文件,且记为本地未含有的dcp文件仅发送一次。

6.根据权利要求1所述的方法,其特征在于,所述资源映射表包括:文件名,文件的哈希值和文件值。

7.根据权利要求1-6中任一项所述的方法,其特征在于,接收端完成所述s17后,将完整的dcp目录中的文件发送给业务端。

8.一种计算机设备,包括处理器及存储在存储有计算机程序的存储器,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一项所述的方法。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的方法。

技术总结
本发明的一个实施例公开了一种避免数字电影包重复传输的方法,包括:S10:发送端生成待发送dcp目录的种子文件,并发送给接收端;S13:接收端根据所述种子文件判断所述dcp中是否含有本地资源已有资源;S15:发送端发送dcp中接收端本地未含有的dcp文件;S17:接收端接收完成后,将所述本地资源已有资源复制到接收到的dcp文件目录中。

技术研发人员:李军;林晓飞
受保护的技术使用者:中国电影器材有限责任公司
技术研发日:2020.12.09
技术公布日:2021.04.06

转载请注明原文地址:https://xbbs.6miu.com/read-19481.html