[发明专利]一种分布式转码方法有效
| 申请号: | 202110282203.4 | 申请日: | 2021-03-16 |
| 公开(公告)号: | CN113055680B | 公开(公告)日: | 2021-12-21 |
| 发明(设计)人: | 陈典;谭顺华 | 申请(专利权)人: | 西南科技大学 |
| 主分类号: | H04N19/40 | 分类号: | H04N19/40;H04N19/42 |
| 代理公司: | 成都正华专利代理事务所(普通合伙) 51229 | 代理人: | 李蕊 |
| 地址: | 621000 四川*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 分布式 方法 | ||
1.一种分布式转码方法,其特征在于,包括以下步骤:
S1、根据目标视频文件基础信息生成上传任务,将目标视频文件上传至服务器;
S2、根据上传任务对上传的文件进行校验,若通过则进入步骤S3,否则终止后续操作;
S3、增加转码任务,将目标视频文件中视频流与其他数据流进行分离,得到其他流数据和视频流数据;
S4、对视频流数据进行分片;
S5、生成转码任务队列:根据分片结果在目标视频文件中复制对应的数据段,得到若干源数据块,以及与每个源数据块对应的待转码任务和任务信息;
S6、通过主节点从转码任务队列中以FIFO方式取出待转码任务,并将任务信息交由空闲状态的转码单元进行转码;
S7、判断是否已完成所有待转码任务,若是则进入步骤S8,否则返回步骤S6;
S8、将转码后的子视频合成一个完整的视频流,并将其与分离出的其他流数据进行封装,生成一个完整的转码后的数据文件;
步骤S4的具体方法包括以下子步骤:
S4-1、根据视频流数据的分辨率和帧率获取其基础块大小;
S4-2、判断视频流数据是否进行过封装,若是则进入步骤S4-3,否则进入步骤S4-9;
S4-3、对视频流数据进行解封装,读取stss关键帧列表索引信息、stsz采样块大小列表信息和stco块数据偏移列表信息;
S4-4、将stss关键帧列表索引信息与stsz采样块大小列表信息进行累加处理生成一个新的基于GOP块大小列表的且单调递增的索引列表stgs;
S4-5、在stgs中从偏移位置ioffset开始累加计算,判断从当前偏移位置开始是否存在累计数据大小处于0.9~1.1倍基础块之间的stgs元素,若是则将该stgs元素位置标记为i;否则将在大于1.1倍基础块的最近一个stgs元素位置标记为i;其中ioffset的初始值为0;
S4-6、在stss关键帧列表索引信息中查找对应位置i的采样序列号j,并根据stsz采样块大小列表信息和stco块数据偏移列表信息复制视频流数据中偏移量joffset~j的数据块并写入到磁盘,完成一次视频流数据分片;其中joffset的初始值为0;
S4-7、将当前位置i作为新的偏移位置ioffset,将当前j值作为新的joffset值;
S4-8、重复步骤S4-5至步骤S4-7直至视频流数据的所有分片完成;
S4-9、采用0.95作为基础偏移系数获取偏移数据点,读取偏移数据点的后续数据并解码,将解码到IDR帧时的当前偏移量作为分片位置,完成一次视频流数据分片;
S4-10、重复步骤S4-9直至完成视频流数据的所有分片。
2.根据权利要求1所述的分布式转码方法,其特征在于,步骤S1中目标视频文件基础信息包括视频类型、视频时长、视频流的编码方式、视频编码参数、视频编码等级、图像分辨率、图像采样方式、图像帧率、图像比特率、音频流的编码方式、音频流的采样率、视频文件字节长度、视频转码参数、转码后视频分辨率、转码后视频帧率和转码后视频编码方式。
3.根据权利要求2所述的分布式转码方法,其特征在于,步骤S2中根据上传任务对上传的文件进行校验的具体方法为:
校验上传的文件的长度和大小;若上传的文件为封装后格式,则读取关键元数据,验证MIME文件类型是否正确;验证mdat中数据长度是否与文件大小一致;均通过,则通过验证。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西南科技大学,未经西南科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110282203.4/1.html,转载请声明来源钻瓜专利网。





