一种文件传输方法、装置、电子设备及存储介质与流程

文档序号:35343526发布日期:2023-09-07 14:59阅读:29来源:国知局
一种文件传输方法、装置、电子设备及存储介质与流程

【】本技术实施例涉及通信,尤其涉及一种文件传输方法、装置、电子设备及存储介质。

背景技术

0、
背景技术:

1、媒体传输协议(media transfer protocol,mtp)是一种支持在移动终端与计算机之间进行视频、图片、音乐等媒体文件互传的开放性协议。而由于这种媒体传输协议采用了串行发送的传输方式,在计算机向移动终端传输大量文件时,每个文件都需要先在移动终端的mtp数据库中完成文件信息同步,并在完成同步后再执行下个文件的传输。若上个文件未在mtp数据库同步完成,则下个文件必须一直等待到同步完成后才能开始发送。这种传输方式会导致文件的传输速度被严重拖慢,无法满足用户对于更快传输速度的需求。


技术实现思路

0、
技术实现要素:

1、本技术实施例提供了一种文件传输方法、装置、电子设备及存储介质,能够通过第一线程传输文件、第二线程同步媒体传输协议数据库的方式,使文件传输与文件信息同步执行,从而加快计算机设备向移动终端发送文件的传输速度。

2、第一方面,本技术实施例提供了一种文件传输方法,应用于计算机设备,所述计算机设备与移动终端连接,所述方法包括:

3、基于媒体传输协议创建针对至少一个第一媒体文件的传输任务,每个所述第一媒体文件包括第一文件数据和第一元数据信息;

4、响应所述传输任务,创建第一线程与第二线程;

5、基于所述第一线程向所述移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息。

6、本技术实施例中,通过改变传统媒体传输协议串行发送的默认规则,在基于一个线程进行第一文件数据发送的基础上,额外设置一个线程用于传输第一元数据信息,使得媒体传输协议数据库的同步和文件数据发送可以同时进行,从而节省文件批量发送时对移动终端的媒体传输协议数据库进行同步所消耗的时间,加快文件传输速度。

7、可选的,所述基于所述第一线程向所述移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息之前,所述方法还包括:

8、从所述第一元数据信息中提取出所述第一文件数据对应的第一文件大小;

9、响应于所述第一文件大小大于标准字节大小,将所述第一文件数据输入压缩算法,得到压缩文件数据;

10、根据所述压缩文件数据更新所述第一元数据信息;

11、所述基于所述第一线程向所述移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息包括:

12、基于所述第一线程向所述存储空间传输所述压缩文件数据,以及,基于所述第二线程向所述媒体传输协议数据库传输更新后的所述第一元数据信息。

13、本技术实施例中,通过设置标准字节大小来区分是否需要对第一文件数据进行压缩,并将第一文件大小大于标准字节大小的第一文件数据输入压缩算法压缩后再进行发送,从而针对性压缩体积过大的文件,减少需要传输的第一文件数据的数据量,加快文件传输速度。

14、可选的,所述第一媒体文件为至少两个,所述响应于所述第一文件大小大于标准字节大小,将所述第一文件数据输入压缩算法,得到压缩文件数据之前,所述方法还包括:

15、根据每个所述第一文件数据对应的所述第一文件大小,计算每个所述第一文件大小对应的第一预计传输时间、预计压缩时间以及预计压缩文件大小;

16、计算每个所述预计压缩文件大小对应的第二预计传输时间;

17、计算每个所述第一文件大小对应的所述预计压缩时间与所述第二预计传输时间之和,并将所述预计压缩时间与所述第二预计传输时间之和与所述第一预计传输时间作差,得到时间差值;

18、从多个所述时间差值中查找出绝对值最小的所述时间差值,以及查找出绝对值最小的所述时间差值对应的第一文件大小;

19、将绝对值最小的所述时间差值对应的所述第一文件大小确定为所述标准字节大小。

