[发明专利]一种WMV文件的解码方法和装置有效
申请号: | 201510239125.4 | 申请日: | 2015-05-12 |
公开(公告)号: | CN104837073B | 公开(公告)日: | 2018-02-09 |
发明(设计)人: | 彭岳松 | 申请(专利权)人: | 无锡天脉聚源传媒科技有限公司 |
主分类号: | H04N21/658 | 分类号: | H04N21/658;H04N21/438 |
代理公司: | 北京尚伦律师事务所11477 | 代理人: | 张亮 |
地址: | 214000 江苏省无锡*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 wmv 文件 解码 方法 装置 | ||
1.一种WMV文件解码方法,其特征在于,包括:
步骤A:获取待解码的WMV文件的数据包描述信息,根据所述数据包描述信息获取数据包的全部数据总长度B1;
步骤B:根据所述数据包描述信息中的数据格式,选择与所述数据包中的数据格式对应的解码方式;
步骤C:根据所述对应的解码方式对数据包的一个数据帧进行解码,获取解码后的第一个数据帧,计算所述第一个数据帧在全部数据包中的长度B2;
步骤D:判断所述数据的总长度B1与所述第一个数据帧在数据包中的长度B2之差是否小于或等于零,如果是,则结束解码;
如果不是,则重复所述步骤C;
在所述步骤C和所述步骤D之间还包括:
步骤E:监测当前数据包的解码速度,判断所述解码速度是否达到预设的解码速度;
步骤F:如果所述解码速度小于预设解码速度,则判断当前待解码数据帧的类型;
步骤G:若所述当前待解码数据帧为非预设类型的数据帧,则丢弃所述当前待解码数据帧。
2.如权利要求1所述的WMV文件解码方法,其特征在于,所述步骤E具体包括:
获取解码状态参数,所述解码状态参数为解码过程中对处理器和内存的资源利用率;
判断所述资源利用率是否小于预设利用率,如果是则所述解码状态参数的数值不属于预设数值范围;
如果所述解码状态参数的数值不属于预设数值范围,则所述解码速度小于预设解码速度。
3.如权利要求1所述的WMV文件解码方法,其特征在于,所述步骤B具体包括:
根据所述数据包的描述信息包含的音视频标识位,确定所述数据包中数据为音频数据或视频数据;
根据确定后的数据包中的音频数据或视频数据,调取与所述音频数据或视频数据对应的解码方式。
4.如权利要求1所述的WMV文件解码方法,其特征在于,在所述步骤D中结束解码之前还包括:
对已完成解码的数据包个数A2进行统计,判断所述已完成解码的数据包个数A2是否达到预先获得的数据包总个数A1;
如果B1-B2≤0,A2<A1,则将所述全部数据包中未解码的数据包丢弃;
如果B1-B2≤0,A2=A1,则结束解码。
5.一种WMV文件的解码装置,其特征在于,包括:
信息获取模块,用于获取待解码的WMV文件的数据包总个数A1和数据包描述信息,根据所述数据包描述信息获取全部数据包中数据总长度B1,所述描述信息包括数据格式和数据长度;
解码选择模块,用于根据所述数据包的数据格式,选择与所述数据包中的数据格式对应的解码方式;
文件解码模块,用于接收一个数据包,根据所述对应的解码方式对一个数据包进行解码,获取解码后的第一个数据帧,计算所述第一个数据帧在全部数据包中的长度B2;
解码判断模块,用于判断所述数据的总长度B1与所述第一个数据帧在数据包中的长度B2之差是否小于或等于零,如果是,则结束解码;
如果不是,则跳转至所述文件解码模块;
还包括:
速度监测模块,用于监测当前数据包的解码速度,判断所述解码速度是否达到预设的解码速度;
速度判断模块,用于如果所述解码速度小于预设解码速度,则判断当前待解码数据帧的类型;
结果执行模块,用于若所述当前待解码数据帧为非预设类型的数据帧,则丢弃所述当前待解码数据帧。
6.如权利要求5所述的一种WMV文件的解码装置,其特征在于,所述速度监测模块具体包括:
参数获取子模块,用于获取解码状态参数,所述解码状态参数为解码过程中对处理器和内存的资源利用率;
参数判断子模块,用于判断所述资源利用率是否小于预设利用率,如果是则所述解码状态参数的数值不属于预设数值范围;
速度确定子模块,用于如果所述解码状态参数的数值不属于预设数值范围,则所述解码速度小于预设解码速度。
7.如权利要求5所述的一种WMV文件的解码装置,其特征在于,所述解码选择模块具体包括:
标识识别子模块,用于根据所述数据包的描述信息包含的音视频标识位,确定所述数据包中数据为音频数据或视频数据;
解码确定子模块,用于根据确定后的数据包中的音频数据或视频数据,调取与所述音频数据或视频数据对应的解码方式。
8.如权利要求5所述的一种WMV文件的解码装置,其特征在于,所述解码判断模块还包括:
数量统计子模块,用于对已完成解码的数据包个数A2进行统计,判断所述已完成解码的数据包个数A2是否达到所述数据包总个数A1;
第一判断子模块,用于如果B1-B2≤0,A2<A1,则将所述全部数据包中未解码的数据包丢弃;
第二判断子模块,用于如果B1-B2≤0,A2=A1,则结束解码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡天脉聚源传媒科技有限公司,未经无锡天脉聚源传媒科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510239125.4/1.html,转载请声明来源钻瓜专利网。