推流方法、装置、终端及存储介质制造方法及图纸

技术编号:33133433 阅读:22 留言:0更新日期:2022-04-17 00:54
本发明专利技术公开了一种推流方法,其包括:基于视频编码类型设置视频编码类型标识videocodecid,其中,所述视频编码类型至少包括H265编码类型或H264编码类型;利用设置完成videocodecid以及PreviousTagSize、NextTagHeader、NextTagData依次循环排列的结构形成FLV FILE BODY;利用Signature、Version、Flags以及DataOffset形成FLV FILE HEADER;将FLV FILE BODY以及对应的FLV FILE HEADER完成H265编码类型或H264编码类型的第一视频数据的数据封装;将封装后的第二视频数据进行推流操作。据进行推流操作。据进行推流操作。

【技术实现步骤摘要】
推流方法、装置、终端及存储介质


[0001]本专利技术涉及推流领域,尤其涉及一种推流方法、装置、终端及存储介质。

技术介绍

[0002]近年来,由于高清、高画质视频的普及,对推流技术提出了更高的要求。现有技术中,RTMP推流受限制于推流的视频编码类型,无法实现4K以上的推流,比如6K或者8K乃至12K的视频。
[0003]故需要提供基于RTMP

H265推流协议的推流方法来解决上述技术问题。

技术实现思路

[0004]本专利技术的主要目的在于提供一种推流方法、装置、终端、及计算机可读存储介质,旨在解决现有技术中无法实现高清、高画质视频数据推流的问题。
[0005]为实现上述目的,本专利技术提供一种基于RTMP