20、本技术实施例中,通过对第一文件数据的压缩耗时加压缩后传输耗时,以及直接传输的耗时分别进行估算,并对这两者进行作差,确定“是直接传输更快还是压缩后传输更快”的判断标准,从而确保从多个第一文件数据中,能够精准筛选出压缩后传输比直接传输更快的大体积文件数据。

21、可选的,所述基于所述第一线程向所述移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息包括:

22、响应于所述第一文件大小不大于所述标准字节大小,基于所述第一线程向所述存储空间传输所述第一文件数据,以及,基于所述第二线程向所述媒体传输协议数据库传输所述第一元数据信息。

23、本技术实施例中,通过直接对第一文件大小不大于标准字节大小的第一文件数据进行传输,而不是先对其进行压缩再传输,从而确保压缩后传输的传输策略既能够加快较大体积文件传输,又不会因为文件压缩的额外耗时拖慢小体积文件的传输。

24、可选的,所述第一媒体文件为第二媒体文件经过文件处理后生成的,所述第二媒体文件为历史上已传输至所述移动终端的媒体文件,所述第二媒体文件中包括第二元数据信息,所述基于所述第一线程向所述移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息之前,所述方法还包括:

25、读取所述计算机设备的修改日志,所述修改日志用于记录所述第一元数据信息相较于所述第二元数据信息的变更信息;

26、所述基于所述第一线程向所述移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息包括:

27、基于所述第一线程向所述存储空间传输所述第一文件数据,以及,基于所述第二线程向所述媒体传输协议数据库传输所述变更信息。

28、本技术实施例中,通过在终端已存在第一媒体文件的历史版本时,调取计算机设备的修改日志中与第一元数据信息有关的变更信息,并传输该变更信息来代替传输整个第一元数据信息,从而显著缩小第二线程所传输的数据总量,实现降低传输带宽消耗的效果。

29、第二方面,本技术实施例提供了一种文件传输方法,应用于移动终端,所述移动终端与计算机设备连接,所述方法包括:

30、接收所述计算机设备针对至少一个第一媒体文件的传输任务创建请求,在所述移动终端的存储空间中为每个所述第一媒体文件分配存储地址,配置所述移动终端为文件接收模式,所述传输任务创建请求基于媒体传输协议生成,每个所述第一媒体文件包括第一文件数据和第一元数据信息;

31、响应于所述计算机设备创建第一线程与第二线程,将所述第一线程与所述存储空间建立连接,并将所述第二线程与所述移动终端的媒体传输协议数据库建立连接;

32、接收所述第一线程传输的所述第一文件数据,以及,接收所述第二线程传输的所述第一元数据信息;

33、将所述第一文件数据写入所述存储空间,以及,将所述第一元数据信息同步至所述媒体传输协议数据库。

34、本技术实施例中,通过第一线程、第二线程分别接收文件数据和元数据信息,将基于媒体传输协议的文件传输方式中先接收文件数据、后同步元数据信息的发送策略,降低由传输第一元数据信息引起的额外耗时,从而加快文件的传输速度。

35、可选的,所述接收所述第一线程传输的所述第一文件数据,以及,接收所述第二线程传输的所述第一元数据信息包括:

36、获取所述计算机设备使用的压缩算法对应的算法类型;

37、接收所述第一线程传输的压缩文件数据,所述压缩文件数据为所述第一文件数据输入所述压缩算法后生成的;

38、接收所述第二线程传输的更新后的所述第一元数据信息,更新后的所述第一元数据信息为根据所述压缩文件数据更新所述第一元数据信息后得到的;

39、所述将所述第一文件数据写入所述存储空间,以及,将所述第一元数据信息同步至所述媒体传输协议数据库包括:

40、将所述压缩文件数据写入所述存储空间,以及,将更新后的所述第一元数据信息同步至所述媒体传输协议数据库;

41、响应于所述移动终端不支持所述算法类型,向所述计算机设备发送解压失败信息,所述解压失败信息用于表征所述移动终端无法对所述压缩文件数据进行解压缩;或者,

