CN108512809A - 一种媒体文件的传输方法及设备 - Google Patents
一种媒体文件的传输方法及设备 Download PDFInfo
- Publication number
- CN108512809A CN108512809A CN201710104636.4A CN201710104636A CN108512809A CN 108512809 A CN108512809 A CN 108512809A CN 201710104636 A CN201710104636 A CN 201710104636A CN 108512809 A CN108512809 A CN 108512809A
- Authority
- CN
- China
- Prior art keywords
- check information
- media data
- media
- receiving device
- file
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
Abstract
本发明实施例提供了一种媒体文件的传输方法及设备,用以解决现有的传输媒体文件的技术方案中存在的媒体文件传输效率低的问题。方法包括:发送端设备将待发送的媒体文件划分为预设份数的媒体数据;发送端设备针对预设份数的媒体数据中的每份媒体数据执行如下操作:采用预设算法对该媒体数据进行计算得到第一校验信息,并将该媒体数据和该第一校验信息发送给接收端设备,该第一校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传媒体数据。
Description
技术领域
本发明涉及数据传输领域,尤其涉及一种媒体文件的传输方法及设备。
背景技术
在传输媒体文件的过程中,网络故障、磁盘损坏、人为篡改等因素会导致媒体文件传输过程出现错误,造成媒体数据损坏,进而可能会导致媒体文件无法播放或者媒体文件播放出现错误。
为了保证传输的媒体文件的正确性,现有的传输媒体文件的技术方案中,在媒体文件传输完成之后,接收端设备对接收的媒体文件进行校验。当接收端设备对接收的媒体文件校验失败时,说明该媒体数据在传输过程中出现错误,该错误可能是媒体文件中出现部分错误,但发送端设备仍然需要将整个媒体文件重传给接收端设备,因此导致媒体文件中的媒体数据存在重复传输的情况,进而导致媒体文件传输效率低。
综上,现有的传输媒体文件的技术方案中存在媒体文件传输效率低的问题。
发明内容
本发明实施例提供了一种媒体文件的传输方法及设备,用以解决现有的传输媒体文件的技术方案中存在媒体文件传输效率低的问题。
第一方面,本发明实施例提供一种媒体文件的传输方法,包括:
发送端设备将待发送的媒体文件划分为预设份数的媒体数据;
发送端设备针对预设份数的媒体数据中的每份媒体数据执行如下操作:
采用预设算法对媒体数据进行计算得到第一校验信息,并将媒体数据和第一校验信息发送给接收端设备,第一校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传媒体数据。
在一种可能的设计中,发送端设备将媒体数据和第一校验信息发送给接收端设备,包括:
发送端设备将第一校验信息携带在媒体数据的扩展字段中,并将扩展字段携带有第一校验信息的媒体数据发送给接收端设备;或者,
发送端设备将第一校验信息携带在独立于媒体文件的文件中,并将媒体数据和独立于媒体文件的文件发送给接收端设备。
在一种可能的设计中,发送端设备采用预设算法对媒体数据进行计算得到第一校验信息之后,还包括:
发送端设备对第一校验信息进行计算得到第二校验信息,将第二校验信息携带在独立于媒体文件的文件中,第二校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传媒体文件。
第二方面,本发明实施例提供一种媒体文件的传输方法,包括:
接收端设备接收发送端设备发送的媒体数据和第三校验信息,媒体数据为发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的校验信息;
接收端设备采用预设算法对接收的媒体数据进行计算得到第四校验信息;
当第三校验信息与第四校验信息满足预设条件时,接收端设备确定接收的媒体数据正确;或者,当第三校验信息与第四校验信息不满足预设条件时,接收端设备向发送端设备请求重传媒体数据。
在一种可能的设计中,当第三校验信息与第四校验信息满足预设条件时,接收端设备确定接收的媒体数据正确,包括:
当接收端设备根据第三校验信息和第四校验信息确定的媒体数据的错误率不大于预设的错误率时,接收端设备确定接收的媒体数据正确;
当第三校验信息与第四校验信息不满足预设条件时,接收端设备向发送端设备请求重传媒体数据,包括:
当接收端设备根据第三校验信息和第四校验信息确定的媒体数据的错误率大于预设的错误率时,接收端设备向发送端设备请求重传媒体数据。
在一种可能的设计中,接收端设备根据第三校验信息和第四校验信息确定媒体数据的错误率的方法,具体包括:
接收端设备根据第三校验信息和第四校验信息,通过以下公式计算媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
在一种可能的设计中,接收端设备接收发送端设备发送的媒体数据和第三校验信息,包括:
接收端设备接收发送端设备发送的媒体数据,媒体数据的扩展字段中携带有第三校验信息;或者,
接收端设备接收发送端设备发送的媒体数据和独立于媒体文件的文件,独立于媒体文件的文件中携带有第三校验信息。
在一种可能的设计中,独立于媒体文件的文件中还携带有第五校验信息,第五校验信息为发送端设备对第三校验信息进行计算得到的校验信息;
接收端设备接收发送端设备发送的媒体数据和独立于媒体文件的文件之后,还包括:
接收端设备根据独立于媒体文件的文件携带的第五校验信息对第三校验信息进行校验;
当对第三校验信息校验正确时,接收端设备确定第三校验信息正确;或者,当对第三校验信息校验错误时,接收端设备向发送端设备请求重传媒体文件。
第三方面,本发明实施例提供一种发送端设备,包括:
处理单元,用于将待发送的媒体文件划分为预设份数的媒体数据;
针对预设份数的媒体数据中的每份媒体数据执行如下操作:
处理单元,还用于采用预设算法对媒体数据进行计算得到第一校验信息,第一校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传媒体数据;
收发单元,用于将媒体数据和处理单元计算得到的第一校验信息发送给接收端设备。
在一种可能的设计中,收发单元具体用于:
将扩展字段携带有处理单元计算得到的第一校验信息的媒体数据发送给接收端设备;或者,
将媒体数据和独立于媒体文件的文件发送给接收端设备,处理单元计算得到的第一校验信息携带在独立于媒体文件的文件中。
在一种可能的设计中,处理单元还用于:
在采用预设算法对媒体数据进行计算得到第一校验信息之后,对第一校验信息进行计算得到第二校验信息,将第二校验信息携带在独立于媒体文件的文件中,第二校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传媒体文件。
第四方面,本发明实施例提供一种接收端设备,包括:
收发单元,用于接收发送端设备发送的媒体数据和第三校验信息,媒体数据为发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的校验信息;
处理单元,用于采用预设算法对收发单元接收的媒体数据进行计算得到第四校验信息;当第三校验信息与第四校验信息满足预设条件时,确定收发单元接收的媒体数据正确;或者,当第三校验信息与第四校验信息不满足预设条件时,控制收发单元向发送端设备请求重传媒体数据。
在一种可能的设计中,处理单元当第三校验信息与第四校验信息满足预设条件时,确定收发单元接收的媒体数据正确,具体用于:
当处理单元根据第三校验信息和第四校验信息确定的媒体数据的错误率不大于预设的错误率时,确定收发单元接收的媒体数据正确;
处理单元当第三校验信息与第四校验信息不满足预设条件时,控制收发单元向发送端设备请求重传媒体数据,具体用于:
当处理单元根据第三校验信息和第四校验信息确定的媒体数据的错误率大于预设的错误率时,控制收发单元向发送端设备请求重传媒体数据。
在一种可能的设计中,处理单元根据第三校验信息和第四校验信息确定媒体数据的错误率时,具体用于:
根据第三校验信息和第四校验信息,通过以下公式计算媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
在一种可能的设计中,收发单元在接收发送端设备发送的媒体数据和第三校验信息时,具体用于:
接收发送端设备发送的媒体数据,媒体数据的扩展字段中携带有第三校验信息;或者,
接收发送端设备发送的媒体数据和独立于媒体文件的文件,独立于媒体文件的文件中携带有第三校验信息。
在一种可能的设计中,独立于媒体文件的文件中还携带有第五校验信息,第五校验信息为发送端设备对第三校验信息进行计算得到的校验信息;
处理单元还用于:
在收发单元接收发送端设备发送的媒体数据和独立于媒体文件的文件之后,根据收发单元接收的独立于媒体文件的文件携带的第五校验信息对第三校验信息进行校验;
当对第三校验信息校验正确时,确定第三校验信息正确;或者,当对第三校验信息校验错误时,控制收发单元向发送端设备请求重传媒体文件。
本发明实施例提供的媒体文件传输的技术方案中,发送端设备将待发送的媒体文件划分为预设份数的媒体数据,对于每份媒体数据,发送端设备都采用预设算法对媒体数据进行计算得到第一校验信息,并将媒体数据和第一校验信息发送给接收端设备,接收端设备通过第一校验信息对媒体数据进行校验,接收端设备根据校验结果来判断发送端设备是否需要向接收端设备重传媒体数据,实现了传输媒体文件的场景中当媒体文件传输过程中出现错误时,发送端设备只向接收端设备重传媒体文件中出现错误的部分,既保证了接收端设备所接收的媒体文件的正确性,还缩短了媒体文件的传输时间,提高了媒体文件的传输效率。
附图说明
图1为本发明实施例提供的一种媒体文件的传输方法的流程示意图;
图2为本发明实施例提供的一种发送端设备在媒体数据中添加扩展字段方法的流程示意图;
图3为本发明实施例提供的一种发送端设备生成独立于媒体文件的文件方法的流程示意图;
图4为本发明实施例提供的另一种媒体文件的传输方法的流程示意图;
图5为本发明实施例提供的一种发送端设备的结构示意图;
图6为本发明实施例提供的另一种发送端设备的结构示意图;
图7为本发明实施例提供的一种接收端设备的结构示意图;
图8为本发明实施例提供的另一种接收端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种媒体文件的传输方法及设备,用以解决现有的传输媒体文件的技术方案中存在的媒体文件传输效率低的问题。其中,方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此设备与方法的实施可以相互参见,重复之处不再赘述。
本发明实施例提供的技术方案适用于传输媒体文件的场景,尤其适用于需要传输大媒体文件的场景。一般地,通常把数据量大小在1千兆(Gigabyte,GB)以上的文件称为大媒体文件,在实际应用中也可以根据其他标准划分大媒体文件。本发明实施例提供的技术方案中发送端设备和接收端设备可以是内容分发网络(Content Delivery Network,CDN)中的设备,发送端设备和接收端设备也可以是服务器设备。本发明实施例提供的技术方案适用的需要传输大媒体文件的场景可以是CDN核心节点设备向CDN边缘节点设备传输大媒体文件的场景,可以是内容提供商(Content Provider,CP)设备向服务提供商(ServiceProvider,SP)设备提供大媒体文件的场景,可以是通过网络下载媒体大文件的场景,还可以是在不同设备之间或同一设备的不同存储区域中通过磁盘拷贝大媒体文件的场景。
以CDN核心节点设备向CDN边缘节点设备传输大媒体文件的场景为例,在现有的传输大媒体文件的技术方案中,CDN核心节点设备接收到CDN边缘节点设备请求大媒体文件的请求消息后,将大媒体文件发送给CDN边缘节点设备,在CDN边缘节点设备完成大媒体文件的接收后,CDN边缘节点设备会对接收到的大媒体文件进行校验。当CDN边缘节点对接收的大媒体文件校验失败时,说明该大媒体文件在传输过程中出现错误,大媒体文件中可能只有部分数据出现错误,但CDN核心节点设备仍然需要将整个大媒体文件重传给CDN边缘节点设备。由于大媒体文件的数据量大,因此重新传输大媒体文件所耗费的时间长,大媒体文件传输效率低。而通过本发明实施例提供的技术方案可以实现传输媒体文件场景中只重传媒体文件中出现错误的部分,避免了传输媒体文件的过程中,当媒体文件中出现部分错误时发送端设备需要重传整个文件所导致的媒体文件传输效率低的问题。
下面通过实施例详细介绍本发明实施例提供的技术方案。
如图1所示,本发明实施例提供了一种媒体文件的传输方法,此方法的执行主体为发送端设备,此方法包括:
S101、发送端设备将待发送的媒体文件划分为预设份数的媒体数据。
本实施例中,媒体文件可以是视频文件或者音频文件。按照媒体文件的数据量大小,媒体文件可以分为大媒体文件和小媒体文件。当大媒体文件在传输过程中出现错误时,由于大媒体文件的数据量大,重传整个媒体文件所需要的时间长,导致媒体文件传输效率低。而相对于大媒体文件,由于小媒体文件的数据量小,当小媒体文件在传输过程中出现错误时,重传整个小媒体文件所需要的时间较短。因此本实施例所提供的方法一般较多的应用于提高大媒体文件的传输效率。
发送端设备通过将待发送的媒体文件划分为预设份数的媒体数据,可以实现媒体文件在传输过程中出现错误时,仅对出现错误的媒体数据进行重传,提高了媒体文件的传输效率。针对媒体文件实时传输场景,媒体数据的份数越多,越有利于接收端设备及时发现出现错误的媒体数据,以使发送端设备及时重传出现错误的媒体数据,因此媒体数据的份数越多,越有利于提高媒体文件实时传输的效率。
在实际应用中,预设份数可以根据实际需求进行设置。预设份数可以等于媒体文件的总帧数,即每份媒体数据为一帧数据。预设份数也可以是其他数量。例如,预设份数等于媒体文件的总帧数的五分之一。假设待发送的媒体文件有1000帧、帧索引号初值为0时,预设份数为200份,则发送端设备将待发送的媒体文件中每5帧数据划分为一份媒体数据。第一份媒体数据中包括帧索引号为0至帧索引号为4帧的5帧数据,第二份媒体数据中包括帧索引号为5至帧索引号为9的5帧媒体数据,以此类推。
S102、发送端设备针对预设份数的媒体数据中的每份媒体数据执行如下操作:
采用预设算法对媒体数据进行计算得到第一校验信息,并将该媒体数据和该媒体数据对应的第一校验信息发送给接收端设备。
其中,第一校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传该第一校验信息对应的媒体数据。发送端设备可以采用任意算法对媒体数据进行计算得到第一校验信息,但接收端设备在对媒体数据进行计算时必须采用与发送端设备计算第一校验信息时相同的算法,以保证接收端设备对媒体数据进行校验所得到的校验结果的正确性。
发送端设备对每份媒体数据计算得到每份媒体数据对应的第一校验信息,将媒体数据和该媒体数据对应的第一校验信息发送给接收端设备,使得接收端设备可以根据媒体数据对应的第一校验信息对该媒体数据进行校验,进而实现了接收端设备根据对媒体数据的校验结果判断发送端设备是否需要重传该份媒体数据,实现了发送端设备只重传出现错误的媒体数据,提高了媒体文件的传输效率。
本实施例中,发送端设备可通过如下方式实现对媒体数据进行计算得到第一校验信息:
方式一:针对S101中划分完成后的预设份数的媒体数据中任意一份媒体数据,发送端设备计算该份媒体数据中比特位为相同值的比特位的数量,将该比特位的数量作为该份媒体数据的第一校验信息。
以每份媒体数据为媒体文件中的一帧媒体数据为例,对于媒体文件中的一帧媒体数据,假设该帧媒体数据有500比特,由于媒体数据中每个比特位的值均为0或1,发送端设备计算该帧媒体数据中比特位的值为0的比特位的数量,假设该帧媒体数据中比特位的值为0的比特位的数量为362,将该帧媒体数据中比特位的值为0的比特位的数量作为该份媒体数据的第一校验信息,则该份媒体数据的第一校验信息为362。
方式二:针对S101中划分完成后的预设份数的媒体数据中任意一份媒体数据,发送端设备计算该份媒体数据中奇数位的比特位的值之和,将奇数位的比特位的值之和作为该份媒体数据的第一校验信息。
以每份媒体数据为媒体文件中的一帧媒体数据为例,对于媒体文件中的一帧媒体数据,假设该帧媒体数据有10位,由于媒体数据中每个比特位的值均为0或1,发送端设备计算该帧媒体数据中奇数位的比特位的值之和,假设该帧媒体数据中第1位、第3位、第5位、第7位、第9位等所有奇数位的比特位的值之和为3,将奇数位的比特位的值之和作为该帧媒体数据的第一校验信息,则该帧媒体数据的第一校验信息为3。
需要说明的是,除了方式一和方式二之外,发送端设备可以采用其他方式对媒体数据进行计算得到第一校验信息。
可选的,当预设份数的媒体数据中的每份媒体数据为多帧媒体数据时,针对每份媒体数据,发送端设备可以采用预设算法对每份媒体数据中分别对各帧媒体数据进行计算,将每份媒体数据中各帧媒体数据的计算结果的平均值作为该份媒体数据的第一校验信息。例如,预设份数的媒体数据中的每份媒体数据为3帧媒体数据时,对于一份媒体数据,假设发送端设备采用预设算法对该份媒体数据中各帧媒体数据进行计算,得到第1帧媒体数据的计算结果为4、第2帧媒体数据的计算结果为3、第3帧媒体数据的计算结果为5,将每份媒体数据中各帧媒体数据的计算结果的平均值作为该份媒体数据的第一校验信息,则该份媒体数据的第一校验信息为4。
发送端设备将媒体数据和第一校验信息发送给接收端设备的方法可以为以下两种方式:
方式一:发送端设备将第一校验信息携带在媒体数据的扩展字段中,并将扩展字段携带有第一校验信息的媒体数据发送给接收端设备。
发送端设备在媒体数据中添加扩展字段,该扩展字段可以位于媒体文件中存储所有媒体数据的区域之前或位于媒体文件中存储所有媒体数据的区域之后,该扩展字段也可以穿插在媒体文件中存储所有媒体数据的区域内。发送端设备在添加的扩展字段中携带第一校验信息,将扩展字段携带有第一校验信息的媒体数据发送给接收端设备。
媒体文件中媒体数据与扩展字段的位置关系如表1所示。扩展字段可以位于媒体文件中存储所有媒体数据的区域之前,如图表1中的关系1所示。扩展字段可以位于媒体文件中存储所有媒体数据的区域之后,如图表1中的关系2所示。扩展字段位于媒体文件中每份媒体数据之后,如图表1中的关系3所示。扩展字段可以位于媒体文件中每份媒体数据之前,如图表1中的关系4所示。
表1媒体文件中媒体数据与扩展字段的位置关系
针对媒体数据与扩展字段的不同位置关系,发送端设备可以按照不同的发送顺序将扩展字段携带有第一校验信息的媒体数据发送给接收端设备。针对表1中的关系1或关系2,扩展字段中携带有媒体文件中所有媒体数据对应的所有第一校验信息,发送端设备可以先发送媒体文件中的所有媒体数据再发送该扩展字段,发送端设备也可以先发送该扩展字段再发送媒体文件中的所有媒体数据。针对表1中的关系3或关系4,对于媒体数据1和扩展字段1,扩展字段1中携带有媒体数据1对应的第一校验信息,媒体数据1可以是媒体文件中的一份媒体数据,也可以是媒体文件中的多份媒体数据。发送端设备可以同步发送媒体数据1和扩展字段1,待接收端设备校验媒体数据1之后,再发送媒体数据2和扩展字段2。
如图2所示,发送端设备在媒体数据中添加扩展字段的具体方法包括以下步骤:
S201、发送端设备分析媒体数据的媒体格式,根据该媒体数据的媒体格式确定在该媒体数据中添加扩展字段的方式。
S202、发送端设备采用预设算法计算该媒体数据的第一校验信息。
S203、发送端设备确定该媒体数据的帧索引号。
S204、发送端设备根据确定的添加扩展字段的方式,将该媒体数据的帧索引号和第一校验信息携带在该媒体数据的扩展字段中。
对媒体格式不同的媒体文件,添加扩展字段的方式也不相同。以媒体格式为传输流(Transport Stream,TS)的视频文件为例,发送端设备可以通过在视频数据中添加TS空包的方式来实现添加扩展字段。假设将一个待传输的TS视频文件中每一帧视频数据划分为一份,发送端设备依次获取每一帧视频数据的帧索引号,并采用预设算法计算每一帧视频数据的第一校验信息,把每一帧视频数据的帧索引号和第一校验信息携带在TS视频文件中视频数据之前的TS空包中。
如下表2所示为TS空包的格式,0X47、0X1F、0XFF为TS空包标识,用于接收端设备对视频文件中的TS空包进行识别;0X10、0X10为校验数据标识,表示该TS空包存放的数据为第一校验信息,用于该TS空包与其他扩展字段相区别;校验数据共有N份,每份校验数据都以X位帧索引号加Y位第一校验信息到的形式存放在TS空包中,N、X、Y的数值根据实际校验数据进行设置。
表2 TS空包
需要说明的是,表2中TS空包的格式仅为实际应用中的一种形式,本发明实施例对TS空包的格式不作限定。
方式二:发送端设备将第一校验信息携带在独立于媒体文件的文件中,并将媒体数据和独立于媒体文件的文件发送给接收端设备。
发送端设备采用预设算法对媒体数据进行计算得到第一校验信息之后,发送端设备生成一个独立于媒体文件的文件,将第一校验信息携带在独立于媒体文件的文件中。发送端设备将媒体数据和独立于媒体文件的文件发送给接收端设备,该独立于媒体文件的文件与媒体文件相关联。独立于媒体文件的文件可以通过与媒体文件的名称相同、扩展名不同的方式与媒体文件相关联。
如图3所示,发送端设备生成独立于媒体文件的文件的具体方法包括以下步骤:
S301、发送端设备采用预设算法计算得到每份媒体数据对应的第一校验信息。
S302、发送端设备确定每份媒体数据的帧索引号。
S303、发送端设备将每份媒体数据的帧索引号和第一校验信息携带在独立于媒体文件的文件中。
可选的,一个独立于媒体文件的文件中可以携带有媒体文件中的一份媒体数据对应的第一校验信息,也可以携带有媒体文件中的多份媒体数据中每份媒体数据分别对应的第一校验信息,还可以携带有媒体文件中的所有媒体数据中每份媒体数据分别对应的第一校验信息。
可选的,发送端设备向接收端设备同步发送至少一份媒体数据和携带有该至少一份媒体数据中每份媒体数据对应的第一校验信息的独立于媒体文件的文件;发送端设备向接收端设备先发送携带有至少一份第一校验信息的独立于媒体文件的文件,再向接收端设备发送该至少一份第一校验信息中每份第一校验信息对应的媒体数据;发送端设备向接收端设备先发送至少一份媒体数据,再向接收端设备发送携带有该至少一份媒体数据中每份媒体数据对应的第一校验信息的独立于媒体文件的文件。
可选的,发送端设备采用预设算法对媒体数据进行计算得到第一校验信息之后,发送端设备对第一校验信息进行计算得到第二校验信息,将第二校验信息携带在独立于媒体文件的文件中,该第二校验信息用于接收端设备判断发送端设备是否需要向接收端设备重传媒体文件。当接收端设备接收到独立于媒体文件的文件之后,接收端设备根据第二校验信息对第一校验信息进行校验。当对第一校验信息校验正确时,接收端设备确定接收的第一校验信息正确。当对第一校验信息校验错误时,接收端设备确定接收的第一校验信息错误,接收端设备向发送端设备请求重传媒体文件,从而通过第二校验信息可以对第一校验信息进行校验,保证了接收端设备接收的第一校验信息的正确性。
以发送端设备采用消息摘要算法(Message Digest Algorithm,MD)5对第一校验信息计算得到第二校验信息为例,发送端设备采用预设算法对媒体数据进行计算得到第一校验信息之后,发送端设备采用MD5对第一校验信息进行计算得到MD5值,将该MD5值携带在独立于媒体文件的文件中。当接收端设备接收到独立于媒体文件的文件之后,接收端设备根据该文件中携带的MD5值,计算该文件中携带的第一校验信息的MD5值。当接收端设备接收的MD5值与计算的MD5值一致时,接收端设备确定接收的第一校验信息正确。当接收端设备接收的MD5值与计算的MD5值不一致时,接收端设备向发送端设备请求重传媒体文件。
需要说明的是,除了方式一和方式二之外,发送端设备可以采用其他方式将媒体数据和第一校验信息发送给接收端设备。
可选的,发送端设备可以先针对预设份数的媒体数据中的一份或多份媒体数据计算得到对应的第一校验信息,再将该一份或多份媒体数据和该一份或多份媒体数据对应的第一校验信息发送给接收端设备。发送端设备也可以先针对预设份数的媒体数据中的一份或多份数据计算得到对应的第一校验信息,将该一份或多份媒体数据和该一份或多份媒体数据对应的第一校验信息发送给接收端设备,再计算预设份数的媒体数据中未经过计算的一份或多份媒体数据得到对应的第一校验信息,将该一份或多份媒体数据和该一份或多份媒体数据对应的第一校验信息发送给接收端设备。发送端设备还可以先将预设份数的媒体数据中的一份或多份媒体数据发送给接收端设备,再计算该一份或多份媒体数据对应的第一校验信息,将该一份或多份媒体数据对应的第一校验信息发送给接收端设备。
本发明实施例提供的媒体文件的传输方法中,发送端设备将待发送的媒体文件划分为预设份数的媒体数据,对于每份媒体数据,发送端设备都采用预设算法对媒体数据进行计算得到第一校验信息,并将媒体数据和第一校验信息发送给接收端设备,接收端设备通过第一校验信息判断接收的每份媒体数据是否出现错误,进而接收端设备判断发送端设备是否需要向接收端设备重传媒体数据,实现了传输媒体文件的场景中当媒体文件传输过程中出现错误时,发送端设备只向接收端设备重传媒体文件中出现错误的部分,既保证了接收端设备所接收的媒体文件的正确性,还缩短了媒体文件的传输时间,提高了媒体文件的传输效率。
如图4所示,本发明实施例提供了一种媒体文件的传输方法,此方法的执行主体为接收端设备,此方法包括:
S401、接收端设备接收发送端设备发送的媒体数据和第三校验信息,媒体数据为发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的校验信息。
图4所示的接收端设备对应的方法中的第三校验信息与图1所示的发送端设备对应的方法中的第一校验信息相同。接收端设备接收发送端设备发送的媒体数据和第三校验信息的方法可以为以下两种方式:
方式一:接收端设备接收发送端设备发送的媒体数据,该媒体数据的扩展字段中携带有第三校验信息。
接收端设备从接收到的每份扩展字段携带有第三校验信息的媒体数据中获取媒体数据以及扩展字段中携带的第三校验信息。以接收端设备获取每一帧媒体数据以及每一帧媒体数据的第三校验信息为例,接收端设备读取扩展字段中的帧索引号,按照帧索引号分别获取每份媒体数据中各帧媒体数据以及扩展字段中携带的各帧的第三校验信息。
方式二:接收端设备接收发送端设备发送的媒体数据和独立于媒体文件的文件,独立于媒体文件的文件中携带有第三校验信息。
接收端设备接收发送端设备发送的媒体数据和独立于媒体文件的文件,并从接收到的独立于媒体文件的文件中获取该独立于媒体文件的文件中携带的第三校验信息。
可选的,当独立于媒体文件的文件中还携带有第五校验信息时,该第五校验信息为发送端设备对第三校验信息进行计算得到的校验信息,该第五校验信息与发送端设备侧的方法中的第二校验信息相同。发送端设备对第三校验信息进行计算得到该第五校验信息之后,将该第五校验信息携带在独立于媒体文件的文件中。接收端设备接收发送端设备发送的媒体数据和独立于媒体文件的文件之后,接收端设备还根据第五校验信息对接收的第三校验信息进行校验。当接收端设备对接收的第三校验信息校验正确时,接收端设备确定接收的第三校验信息正确。当对第三校验信息校验错误时,接收端设备向发送端设备请求重传媒体文件。接收端设备对接收的第三校验信息的校验过程参见上文发送端设备侧的相关描述,在此不再赘述。
需要说明的是,除了方式一和方式二之外,接收端设备还可以通过其他方式接收发送端设备发送的媒体数据和第三校验信息。
S402、接收端设备采用预设算法对接收的媒体数据进行计算得到第四校验信息。
其中,第四校验信息为接收端设备对接收到的媒体数据进行计算得到的校验信息。为了保证对接收的媒体数据进行校验时的正确性,接收端设备采用了与发送端设备计算第三校验信息时相同的预设算法,对接收的媒体数据进行计算得到第四校验信息。预设算法参见上文发送端设备侧的具体说明,在此不再赘述。
S403、当第三校验信息与第四校验信息满足预设条件时,接收端设备确定接收的媒体数据正确;或者,当第三校验信息与第四校验信息不满足预设条件时,接收端设备向发送端设备请求重传媒体数据。
其中,预设条件可以为接收端设备接收的媒体数据的错误率不超过设定的错误率,预设条件也可以为接收端设备接收的媒体数据的第三校验信息与计算的第四校验信息之差不超过设定值。在实际应用中,接收端设备还可以根据实际情况设置其他预设条件,以保证接收端设备接收的媒体数据满足接收端设备对媒体数据的正确性的要求。
当第三校验信息与第四校验信息满足预设条件时,接收端设备确定接收的媒体数据正确。当第三校验信息与第四校验信息不满足预设条件时,接收端设备向发送端设备请求重传媒体数据。对于每份媒体数据,接收端设备都通过判断第三校验信息与第四校验信息是否满足预设条件,来判断发送端设备是否需要向接收端设备重传该份媒体数据,实现了在传输媒体文件的场景中当媒体文件在传输过程中出现错误时,只重传媒体文件中出现错误的部分,保证了接收端设备所接收的媒体文件的正确性,提高了媒体文件的传输效率。
可选的,预设条件为接收端设备接收的媒体数据的错误率不超过设定的错误率。当接收端设备根据第三校验信息和第四校验信息确定的媒体数据的错误率不大于预设的错误率时,该份媒体数据中出现错误的部分不会对该媒体文件的播放或存储造成影响,因此接收端设备确定接收的媒体数据正确。当接收端设备根据第三校验信息和第四校验信息确定的媒体数据的错误率大于预设的错误率时,该份媒体数据中出现错误的部分会对该媒体文件的播放或存储造成影响,因此接收端设备向发送端设备请求重传媒体数据。
以设定的错误率为1%为例,假设一份媒体数据为一帧媒体数据,计算第三校验信息和第四校验信息的预设算法为求该帧媒体数据每一位数据的值之和,对于每一帧媒体数据,接收端设备按照以下公式计算该帧媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
对于一帧媒体数据,当该帧媒体数据的错误率小于1%时,接收端设备确定接收的该帧媒体数据正确。当该帧媒体数据的错误率大于1%时,接收端设备向发送端设备请求重传媒体数据。
可选的,预设条件为接收端设备接收的第三校验信息和计算的第四校验信息之间的差值不超过预设的数值,或者接收端设备接收的第三校验信息和计算的第四校验信息之间的比值不超过预设的数值。当接收端设备接收的第三校验信息和计算的第四校验信息之间的差值或比值不大于预设的数值时,接收端设备确定接收的媒体数据正确。当接收端设备接收的第三校验信息和计算的第四校验信息之间的差值或比值大于预设的数值时,接收端设备向发送端设备请求重传媒体数据。
需要说明的是,图1所示的发送端设备对应的方法中的第一校验信息与图4所示的接收端设备对应的方法中的第三校验信息相同,图1所示的发送端设备对应的方法中的第二校验信息与图4所示的接收端设备对应的方法中的第五校验信息相同。上文所述的第一校验信息、第二校验信息、第三校验信息、第三校验信息、第四校验信息、第五校验信息以具体方法中所描述的功能为准。
本发明实施例提供的媒体文件的传输方法中,接收端设备接收发送端设备发送的媒体数据和第三校验信息,该第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的;接收端设备采用与发送端设备相同的预设算法对接收的媒体数据进行计算得到第四校验信息;当第三校验信息与第四校验信息满足预设条件时,接收端设备确定接收的媒体数据正确,当第三校验信息与第四校验信息不满足预设条件时,接收端设备向发送端设备请求重传媒体数据。本发明实施例提供的技术方案通过接收端设备对每份媒体数据进行校验得到的校验结果判断接收的每份媒体数据是否出现错误,从而实现了接收端设备判断是否发送端设备是否需要向接收端设备重传媒体数据,进而在传输媒体文件的场景中当媒体文件传输过程中出现错误时,发送端设备只向接收端设备重传媒体文件中出现错误的部分,既保证了接收端设备所接收的媒体文件的正确性,还缩短了媒体文件的传输时间,提高了媒体文件的传输效率。
结合以上实施例,本发明实施例提供了一种发送端设备,该发送端设备可以采用图1对应的实施例提供的方法,参阅图5所示,发送端设备500包括:处理单元501和收发单元502。
处理单元501,用于将待发送的媒体文件划分为预设份数的媒体数据;
针对预设份数的媒体数据中的每份媒体数据执行如下操作:
处理单元501,还用于采用预设算法对媒体数据进行计算得到第一校验信息,第一校验信息用于接收端设备判断发送端设备500是否需要向接收端设备重传媒体数据;
收发单元502,用于将媒体数据和处理单元501计算得到的第一校验信息发送给接收端设备。
可选的,收发单元502具体用于:
将扩展字段携带有处理单元501计算得到的第一校验信息的媒体数据发送给接收端设备;或者,
将媒体数据和独立于媒体文件的文件发送给接收端设备,处理单元501计算得到的第一校验信息携带在独立于媒体文件的文件中。
可选的,处理单元501还用于:
在采用预设算法对媒体数据进行计算得到第一校验信息之后,对第一校验信息进行计算得到第二校验信息,将第二校验信息携带在独立于媒体文件的文件中,第二校验信息用于接收端设备判断发送端设备500是否需要向接收端设备重传媒体文件。
需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
基于以上实施例,本发明实施例还提供了一种发送端设备,该发送端设备可采用图1对应的实施例提供的方法,可以与图5所示的发送端设备是相同的设备。参阅图6所示,发送端设备600包括:处理器601、收发机602、总线603以及存储器604,其中:
处理器601,用于读取存储器604中的程序,执行下列过程:
处理器601,用于将待发送的媒体文件划分为预设份数的媒体数据;
针对预设份数的媒体数据中的每份媒体数据执行如下操作:
处理器601,还用于采用预设算法对媒体数据进行计算得到第一校验信息,第一校验信息用于接收端设备判断发送端设备600是否需要向接收端设备重传媒体数据;
处理器601,还用于控制收发机602将媒体数据和处理器601计算得到的第一校验信息发送给接收端设备。
可选的,处理器601具体用于:
控制收发机602将扩展字段携带有处理器601计算得到的第一校验信息的媒体数据发送给接收端设备;或者,
控制收发机602将媒体数据和独立于媒体文件的文件发送给接收端设备,处理器601计算得到的第一校验信息携带在独立于媒体文件的文件中。
可选的,处理器601还用于:
在采用预设算法对媒体数据进行计算得到第一校验信息之后,对第一校验信息进行计算得到第二校验信息,将第二校验信息携带在独立于媒体文件的文件中,第二校验信息用于接收端设备判断发送端设备600是否需要向接收端设备重传媒体文件。
收发机602,用于在处理器601的控制下接收和发送数据。
处理器601、收发机602以及存储器604通过总线603相互连接;总线603可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。
其中,在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器601代表的一个或多个处理器和存储器604代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机602可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器601负责管理总线架构和通常的处理,存储器604可以存储处理器601在执行操作时所使用的数据。
可选的,处理器601可以是中央处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)。
本发明实施例提供一种发送端设备,该发送端设备将待发送的媒体文件划分为预设份数的媒体数据,对于每份媒体数据,发送端设备都采用预设算法对媒体数据进行计算得到第一校验信息,并将媒体数据和第一校验信息发送给接收端设备,接收端设备通过第一校验信息判断接收的每份媒体数据是否出现错误,进而接收端设备判断发送端设备是否需要向接收端设备重传媒体数据,实现了传输媒体文件的场景中当媒体文件传输过程中出现错误时,发送端设备只向接收端设备重传媒体文件中出现错误的部分,既保证了接收端设备所接收的媒体文件的正确性,还缩短了媒体文件的传输时间,提高了媒体文件的传输效率。
结合以上实施例,本发明实施例提供了一种接收端设备,该接收端设备可以采用图4对应的实施例提供的方法,参阅图7所示,接收端设备700包括:收发单元701和处理单元702。
收发单元701,用于接收发送端设备发送的媒体数据和第三校验信息,媒体数据为发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的校验信息;
处理单元702,用于采用预设算法对收发单元701接收的媒体数据进行计算得到第四校验信息;当第三校验信息与第四校验信息满足预设条件时,确定收发单元701接收的媒体数据正确;或者,当第三校验信息与第四校验信息不满足预设条件时,控制收发单元701向发送端设备请求重传媒体数据。
可选的,处理单元702当第三校验信息与第四校验信息满足预设条件时,确定收发单元701接收的媒体数据正确时,具体用于:
当处理单元702根据第三校验信息和第四校验信息确定的媒体数据的错误率不大于预设的错误率时,确定收发单元701接收的媒体数据正确;
处理单元702当第三校验信息与第四校验信息不满足预设条件时,控制收发单元701向发送端设备请求重传媒体数据时,具体用于:
当处理单元702根据第三校验信息和第四校验信息确定的媒体数据的错误率大于预设的错误率时,控制收发单元701向发送端设备请求重传媒体数据。
可选的,处理单元702根据第三校验信息和第四校验信息确定媒体数据的错误率时,具体用于:
根据第三校验信息和第四校验信息,通过以下公式计算媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
可选的,收发单元701在接收发送端设备发送的媒体数据和第三校验信息时,具体用于:
接收发送端设备发送的媒体数据,媒体数据的扩展字段中携带有第三校验信息;或者,
接收发送端设备发送的媒体数据和独立于媒体文件的文件,独立于媒体文件的文件中携带有第三校验信息。
可选的,独立于媒体文件的文件中还携带有第五校验信息,第五校验信息为发送端设备对第三校验信息进行计算得到的校验信息;
处理单元702还用于:
在收发单元701接收发送端设备发送的媒体数据和独立于媒体文件的文件之后,根据收发单元701接收的独立于媒体文件的文件携带的第五校验信息对第三校验信息进行校验;
当对第三校验信息校验正确时,确定第三校验信息正确;或者,当对第三校验信息校验错误时,控制收发单元701向发送端设备请求重传媒体文件。
需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
基于以上实施例,本发明实施例还提供了一种接收端设备,该接收端设备可采用图4对应的实施例提供的方法,可以与图8所示的接收端设备是相同的设备。参阅图8所示,接收端设备800包括:处理器801、收发机802、总线803以及存储器804,其中:
处理器801,用于读取存储器804中的程序,执行下列过程:
处理器801,用于控制收发机802接收发送端设备发送的媒体数据和第三校验信息,媒体数据为发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的校验信息;
处理器801,还用于采用预设算法对收发机802接收的媒体数据进行计算得到第四校验信息;当第三校验信息与第四校验信息满足预设条件时,确定收发机802接收的媒体数据正确;或者,当第三校验信息与第四校验信息不满足预设条件时,控制收发机802向发送端设备请求重传媒体数据。
可选的,处理器801当第三校验信息与第四校验信息满足预设条件时,确定收发机802接收的媒体数据正确时,具体用于:
当处理器801根据第三校验信息和第四校验信息确定的媒体数据的错误率不大于预设的错误率时,确定收发机802接收的媒体数据正确;
处理器801当第三校验信息与第四校验信息不满足预设条件时,控制收发机802向发送端设备请求重传媒体数据时,具体用于:
当处理器801根据第三校验信息和第四校验信息确定的媒体数据的错误率大于预设的错误率时,控制收发机802向发送端设备请求重传媒体数据。
可选的,处理器801根据第三校验信息和第四校验信息确定媒体数据的错误率时,具体用于:
根据第三校验信息和第四校验信息,通过以下公式计算媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
可选的,处理器801在控制收发机802接收发送端设备发送的媒体数据和第三校验信息时,具体用于:
控制收发机802接收发送端设备发送的媒体数据,媒体数据的扩展字段中携带有第三校验信息;或者,
控制收发机802接收发送端设备发送的媒体数据和独立于媒体文件的文件,独立于媒体文件的文件中携带有第三校验信息。
可选的,独立于媒体文件的文件中还携带有第五校验信息,第五校验信息为发送端设备对第三校验信息进行计算得到的校验信息;
处理器801还用于:
在收发机802接收发送端设备发送的媒体数据和独立于媒体文件的文件之后,根据收发机802接收的独立于媒体文件的文件携带的第五校验信息对第三校验信息进行校验;
当对第三校验信息校验正确时,确定第三校验信息正确;或者,当对第三校验信息校验错误时,控制收发机802向发送端设备请求重传媒体文件。
收发机802,用于在处理器801的控制下接收和发送数据。
处理器801、收发机802以及存储器804通过总线803相互连接;总线803可以是外设部件互连标准总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。
其中,在图8中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器801代表的一个或多个处理器和存储器804代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机802可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器801负责管理总线架构和通常的处理,存储器804可以存储处理器801在执行操作时所使用的数据。
可选的,处理器801可以是中央处理器、ASIC、FPGA或CPLD。
本发明实施例提供一种接收端设备,该接收端设备接收发送端设备发送的媒体数据和第三校验信息,该第三校验信息为发送端设备采用预设算法对媒体数据进行计算得到的;接收端设备采用与发送端设备相同的预设算法对接收的媒体数据进行计算得到第四校验信息;当第三校验信息与第四校验信息满足预设条件时,接收端设备确定接收的媒体数据正确,当第三校验信息与第四校验信息不满足预设条件时,接收端设备向发送端设备请求重传媒体数据。本发明实施例提供的技术方案通过接收端设备对每份媒体数据进行校验得到的校验结果判断接收的每份媒体数据是否出现错误,从而实现了接收端设备判断是否发送端设备是否需要向接收端设备重传媒体数据,进而在传输媒体文件的场景中当媒体文件传输过程中出现错误时,发送端设备只向接收端设备重传媒体文件中出现错误的部分,既保证了接收端设备所接收的媒体文件的正确性,还缩短了媒体文件的传输时间,提高了媒体文件的传输效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种媒体文件的传输方法,其特征在于,包括:
发送端设备将待发送的媒体文件划分为预设份数的媒体数据;
所述发送端设备针对所述预设份数的媒体数据中的每份媒体数据执行如下操作:
采用预设算法对所述媒体数据进行计算得到第一校验信息,并将所述媒体数据和所述第一校验信息发送给接收端设备,所述第一校验信息用于所述接收端设备判断所述发送端设备是否需要向所述接收端设备重传所述媒体数据。
2.如权利要求1所述的方法,其特征在于,所述发送端设备将所述媒体数据和所述第一校验信息发送给接收端设备,包括:
所述发送端设备将所述第一校验信息携带在所述媒体数据的扩展字段中,并将所述扩展字段携带有所述第一校验信息的所述媒体数据发送给所述接收端设备;或者,
所述发送端设备将所述第一校验信息携带在独立于所述媒体文件的文件中,并将所述媒体数据和所述独立于所述媒体文件的文件发送给所述接收端设备。
3.如权利要求2所述的方法,其特征在于,所述发送端设备采用所述预设算法对所述媒体数据进行计算得到所述第一校验信息之后,还包括:
所述发送端设备对所述第一校验信息进行计算得到第二校验信息,将所述第二校验信息携带在所述独立于所述媒体文件的文件中,所述第二校验信息用于所述接收端设备判断所述发送端设备是否需要向所述接收端设备重传所述媒体文件。
4.一种媒体文件的传输方法,其特征在于,包括:
接收端设备接收发送端设备发送的媒体数据和第三校验信息,所述媒体数据为所述发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,所述第三校验信息为所述发送端设备采用预设算法对所述媒体数据进行计算得到的校验信息;
所述接收端设备采用所述预设算法对接收的所述媒体数据进行计算得到第四校验信息;
当所述第三校验信息与所述第四校验信息满足预设条件时,所述接收端设备确定接收的所述媒体数据正确;或者,当所述第三校验信息与所述第四校验信息不满足预设条件时,所述接收端设备向所述发送端设备请求重传所述媒体数据。
5.如权利要求4所述的方法,其特征在于,所述当所述第三校验信息与所述第四校验信息满足预设条件时,所述接收端设备确定接收的所述媒体数据正确,包括:
当所述接收端设备根据所述第三校验信息和所述第四校验信息确定的所述媒体数据的错误率不大于预设的错误率时,所述接收端设备确定接收的所述媒体数据正确;
所述当所述第三校验信息与所述第四校验信息不满足预设条件时,所述接收端设备向所述发送端设备请求重传所述媒体数据,包括:
当所述接收端设备根据所述第三校验信息和所述第四校验信息确定的所述媒体数据的错误率大于预设的错误率时,所述接收端设备向所述发送端设备请求重传所述媒体数据。
6.如权利要求5所述的方法,其特征在于,所述接收端设备根据所述第三校验信息和所述第四校验信息确定所述媒体数据的错误率的方法,具体包括:
所述接收端设备根据所述第三校验信息和所述第四校验信息,通过以下公式计算所述媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
7.如权利要求4所述的方法,其特征在于,所述接收端设备接收发送端设备发送的媒体数据和所述第三校验信息,包括:
所述接收端设备接收所述发送端设备发送的所述媒体数据,所述媒体数据的扩展字段中携带有所述第三校验信息;或者,
所述接收端设备接收所述发送端设备发送的所述媒体数据和独立于所述媒体文件的文件,所述独立于所述媒体文件的文件中携带有所述第三校验信息。
8.如权利要求7所述的方法,其特征在于,所述独立于所述媒体文件的文件中还携带有第五校验信息,所述第五校验信息为所述发送端设备对所述第三校验信息进行计算得到的校验信息;
所述接收端设备接收所述发送端设备发送的所述媒体数据和独立于所述媒体文件的文件之后,还包括:
所述接收端设备根据所述独立于所述媒体文件的文件携带的所述第五校验信息对所述第三校验信息进行校验;
当对所述第三校验信息校验正确时,所述接收端设备确定所述第三校验信息正确;或者,当对所述第三校验信息校验错误时,所述接收端设备向所述发送端设备请求重传所述媒体文件。
9.一种发送端设备,其特征在于,包括:
处理单元,用于将待发送的媒体文件划分为预设份数的媒体数据;
针对所述预设份数的媒体数据中的每份媒体数据执行如下操作:
所述处理单元,还用于采用预设算法对所述媒体数据进行计算得到第一校验信息,所述第一校验信息用于所述接收端设备判断所述发送端设备是否需要向所述接收端设备重传所述媒体数据;
收发单元,用于将所述媒体数据和所述处理单元计算得到的第一校验信息发送给接收端设备。
10.如权利要求9所述的发送端设备,其特征在于,所述收发单元具体用于:
将扩展字段携带有所述处理单元计算得到的第一校验信息的所述媒体数据发送给所述接收端设备;或者,
将所述媒体数据和独立于所述媒体文件的文件发送给所述接收端设备,所述处理单元计算得到的第一校验信息携带在所述独立于所述媒体文件的文件中。
11.如权利要求10所述的发送端设备,其特征在于,所述处理单元还用于:
在采用所述预设算法对所述媒体数据进行计算得到所述第一校验信息之后,对所述第一校验信息进行计算得到第二校验信息,将所述第二校验信息携带在所述独立于所述媒体文件的文件中,所述第二校验信息用于所述接收端设备判断所述发送端设备是否需要向所述接收端设备重传所述媒体文件。
12.一种接收端设备,其特征在于,包括:
收发单元,用于接收发送端设备发送的媒体数据和第三校验信息,所述媒体数据为所述发送端设备将待发送的媒体文件划分为预设份数的媒体数据中的任意一份媒体数据,所述第三校验信息为所述发送端设备采用预设算法对所述媒体数据进行计算得到的校验信息;
处理单元,用于采用所述预设算法对所述收发单元接收的所述媒体数据进行计算得到第四校验信息;当所述第三校验信息与所述第四校验信息满足预设条件时,确定所述收发单元接收的所述媒体数据正确;或者,当所述第三校验信息与所述第四校验信息不满足预设条件时,控制所述收发单元向所述发送端设备请求重传所述媒体数据。
13.如权利要求12所述的接收端设备,其特征在于,所述处理单元当所述第三校验信息与所述第四校验信息满足预设条件时,确定所述收发单元接收的所述媒体数据正确时,具体用于:
当根据所述第三校验信息和所述第四校验信息确定的所述媒体数据的错误率不大于预设的错误率时,确定所述收发单元接收的所述媒体数据正确;
所述处理单元当所述第三校验信息与所述第四校验信息不满足预设条件时,控制所述收发单元向所述发送端设备请求重传所述媒体数据时,具体用于:
当根据所述第三校验信息和所述第四校验信息确定的所述媒体数据的错误率大于预设的错误率时,控制所述收发单元向所述发送端设备请求重传所述媒体数据。
14.如权利要求13所述的接收端设备,其特征在于,所述处理单元根据所述第三校验信息和所述第四校验信息确定所述媒体数据的错误率时,具体用于:
根据所述第三校验信息和所述第四校验信息,通过以下公式计算所述媒体数据的错误率:
错误率=|第四校验信息-第三校验信息|/第三校验信息。
15.如权利要求12所述的接收端设备,其特征在于,所述收发单元在接收发送端设备发送的媒体数据和第三校验信息时,具体用于:
接收所述发送端设备发送的所述媒体数据,所述媒体数据的扩展字段中携带有所述第三校验信息;或者,
接收所述发送端设备发送的所述媒体数据和独立于所述媒体文件的文件,所述独立于所述媒体文件的文件中携带有所述第三校验信息。
16.如权利要求15所述的接收端设备,其特征在于,所述独立于所述媒体文件的文件中还携带有第五校验信息,所述第五校验信息为所述发送端设备对所述第三校验信息进行计算得到的校验信息;
所述处理单元还用于:
在所述收发单元接收所述发送端设备发送的所述媒体数据和独立于所述媒体文件的文件之后,根据所述收发单元接收的独立于所述媒体文件的文件携带的所述第五校验信息对所述第三校验信息进行校验;
当对所述第三校验信息校验正确时,确定所述第三校验信息正确;或者,当对所述第三校验信息校验错误时,控制所述收发单元向所述发送端设备请求重传所述媒体文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710104636.4A CN108512809A (zh) | 2017-02-24 | 2017-02-24 | 一种媒体文件的传输方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710104636.4A CN108512809A (zh) | 2017-02-24 | 2017-02-24 | 一种媒体文件的传输方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108512809A true CN108512809A (zh) | 2018-09-07 |
Family
ID=63373069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710104636.4A Pending CN108512809A (zh) | 2017-02-24 | 2017-02-24 | 一种媒体文件的传输方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108512809A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995392A (zh) * | 2019-11-28 | 2020-04-10 | 上海集成电路研发中心有限公司 | 一种数据传输方法及装置 |
CN114760533A (zh) * | 2022-05-17 | 2022-07-15 | 北京达佳互联信息技术有限公司 | 校验值存储方法、帧数据校验方法、装置、电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061287A1 (en) * | 2001-09-26 | 2003-03-27 | Chee Yu | Method and system for delivering files in digital file marketplace |
CN101453478A (zh) * | 2007-11-28 | 2009-06-10 | 新奥特(北京)视频技术有限公司 | 一种在文件传输中的完整性校验方法 |
CN102281121A (zh) * | 2010-06-13 | 2011-12-14 | 中兴通讯股份有限公司 | 一种数据文件传输和校验的方法、设备及系统 |
-
2017
- 2017-02-24 CN CN201710104636.4A patent/CN108512809A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061287A1 (en) * | 2001-09-26 | 2003-03-27 | Chee Yu | Method and system for delivering files in digital file marketplace |
CN101453478A (zh) * | 2007-11-28 | 2009-06-10 | 新奥特(北京)视频技术有限公司 | 一种在文件传输中的完整性校验方法 |
CN102281121A (zh) * | 2010-06-13 | 2011-12-14 | 中兴通讯股份有限公司 | 一种数据文件传输和校验的方法、设备及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995392A (zh) * | 2019-11-28 | 2020-04-10 | 上海集成电路研发中心有限公司 | 一种数据传输方法及装置 |
CN110995392B (zh) * | 2019-11-28 | 2022-08-02 | 上海集成电路研发中心有限公司 | 一种数据传输方法及装置 |
CN114760533A (zh) * | 2022-05-17 | 2022-07-15 | 北京达佳互联信息技术有限公司 | 校验值存储方法、帧数据校验方法、装置、电子设备 |
CN114760533B (zh) * | 2022-05-17 | 2024-04-09 | 北京达佳互联信息技术有限公司 | 校验值存储方法、帧数据校验方法、装置、电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112887120B (zh) | 一种信息处理方法及装置 | |
CN103731499B (zh) | 终端和文件传输方法 | |
JP2016201794A (ja) | 故障検出装置、方法及びシステム | |
CN105225125B (zh) | 信息校验方法及设备 | |
EP3474499B1 (en) | Network performance detection method and apparatus | |
US20210081406A1 (en) | Blockchain network | |
CN105743816B (zh) | 一种链路聚合方法及装置 | |
CN106656679A (zh) | 可用带宽测量方法和装置 | |
CN108512809A (zh) | 一种媒体文件的传输方法及设备 | |
CN104038366B (zh) | 集群节点失效检测方法和系统 | |
CN111385163A (zh) | 流量的分析、检测方法及装置 | |
CN104050054B (zh) | 安装包安装失败的处理方法及原因确定方法及装置 | |
CN109120385A (zh) | 一种基于数据传输系统的数据传输方法、装置及系统 | |
CN103534973A (zh) | 一种减少传输控制层确认报文的方法、装置和系统 | |
CN106488563A (zh) | 一种资源选择方法及装置 | |
CN108062085A (zh) | 控制方法和控制系统 | |
CN109088766B (zh) | 一种基于配对测试的互连网络故障检测与定位方法 | |
US20170279700A1 (en) | Method and apparatus for transmitting data | |
CN109889418A (zh) | 基于can总线的数据传输方法和装置 | |
CN113835946A (zh) | 数据交换的压力测试方法 | |
CN101783712B (zh) | Lte版本识别的方法、用户终端和网络节点 | |
CN113011901A (zh) | 股权数据的获取方法及装置 | |
CN108334448A (zh) | 代码验证方法、装置及设备 | |
KR20140142276A (ko) | 통신 장치 및 통신 방법 | |
CN110502502A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180907 |
|
WD01 | Invention patent application deemed withdrawn after publication |