首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于RTP协议的AVS3视频传输方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:江苏北弓智能科技有限公司

摘要:本发明公开了一种基于RTP协议的AVS3视频传输方法,步骤包括:接收原始画面,再将原始画面编码为AVS3视频码流;对AVS3视频码流进行RTP打包,获得包含AVS3载荷类型的RTP数据包;将包含AVS3载荷类型的RTP数据包发送至接收端;根据RTP打包规则,对RTP数据包进行解包,获得AVS3码流;对解包获得的AVS3码流进行解码播放。该AVS3视频传输方法通过设置满足AVS3视频码流的RTP打包规则,能够实现AVS3视频码流的RTP打包以及RTP解包,从而实现了基于RTP协议的视频传输协议对AVS3视频进行传输。

主权项:1.一种基于RTP协议的AVS3视频传输方法,其特征在于,包括有以下步骤:步骤1,由发送端接收原始画面,再根据AVS3编码标准将接收的原始画面编码为AVS3视频码流;步骤2,由发送端根据RTP打包规则对AVS3视频码流进行RTP打包,获得包含AVS3载荷类型的RTP数据包;步骤3,由发送端将包含AVS3载荷类型的RTP数据包发送至接收端;步骤4,由接收端根据发送端制定的AVS3码流的RTP打包规则,对RTP数据包进行解包,获得AVS3码流;步骤5,由接收端对解包获得的AVS3码流进行解码播放;步骤5中,对解包获得的AVS3码流进行解码播放的具体步骤为:步骤5.1,由接收端将修复后的各个AVS3载荷数据包进行缓存,获得各个缓存数据包;步骤5.2,由接收端将满足组成条件的各个缓存数据包组成完整数据帧;步骤5.3,由接收端判断当前完整数据帧是否为可解码,若为可解码,则进行解码播放;否则返回步骤5.1;步骤5.2中,将满足组成条件的各个缓存数据包组成完整数据帧时:首先获取缓存中的各个缓存数据包,并按照缓存时间顺序对各个缓存数据包进行排序;再判断缓存数据包对应的AVS3载荷数据包是否既是NALU的起始包又是NALU的终止包,若既是NALU的起始包又是NALU的终止包,则将当前缓存数据作为完整数据帧,否则进一步判断缓存数据包是否满足组成条件,若满足组成条件,则按照起始包、各个中间包以及终止包的顺序组成完整数据帧,否则返回步骤5.1;步骤5.3中,判断当前完整数据帧是否为可解码时:首先判断当前完整数据帧的类型是否为关键帧,若类型为Video_Sequence_Header,则当前完整数据帧为关键帧;否则当前完整数据帧为普通帧;再判断当前完整数据帧是否为可解码,若当前完整数据帧为关键帧或当前完整数据帧的之前三个完整数据帧均已解码,则当前完整数据帧为可解码;否则当前完整数据帧为不可解码;判断缓存数据包是否满足组成条件的具体步骤为:首先对排序好的各个缓存数据包依次进行终止包查找,若找到了终止包,则将终止包之前的全部缓存数据包转移至待组合队列中,若未找到终止包,则继续对排序好的各个缓存数据包进行终止包查找,直到找到终止包后再将终止包之前的全部缓存数据包转移至待组合队列中;然后对待组合队列中的第一个缓存数据包进行判断,若第一个缓存数据包为起始包,则进入中间包识别步骤,否则进入一次队列整理步骤;中间包识别步骤为:对起始包与终止包之间的各个缓存数据包进行识别判断,若均为中间包且各个中间包为连续状态,则表明AVS3载荷数据包完整,判定待组合队列中的各个缓存数据包满足组成条件,否则进入二次队列整理步骤;一次队列整理步骤为:在终止包之前的各个缓存数据包中查找起始包:若未查找到起始包,则表明AVS3载荷数据包不完整,判定待组合队列中的各个缓存数据包不满足组成条件,并清空待组合队列;若只查找到一个起始包,则判断待组合队列中除起始包外的全部中间包是否连续:若全部中间包为连续状态,则将起始包移动至待组合队列的队首,并判定待组合队列中的各个缓存数据包满足组成条件;若全部中间包为不连续状态,则判断待组合队列中起始包与终止包两者之间所有的中间包是否连续,若两者之间所有的中间包为连续状态,则删除起始包之前的各个中间包,并判定待组合队列中剩余的各个缓存数据包满足组成条件,若两者之间所有的中间包为不连续状态,则判定待组合队列中的各个缓存数据包不满足组成条件,并清空待组合队列;若查找到多个起始包,则判断待组合队列中除各个起始包外的全部中间包是否连续:若全部中间包为连续状态,则将第一个起始包移动至待组合队列的队首,同时删除其余起始包,并判定待组合队列中的各个缓存数据包满足组成条件;若全部中间包为不连续状态,则按照与终止包的距离由远至近的顺序依次判断各个起始包与终止包之间所有的中间包是否连续,若当前起始包与终止包之间所有的中间包为连续状态,则删除待组合队列中当前起始包之前的各个缓存数据包以及之后的各个起始包,并判定待组合队列中剩余的各个缓存数据包满足组成条件,若各个起始包与终止包之间所有的中间包均为不连续状态,则判定待组合队列中的各个缓存数据包不满足组成条件,并清空待组合队列;二次队列整理步骤为:将待组合队列中队首的起始包与队尾的终止包之间的各个缓存数据包复制到二次整理队列中,再对二次整理队列中的各个缓存数据包进行判断:若二次整理队列中均为中间包,则表明各个中间包为不连续状态,AVS3载荷数据包不完整,判定待组合队列中的各个缓存数据包不满足组成条件,并清空待组合队列和二次整理队列;若二次整理队列中既有中间包又有起始包,则判断二次整理队列中除起始包之外的各个中间包是否为连续状态,若二次整理队列中各个中间包为连续状态,则保留待组合队列中队首的起始包,删除其余起始包,并判定待组合队列中的各个缓存数据包满足组成条件,再清空二次整理队列,若二次整理队列中各个中间包为不连续状态,则在二次整理队列中按照与队尾距离由远至近的顺序依次判断各个起始包至队尾所有的中间包是否连续,若当前起始包至队尾所有的中间包为连续状态,则删除待组合队列中当前起始包之前的各个缓存数据包以及之后的各个起始包,并判定待组合队列中剩余的各个缓存数据包满足组成条件,再清空二次整理队列,若二次整理队列中各个起始包至队尾所有的中间包均为不连续状态,则判定待组合队列中的各个缓存数据包不满足组成条件,并清空待组合队列和二次整理队列;若二次整理队列中没有中间包,则判定待组合队列中的各个缓存数据包不满足组成条件,并清空待组合队列和二次整理队列。

全文数据:

权利要求:

百度查询: 江苏北弓智能科技有限公司 一种基于RTP协议的AVS3视频传输方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。