42、响应于所述移动终端支持所述算法类型,使用所述压缩算法对所述压缩文件数据进行解压缩,并使用解压缩后的所述第一文件数据覆盖所述压缩文件数据。

43、本技术实施例中,通过在移动终端接收压缩后的第一文件数据时,判断计算机使用的压缩算法是否被移动终端本地支持,若支持则正常解压缩,若不支持则发送解压失败提醒,从而在移动终端中添加对“压缩后传输”策略的配套文件处理逻辑,确保使用压缩技术加快文件传输速度的同时,能够对传输到移动终端的压缩文件数据进行妥善处理,提升传输策略的灵活性和兼容性。

44、可选的,所述第一媒体文件为第二媒体文件经过文件处理后生成的,所述第二媒体文件为历史上已传输至所述移动终端的媒体文件,所述第二媒体文件中包括第二元数据信息和第二文件数据,所述接收所述第一线程传输的所述第一文件数据,以及,接收所述第二线程传输的所述第一元数据信息包括:

45、接收所述第一线程传输的所述第一文件数据,以及,接收所述第二线程传输的所述第一元数据信息相较于所述第二元数据信息的变更信息;

46、所述将所述第一文件数据写入所述存储空间,以及,将所述第一元数据信息同步至所述媒体传输协议数据库包括:

47、将所述第一文件数据写入所述存储空间,并覆盖所述第二文件数据;

48、基于所述变更信息与所述第二元数据信息,得到所述第一元数据信息。

49、本技术实施例中,通过在移动终端中已经存有第一媒体文件的历史版本文件时,根据计算机设备发送的变更信息将第二元数据信息修改为第一元数据信息,从而使用仅传输变更信息的方式替代发送整个第一元数据信息,降低第二线程传输的总数据量,减少传输带宽消耗。

50、第三方面,本技术实施例提供了一种文件传输装置,设置于计算机设备中,所述计算机设备与移动终端连接,所述装置包括:

51、任务创建单元,用于基于媒体传输协议创建针对至少一个第一媒体文件的传输任务,每个所述第一媒体文件包括第一文件数据和第一元数据信息;

52、线程创建单元,用于响应所述传输任务,创建第一线程与第二线程;

53、传输单元,用于基于所述第一线程向移动终端的存储空间传输所述第一文件数据,以及,基于所述第二线程向所述移动终端的媒体传输协议数据库传输所述第一元数据信息。

54、可选的,所述装置还包括:

55、文件大小提取单元,用于从所述第一元数据信息中提取出所述第一文件数据对应的第一文件大小;

56、压缩单元,用于响应于所述第一文件大小大于标准字节大小,将所述第一文件数据输入压缩算法,得到压缩文件数据;

57、元数据信息更新单元,用于根据所述压缩文件数据更新所述第一元数据信息;

58、所述传输单元具体用于:

59、基于所述第一线程向所述存储空间传输所述压缩文件数据,以及,基于所述第二线程向所述媒体传输协议数据库传输更新后的所述第一元数据信息。

60、可选的,所述第一媒体文件为至少两个,所述装置还包括:

61、计算单元,用于根据每个所述第一文件数据对应的所述第一文件大小,计算每个所述第一文件大小对应的第一预计传输时间、预计压缩时间以及预计压缩文件大小;

62、所述计算单元,还用于计算每个所述预计压缩文件大小对应的第二预计传输时间;

63、所述计算单元,还用于计算每个所述第一文件大小对应的所述预计压缩时间与所述第二预计传输时间之和,并将所述预计压缩时间与所述第二预计传输时间之和与所述第一预计传输时间作差,得到时间差值;

64、查找单元,用于从多个所述时间差值中查找出绝对值最小的所述时间差值,以及查找出绝对值最小的所述时间差值对应的第一文件大小;

65、确定单元,用于将绝对值最小的所述时间差值对应的所述第一文件大小确定为所述标准字节大小。

