一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

视频上传分片方法及装置与流程

2022-04-27 13:14:30 来源:中国专利 TAG:


1.本发明涉及信息安全技术领域,具体涉及一种视频上传分片方法及装置。


背景技术:

2.随着科技的不断进步,使得在线教育越来越受人们的欢迎;在线教育平台即在线网络的教育平台。实质是面向全国的资源共享、是零距离,是一种全新的交流方式和学习平台。利用网络先进的技术改变师生的交流方式上课,进一步提高学生掌握知识的效率和能力。
3.客户通过线上教育平台上传视频资源时,视频资源大小无限制,而一个http请求的报文有大小限制,过大容易超时,甚至导致系统崩溃,造成客户体验差。


技术实现要素:

4.为此,本发明实施例提供一种视频上传分片方法及装置,以解决现有技术存在的客户通过线上教育平台上传视频资源时,视频资源大小无限制,而一个http请求的报文有大小限制,过大容易超时,甚至导致系统崩溃,造成客户体验差的问题。
5.为了实现上述目的,本发明实施例提供如下技术方案:
6.第一方面,一种视频上传分片方法,包括:
7.接收用户发送的上传视频请求;
8.判断所述视频大小是否超过阈值;
9.若所述视频大小未超过阈值,则直接上传所述视频;
10.若所述视频大小超过阈值,则将所述视频文件解析为buffer数据;
11.将所述buffer数据进行切片并将每片命名;
12.上传分片视频数据;调用后端传入分片数量,被分片的文件名称参数进行分片初始化,返回文件标识和各分片上传的url并调用合并接口查询上传分片进行合并。
13.作为优选,所述后端调用minioclient父类的completemultipartupload进行合并。
14.作为优选,所述后端调用合并接口时,通过视频文件标识、分片的文件名称和桶名称先查询上传的分片,然后合并分片。
15.作为优选,所述传入参数分片数量时使用customminioclient传入。
16.作为优选,将所述buffer数据进行切片时,每50m为一片,若最后一片小于20m,则将最后一片与上一片合并;若最后一片在20m以上,则单独为一片。
17.作为优选,上传分片视频数据时使用axios上传。
18.作为优选,使用axios上传分片视频数据时,运用onuploadprogress监听上传进度。
19.作为优选,使用nginx时在配置文件中加入proxy_request_buffering off。
20.作为优选,上传分片视频数据时关闭视频缓存。
21.第二方面,一种视频上传分片装置,包括:
22.接收模块,用于接收用户发送的上传视频请求;
23.判断模块,用于判断所述视频大小是否超过阈值;
24.若所述视频大小未超过阈值,则直接上传所述视频;
25.若所述视频大小超过阈值,则将所述视频文件解析为buffer数据;
26.切片计算模块,用于将所述buffer数据进行切片并将每片命名;
27.上传模块,用于上传分片视频数据;调用后端传入分片数量,被分片的文件名称参数进行分片初始化,返回文件标识和各分片上传的url并调用合并接口查询上传分片进行合并。
28.本发明至少具有以下有益效果:本发明提供了一种视频上传分片方法及装置,包括:接收用户发送的上传视频请求;判断视频大小是否超过阈值;若视频大小未超过阈值,则直接上传视频;若视频大小超过阈值,则将视频文件解析为buffer数据;将buffer数据进行切片并将每片命名;上传分片视频数据;调用后端传入分片数量,被分片的文件名称参数进行分片初始化,返回文件标识和各分片上传的url并调用合并接口查询上传分片进行合并。本发明提供的视频上传分片方法及装置,使得客户上传视频时不受视频大小限制,且视频上传不超时,明显降低了视频上传失败的概率,使得客户体验良好。
附图说明
29.为了更清楚地说明现有技术以及本发明,下面将对现有技术以及本发明实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的附图。
30.本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
31.图1为本发明实施例提供的视频上传分片方法流程图一;
32.图2为本发明实施例提供的视频上传分片方法流程图二;
33.图3为本发明实施例提供的视频上传进度效果图。
具体实施方式
34.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
35.在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)旨在区别指代的对象。对于具有时序流程的方案,这种术语表述方式不必理解为描述特定的顺序或先后次序,对于装置结构的方案,这种术语表述方式也不存在对重要程度、位置关系的区分等。
36.此外,术语“包括”、“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包括了一系列步骤或单元的过程、方法、系统、产品或设备不必限于已明确列出的那些步骤或单元,而是还可包含虽然并未明确列出的但对于这些过程、方法、产品或设备固有的其它步骤或单元,或者基于本发明构思进一步的优化方案所增加的步骤或单元。
37.请参阅图1和图2,本发明的实施例提供一种视频上传分片方法,由于系统用到minio,所以就利用minio相关技术实现视频分片,包括:
38.s1:接收用户发送的上传视频请求;
39.s2:判断所述视频大小是否超过阈值;
40.具体的,判断视频大小是否超过70m。
41.s3:若所述视频大小未超过阈值,则直接上传所述视频;
42.具体的,若视频大小未超过70m,则直接上传视频。
43.s4:若所述视频大小超过阈值,则将所述视频文件解析为buffer数据;
44.具体的,若视频大小超过70m,则将视频文件解析为buffer数据。
45.s5:将所述buffer数据进行切片并将每片命名;
46.具体的,将buffer数据进行切片时,每50m切一片,每一片切片都有自己的数据和名称,若最后一片小于20m,则将最后一片与上一片合并;若最后一片在20m以上,则单独为一片。
47.s6:上传分片视频数据;调用后端传入分片数量,被分片的文件名称参数进行分片初始化,返回文件标识和各分片上传的url并调用合并接口查询上传分片进行合并。
48.请参阅图3,具体的,使用axios上传分片视频数据,使用onuploadprogress方法监听上传进度,并通过计算得到目前进度的百分比,在前端进度控件中显示。使用nginx时,在配置文件中加入proxy_request_buffering off;关闭视频缓存,以防影响上传进度效果。
49.具体的,本发明的后端提供了两个接口,第一个接口将分片初始化并使用customminioclient传入参数分片数量,文件名称和bucketname(桶名称,minio存储文件在桶里),在传入参数分片数量时,50m为一片,最后少于20m的,后两片合为一片。
50.第二个接口将分片上传完成后调用minioclient父类的completemultipartupload进行合并,合并时,通过视频文件标识、分片的文件名称和桶名称先查询上传的分片,然后合并分片。
51.本发明提供的视频上传分片方法及装置,使得客户上传视频时不受视频大小限制,且视频上传不超时,明显降低了视频上传失败的概率,使得客户体验良好。
52.本发明的实施例提供一种视频上传分片装置,包括:
53.接收模块,用于接收用户发送的上传视频请求;
54.判断模块,用于判断所述视频大小是否超过阈值;
55.若所述视频大小未超过阈值,则直接上传所述视频;
56.若所述视频大小超过阈值,则将所述视频文件解析为buffer数据;
57.切片计算模块,用于将所述buffer数据进行切片并将每片命名;
58.上传模块,用于上传分片视频数据;调用后端传入分片数量,被分片的文件名称参数进行分片初始化,返回文件标识和各分片上传的url并调用合并接口查询上传分片进行合并。
59.关于视频上传分片装置的具体限定可以参见上文中对于视频上传分片方法的限定,在此不再赘述。上述视频上传分片装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
60.以上几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
61.以上实施例的各技术特征可以进行任意的组合(只要这些技术特征的组合不存在矛盾),为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述;这些未明确写出的实施例,也都应当认为是本说明书记载的范围。
62.上文中通过一般性说明及具体实施例对本发明作了较为具体和详细的描述。应当指出的是,在不脱离本发明构思的前提下,显然还可以对这些具体实施例作出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献