基于支持H265解码的实时通信方法、系统、设备及介质与流程
未命名
09-29
阅读:102
评论:0
基于支持h265解码的实时通信方法、系统、设备及介质
技术领域
1.本发明涉及解码技术领域,特别涉及一种基于支持视频解码的实时通信方法、系统、设备及介质。
背景技术:
2.webrtc的视频部分,包含采集、编解码(i420/vp8)、加密、媒体文件、图像处理、显示、网络传输与流控(rtp/rtcp)等功能。旨在使得浏览器能为实时通信(rtc)提供简单的javascr ipt接口。说的简单明了一点就是让浏览器提供js的即时通信接口。这个接口所创立的信道并不是像websocket一样,打通一个浏览器与websocket服务器之间的通信,而是通过一系列的信令,建立一个浏览器与浏览器之间(-to-peer)的信道,这个信道可以发送任何数据,而不需要经过服务器。并且webrtc通过实现mediastream,通过浏览器调用设备的摄像头、话筒,使得浏览器之间可以传递音频和视频。但支持h265的浏览器较少。
技术实现要素:
3.为克服上述现有技术的不足,本发明提供一种基于支持视频解码的实时通信方法,包括:
4.基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;
5.对所述h265进行编译处理,得到编译后的二进制库;
6.通过调用所述二进制库对所述h265进行解码,得到解码结果并进行渲染处理。
7.优选的,所述编译处理包括:
8.通过ffmpeg接收h265,将所述ffmpeg编译为wasm标准的二进制库;
9.根据预设的标准库对所述二进制库进行编译对比,得到不符合预设标准的编译数据,并进行修订处理。
10.优选的,所述通过调用所述二进制库对所述h265进行解码,包括:
11.通过js调用所述二进制库进行h265解码。
12.优选的,所述预设的流媒体框架包括:zlmed i akit框架。
13.优选的,所述渲染处理包括:cavans渲染;
14.所述cavans渲染包括:根据解码结果进行绘制,得到多个解码图形;
15.将所述解码图形进行独立判断;其中,
16.当所述多个解码图形为互相独立时,则根据所述解码图形的属性进行图形点筛选;否则,则进行图形渲染。
17.本发明还提供一种基于支持视频解码的实时通信系统,包括:
18.传输模块:用于基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;
19.编译模块:用于对所述h265进行编译处理,得到编译后的二进制库;
20.渲染模块:用于通过调用所述二进制库对所述h265进行解码,得到解码结果并进
行渲染处理。
21.优选的,所述编译模块中的编译处理包括:
22.通过ffmpeg接收h265,将所述ffmpeg编译为wasm标准的二进制库;
23.根据预设的标准库对所述二进制库进行编译对比,得到不符合预设标准的编译数据,并进行修订处理。
24.优选的,所述渲染模块中通过调用所述二进制库对所述h265进行解码,包括:
25.通过js调用所述二进制库进行h265解码。
26.优选的,所述传输模块中预设的流媒体框架包括:zlmed i akit框架。
27.优选的,所述渲染模块中的渲染处理包括:cavans渲染;
28.所述cavans渲染包括:根据解码结果进行绘制,得到多个解码图形;
29.将所述解码图形进行独立判断;其中,
30.当所述多个解码图形为互相独立时,则根据所述解码图形的属性进行图形点筛选;否则,则进行图形渲染。
31.本发明还提供一种计算机设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
32.当所述一个或多个程序被所述一个或多个处理器执行时,实现如上述的一种基于支持视频解码的实时通信方法。
33.本发明还提供一种计算机可读存储介质,其上存有计算机程序,所述计算机程序被执行时,实现如上述的一种基于支持视频解码的实时通信方法。
34.与最接近的现有技术相比,本发明具有的有益效果如下:
35.本发明提供了一种基于支持视频解码的实时通信方法、系统、设备及介质,包括:基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;对所述h265进行编译处理,得到编译后的二进制库;通过调用所述二进制库对所述h265进行解码,得到解码结果并进行渲染处理。本发明提高了webrtc的视频部分的实时通信传输速率,实现了在浏览器上支持h265,增强了解码的适用性。
36.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
37.下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
38.附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
39.图1为本发明提供的一种基于支持视频解码的实时通信方法的流程示意图;
40.图2为本发明提供的一种基于支持视频解码的实时通信系统的功能图。
具体实施方式
41.以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
42.实施例1:
43.本发明实施例提供一种基于支持视频解码的实时通信方法,如图1所示,包括:
44.步骤1:基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;
45.步骤2:对所述h265进行编译处理,得到编译后的二进制库;
46.步骤3:通过调用所述二进制库对所述h265进行解码,得到解码结果并进行渲染处理。
47.步骤1,具体包括:
48.具体的,所述预设的流媒体框架包括:zlmed i akit框架。
49.步骤2,具体包括:
50.具体的,所述所述编译处理包括:
51.通过ffmpeg接收h265,将所述ffmpeg编译为wasm标准的二进制库;
52.根据预设的标准库对所述二进制库进行编译对比,得到不符合预设标准的编译数据,并进行修订处理。
53.步骤3,具体包括:
54.具体的,所述通过调用所述二进制库对所述h265进行解码,包括:
55.通过js调用所述二进制库进行h265解码。
56.具体的,所述渲染处理包括:cavans渲染;
57.所述cavans渲染包括:根据解码结果进行绘制,得到多个解码图形;
58.将所述解码图形进行独立判断;其中,
59.当所述多个解码图形为互相独立时,则根据所述解码图形的属性进行图形点筛选;否则,则进行图形渲染。
60.本发明利用zlmed i akit、webrtc实现支持h265的解码,提高浏览器对视频解码的实用度,提高了使用便利性。
61.实施例2:
62.本发明实施例提供一种基于支持视频解码的实时通信系统,如图2所示,包括:
63.传输模块:用于基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;
64.编译模块:用于对所述h265进行编译处理,得到编译后的二进制库;
65.渲染模块:用于通过调用所述二进制库对所述h265进行解码,得到解码结果并进行渲染处理。
66.具体的,所述编译模块中的编译处理具体用于:
67.通过ffmpeg接收h265,将所述ffmpeg编译为wasm标准的二进制库;
68.根据预设的标准库对所述二进制库进行编译对比,得到不符合预设标准的编译数据,并进行修订处理。
69.具体的,所述渲染模块中通过调用所述二进制库对所述h265进行解码,包括:
70.通过js调用所述二进制库进行h265解码。
71.具体的,所述传输模块中预设的流媒体框架包括:zlmed i akit框架。
72.具体的,所述渲染模块中的渲染处理具体用于:cavans渲染;
73.所述cavans渲染包括:根据解码结果进行绘制,得到多个解码图形;
74.将所述解码图形进行独立判断;其中,
75.当所述多个解码图形为互相独立时,则根据所述解码图形的属性进行图形点筛选;否则,则进行图形渲染。
76.本发明通过各模块之间的协调配合,提高了webrtc对h265的转码速度,提高了浏览器的转码效率,增强了用户体验。
77.实施例3:
78.基于同一种发明构思,本发明还提供了一种计算机设备,该计算机设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(centra l process i ng un it,cpu),还可以是其他通用处理器、数字信号处理器(di gi ta l si gna l processor、dsp)、专用集成电路(app l i cat i on spec i f i c i ntegrated ci rcu it,as i c)、现成可编程门阵列(fi e l d-programmab l e gatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行计算机存储介质内一条或一条以上指令从而实现相应方法流程或相应功能,以实现上述实施例中一种基于支持视频解码的实时通信方法的步骤。
79.实施例4:
80.基于同一种发明构思,本发明还提供了一种存储介质,具体为计算机可读存储介质(memory),所述计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速ram存储器,也可以是非不稳定的存储器(non-vo l at i l e memory),例如至少一个磁盘存储器。可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中一种基于支持视频解码的实时通信方法的步骤。
81.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
82.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
83.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
84.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
85.最后应当说明的是:以上实施例仅用于说明本发明的技术方案而非对其保护范围的限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:本领域技术人员阅读本发明后依然可对申请的具体实施方式进行种种变更、修改或者等同替换,但这些变更、修改或者等同替换,均在申请待批的权利要求保护范围之内。
技术特征:
1.一种基于支持视频解码的实时通信方法,其特征在于,包括:基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;对所述h265进行编译处理,得到编译后的二进制库;通过调用所述二进制库对所述h265进行解码,得到解码结果并进行渲染处理。2.如权利要求1所述的一种方法,其特征在于,所述编译处理包括:通过ffmpeg接收h265,将所述ffmpeg编译为wasm标准的二进制库;根据预设的标准库对所述二进制库进行编译对比,得到不符合预设标准的编译数据,并进行修订处理。3.如权利要求1所述的一种方法,其特征在于,所述通过调用所述二进制库对所述h265进行解码,包括:通过js调用所述二进制库进行h265解码。4.如权利要求1所述的一种方法,其特征在于,所述预设的流媒体框架包括:zlmediakit框架。5.如权利要求1所述的一种方法,其特征在于,所述渲染处理包括:cavans渲染;所述cavans渲染包括:根据解码结果进行绘制,得到多个解码图形;将所述解码图形进行独立判断;其中,当所述多个解码图形为互相独立时,则根据所述解码图形的属性进行图形点筛选;否则,则进行图形渲染。6.一种基于支持视频解码的实时通信系统,其特征在于,包括:传输模块:用于基于预设的流媒体框架,通过webrtc的数据通道传输h265至目标浏览器;编译模块:用于对所述h265进行编译处理,得到编译后的二进制库;渲染模块:用于通过调用所述二进制库对所述h265进行解码,得到解码结果并进行渲染处理。7.如权利要求6所述的一种系统,其特征在于,所述编译模块中的编译处理包括:通过ffmpeg接收h265,将所述ffmpeg编译为wasm标准的二进制库。8.如权利要求6所述的一种系统,其特征在于,所述渲染处理包括:cavans渲染;所述cavans渲染包括:根据解码结果进行绘制,得到多个解码图形;将所述解码图形进行独立判断;其中,当所述多个解码图形为互相独立时,则根据所述解码图形的属性进行图形点筛选;否则,则进行图形渲染。9.一种计算机设备,其特征在于,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,实现如权利要求1至5中任一项所述的一种基于支持视频解码的实时通信方法。10.一种计算机可读存储介质,其特征在于,其上存有计算机程序,所述计算机程序被执行时,实现如权利要求1至5中任一项所述的一种基于支持视频解码的实时通信方法。
技术总结
本发明提供了一种基于支持视频解码的实时通信方法、系统、设备及介质,包括:基于预设的流媒体框架,通过webrtc的数据通道传输H265至目标浏览器;对所述H265进行编译处理,得到编译后的二进制库;通过调用所述二进制库对所述H265进行解码,得到解码结果并进行渲染处理。本发明提高了WebRTC的视频部分的实时通信传输速率,实现了在浏览器上支持H265,增强了解码的适用性。解码的适用性。解码的适用性。
技术研发人员:余丹 兰雨晴 何金泽 邢智涣 张腾怀
受保护的技术使用者:慧之安信息技术股份有限公司
技术研发日:2022.12.28
技术公布日:2023/9/25
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/