66、可选的,所述传输单元具体用于:

67、响应于所述第一文件大小不大于所述标准字节大小,基于所述第一线程向所述存储空间传输所述第一文件数据,以及,基于所述第二线程向所述媒体传输协议数据库传输所述第一元数据信息。

68、可选的,所述第一媒体文件为第二媒体文件经过文件处理后生成的,所述第二媒体文件为历史上已传输至所述移动终端的媒体文件,所述第二媒体文件中包括第二元数据信息,所述装置还包括:

69、日志读取单元,用于读取所述计算机设备的修改日志,所述修改日志用于记录所述第一元数据信息相较于所述第二元数据信息的变更信息;

70、所述传输单元具体用于:

71、基于所述第一线程向所述存储空间传输所述第一文件数据,以及,基于所述第二线程向所述媒体传输协议数据库传输所述变更信息。

72、第四方面,本技术实施例提供了一种文件传输装置,设置于移动终端中,所述移动终端与计算机设备连接,所述装置包括:

73、存储地址配置单元,用于接收计算机设备针对至少一个第一媒体文件的传输任务创建请求,在所述移动终端的存储空间中为每个所述第一媒体文件分配存储地址,所述传输任务创建请求基于媒体传输协议生成,每个所述第一媒体文件包括第一文件数据和第一元数据信息;

74、线程连接单元,用于响应于所述计算机设备创建第一线程与第二线程,将所述第一线程与所述存储空间建立连接,并将所述第二线程与所述移动终端的媒体传输协议数据库建立连接;

75、接收单元,用于接收所述第一线程传输的所述第一文件数据,以及,接收所述第二线程传输的所述第一元数据信息;

76、数据写入单元,用于将所述第一文件数据写入所述存储空间,以及,将所述第一元数据信息同步至所述媒体传输协议数据库。

77、可选的,所述接收单元具体用于:

78、获取所述计算机设备使用的压缩算法对应的算法类型;

79、接收所述第一线程传输的压缩文件数据,所述压缩文件数据为所述第一文件数据输入所述压缩算法后生成的;

80、接收所述第二线程传输的更新后的所述第一元数据信息,更新后的所述第一元数据信息为根据所述压缩文件数据更新所述第一元数据信息后得到的;

81、所述数据写入单元具体用于:

82、将所述压缩文件数据写入所述存储空间,以及,将更新后的所述第一元数据信息同步至所述媒体传输协议数据库;

83、响应于所述移动终端不支持所述算法类型,向所述计算机设备发送解压失败信息,所述解压失败信息用于表征所述移动终端无法对所述压缩文件数据进行解压缩;或者,

84、响应于所述移动终端支持所述算法类型,使用所述压缩算法对所述压缩文件数据进行解压缩,并使用解压缩后的所述第一文件数据覆盖所述压缩文件数据。

85、可选的,所述第一媒体文件为第二媒体文件经过文件处理后生成的,所述第二媒体文件为历史上已传输至所述移动终端的媒体文件,所述第二媒体文件中包括第二元数据信息,所述接收单元具体用于:

86、接收所述第一线程传输的所述第一文件数据,以及,接收所述第二线程传输的变更信息,所述变更信息用于记录修改所述第二元数据信息以得到所述第一元数据信息的全部操作;

87、所述数据写入单元具体用于:

88、将所述第一文件数据写入所述存储空间,并覆盖所述第二文件数据;

89、基于所述变更信息与所述第二元数据信息,得到所述第一元数据信息。

90、第五方面,本技术实施例提供了一种电子设备,所述电子设备包括至少一个处理器以及与所述至少一个处理器连接的存储器,所述至少一个处理器用于执行存储器中存储的计算机程序时实现如第一方面、第二方面任一项所述方法的步骤。

91、第六方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面、第二方面任一项所述方法的步骤。

92、应当理解的是,本技术实施例的第二~四方面与本技术实施例的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1