H265推流协议的推流方法,所述推流方法应用于RTMP推流端,所述推流方法包括:
[0006]基于视频编码类型设置视频编码类型标识videocodecid,其中,所述视频编码类型至少包括H265编码类型或H264编码类型;
[0007]利用设置完成的videocodecid以及PreviousTagSize、NextTagHeader、NextTagData依次循环排列的结构形成FLV FILE BODY;
[0008]利用Signature、Version、Flags以及DataOffset形成FLV FILE HEADER;
[0009]将FLV FILE BODY以及对应的FLV FILE HEADER完成H265编码类型或H264编码类型的第一视频数据的数据封装;
[0010]将封装后的第二视频数据进行推流操作。
[0011]可选地,所述基于视频编码类型设置视频编码类型标识videocodecid包括:
[0012]将所述videocodecid对应的预设位置或所述videocodecid对应的预设区域中的随机位置设置为视频编码标识字符7或12。
[0013]可选地,所述基于视频编码类型设置视频编码类型标识videocodecid包括:
[0014]基于预设存储路径信息确定所述videocodecid的设置位置;其中,所述预设存储路径信息包括所述videocodecid的存储层级信息和/或位序信息;所述设置位置包括一个或多个;
[0015]基于所述设置位置以及视频编码类型设置所述videocodecid。
[0016]可选地,所述预设存储路径信息为所述videocodecid的存储层级信息;所述存储层级信息至少包括第一预设存储层级及附属于所述第一预设存储层级的第一预设子存储层级;所述基于预设存储路径信息确定所述videocodecid的设置位置包括:
[0017]查找所述第一预设存储层级对应的第一层级位置;
[0018]在所述第一层级位置下查找所述第一预设子存储层级对应的第一子层级位置;
[0019]基于所述第一子层级位置确定视频编码类型标识videocodecid的设置位置。
[0020]可选地,所述预设存储路径信息为所述videocodecid的存储层级信息;所述存储层级信息至少包括依次排列的第二预设存储层级至第n预设存储层级,其中,n>2;所述基于预设存储路径信息确定所述videocodecid的设置位置包括:
[0021]按照顺序从所述第二预设存储层级开始,依次查找遍历各个预设存储层级位置,直至确定所述第n预设存储层级对应的第n层级位置;
[0022]基于所述第n层级位置确定所述视频编码类型标识videocodecid的设置位置。
[0023]可选地,所述推流方法应用于推流系统,所述推流系统至少包括RTMP推流端、RTMP流服务器以及RTMP播放器;所述推流方法包括:
[0024]所述RTMP推流端执行如上所述的推流方法的步骤,其中,所述RTMP推流端执行将封装后的第二视频数据进行推流操作的步骤时,所述RTMP推流端将所述第二视频数据推送至所述RTMP流服务器;
[0025]所述RTMP流服务器接收所述RTMP推流端推送的第二视频数据,并提取所述第二视频数据中的videocodecid字符;
[0026]若所述第二视频数据中的videocodecid字符为12,所述RTMP流服务器判定所述第二视频数据为H265编码类型;
[0027]若所述第二视频数据中的videocodecid字符为7,所述RTMP流服务器判定所述第二视频数据为H264编码类型;
[0028]所述RTMP流服务器将所述第二视频数据发送至所述RTMP播放器;
[0029]所述RTMP播放器接收到所述RTMP流服务器发送的第二视频数据,并提取所述第二视频数据中的videocodecid字符;
[0030]若所述第二频数据中的videocodecid字符为12,所述RTMP播放器利用H265解码器对所述第二视频数据进行解码播放;
[0031]若所述第二频数据中的videocodecid字符为7,所述RTMP播放器利用H264解码器对所述第二视频数据进行解码播放。
[0032]可选地,所述RTMP播放器接收到所述RTMP流服务器发送的第二视频数据,并提取所述第二视频数据中的videocodecid字符包括:
[0033]所述RTMP播放器接收到所述RTMP流服务器发送的第二视频数据,从多个videocodecid设置位置中提取所述第二视频数据中的videocodecid字符;
[0034]所述RTMP播放器接收到所述RTMP流服务器发送的第二视频数据,并提取所述第二视频数据中的videocodecid字符的步骤之后包括:
[0035]将多个预设位置中的videocodecid字符进行对比校验;
[0036]若对比校验结果不一致,则向所述RTMP流服务器返回校验错误的校验结果信息。
[0037]为实现上述目的,本专利技术还提供一种推流装置,所述推流装置包括:
[0038]videocodecid设置模块,用于基于视频编码类型设置视频编码类型标识vi deocodecid,其中,所述视频编码类型至少包括H265编码类型或H264编码类型;
[0039]第一形成模块,用于利用设置完成的videocodecid以及PreviousTagSize、NextTagHeader、NextTagData依次循环排列的结构形成FLV FILE BODY;
[0040]第二形成模块,用于利用Signature、Version、Flags以及DataOffset形成FLV FILE HEADER;
[0041]数据封装模块,用于数据将FLV FILE BODY以及对应的FLV FILE HE ADER完成H265编码类型或H264编码类型的第一视频数据的数据封装;
[0042]推流模块,用于将封装后的第二视频数据进行推流操作。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种推流方法,其特征在于,所述推流方法应用于RTMP推流端,所述推流方法包括:基于视频编码类型设置视频编码类型标识videocodecid,其中,所述视频编码类型至少包括H265编码类型或H264编码类型;利用设置完成的videocodecid以及PreviousTagSize、NextTagHeader、NextTagData依次循环排列的结构形成FLV FILE BODY;利用Signature、Version、Flags以及DataOffset形成FLV FILE HEADER;将FLV FILE BODY以及对应的FLV FILE HEADER完成H265编码类型或H264编码类型的第一视频数据的数据封装;将封装后的第二视频数据进行推流操作。2.如权利要求1所述的推流方法,其特征在于,所述基于视频编码类型设置视频编码类型标识videocodecid包括:将所述videocodecid对应的预设位置或所述videocodecid对应的预设区域中的随机位置设置为视频编码标识字符7或12。3.如权利要求1所述的推流方法,其特征在于,所述基于视频编码类型设置视频编码类型标识videocodecid包括:基于预设存储路径信息确定所述videocodecid的设置位置;其中,所述预设存储路径信息包括所述videocodecid的存储层级信息和/或位序信息;所述设置位置包括一个或多个;基于所述设置位置以及视频编码类型设置所述videocodecid。4.如权利要求3所述的推流方法,其特征在于,所述预设存储路径信息为所述videocodecid的存储层级信息;所述存储层级信息至少包括第一预设存储层级及附属于所述第一预设存储层级的第一预设子存储层级;所述基于预设存储路径信息确定所述videocodecid的设置位置包括:查找所述第一预设存储层级对应的第一层级位置;在所述第一层级位置下查找所述第一预设子存储层级对应的第一子层级位置;基于所述第一子层级位置确定视频编码类型标识videocodecid的设置位置。5.如权利要求3所述的推流方法,其特征在于,所述预设存储路径信息为所述videocodecid的存储层级信息;所述存储层级信息至少包括依次排列的第二预设存储层级至第n预设存储层级,其中,n>2;所述基于预设存储路径信息确定所述videocodecid的设置位置包括:按照顺序从所述第二预设存储层级开始,依次查找遍历各个预设存储层级位置,直至确定所述第n预设存储层级对应的第n层级位置;基于所述第n层级位置确定所述视频编码类型标识videocodecid的设置位置。6.一种推流方法,其特征在于,所述推流方法应用于推流系统,所述推流系统至少包括RTMP推流端、RTMP流服务器以及RTMP播放器;所述推流方法包括:所述RTMP推流端执行如权利要求1

5任一项所述的推流方法的步骤,其中,所述RTMP推流端执行将封装后的第二视频数据进行推流操作的步骤时,所述RTMP推流端...

【专利技术属性】
技术研发人员:马志友
申请(专利权)人:深圳看到科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1