掌桥专利:专业的专利平台
掌桥专利
首页

一种可扩展的基于chromium内核的多媒体播控系统

文献发布时间:2023-06-19 19:38:38


一种可扩展的基于chromium内核的多媒体播控系统

技术领域

本发明涉及播控技术领域,更具体地说,它涉及一种可扩展的基于chromium内核的多媒体播控系统。

背景技术

多媒体渲染系统实现方案一般采用c/s模型,这种实现方式性能比较高效,但是随着人机交互方式越来越复杂,软件的扩展、维护成本越来越高。B/S模型可以解决这些痛点,但是,目前基于chromium的浏览器仅仅能支持有限的信号源类型:如本地音视频、WEBRTC、PDF等一些传统的信号源,然而,如RTSP、RTMP、SIP、自定义的流媒体协议等信号源在chromium内核层面上没有实现,信号源甚至包括word、ppt、excel、投屏等。

其中WEBRTC为网页即时通信(英语:Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。RTSP(Real Time StreamingProtocol),RFC2326,实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学、网景和RealNetworks公司提交的IETF RFC标准。RTMP是Real Time MessagingProtocol(实时消息传输协议)的首字母缩写。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。

发明内容

本发明要解决的技术问题是针对现有技术的上述不足,本发明的目的是提供一种可以支持不同信号源类型的可扩展的基于chromium内核的多媒体播控系统。

本发明的技术方案是:一种可扩展的基于chromium内核的多媒体播控系统,包括:

Browser进程,所述Browser进程是使用chromium提供的content层进行定制的,用于对多媒体数据源管理进程用户进行授权处理;

多媒体渲染进程,所述多媒体渲染进程为基于chromium的PPAPI框架实现,用于对多媒体信号进行解码、渲染;

多媒体数据源管理进程,所述多媒体数据源管理进程为基于chromium的PPAPI框架实现,用于管理信号源插件进程;

信号源插件进程,所述信号源插件进程用于采集信号源数据,并发送给所述多媒体渲染进程;不同信号源类型对应于不同的信号源插件进程;

所述多媒体渲染进程与所述多媒体数据源管理进程、信号源插件进程建立IPC连接。

进一步地,所述多媒体渲染进程包括:

进程间通信模块,用于负责建立与所述多媒体数据源管理进程的IPC连接、负责建立与所述信号源插件进程的IPC连接;

事件接收与转发模块,用于负责接收来自鼠标、键盘、触摸、JS脚本的消息,并根据所述消息的类型将所述消息转发给所述多媒体数据源管理进程或具体的信号源插件进程;

音视频解码模块,用于对音视频数据进行解码处理;

调度模块,用于负责调度渲染模块;

渲染模块,用于将解码后的音视频数据帧绘制到纹理上。

进一步地,所述多媒体数据源管理进程包括:

进程间通信建立模块,用于负责建立与所述多媒体渲染进程的IPC连接;

插件进程启动模块,用于根据所述多媒体渲染进程传入的信号源类型,启动相应的信号源插件进程;

事件接收与发送模块,用于接收来自所述多媒体渲染进程的消息。

进一步地,所述信号源插件进程包括:

进程间通信建立模块,用于负责建立与所述多媒体数据源管理进程的IPC连接、负责建立与所述多媒体渲染进程的IPC连接;

事件接收发送模块,用于接收来自所述多媒体数据源管理进程、多媒体渲染进程的消息;

信号源数据帧发送模块,用于接收人机交互复杂的信号源数据,当一帧数据准备完毕以后,发送给所述多媒体渲染进程。

有益效果

本发明与现有技术相比,具有的优点为:

1.信号源的解码与渲染都基于chromium内核完成,保证了系统的性能,人机交互是复杂的,而且经常变化,利用JavaScript来实现这部分功能,保证了系统的可维护性。

2.如果需要支持一种新的信号源,只需要编写相应的插件,这样保证了系统的可扩展性。

3.如果一个信号源插件崩溃,不会影响其它插件,保证了系统的稳定性。

附图说明

图1为本发明的总体架构图;

图2为本发明中多媒体渲染进程的架构图;

图3为本发明中多媒体数据源管理进程的架构图;

图4本发明中信号源插件进程的架构图。

具体实施方式

下面结合附图中的具体实施例对本发明做进一步的说明。

参阅图1-4,一种可扩展的基于chromium内核的多媒体播控系统,包括:

Browser进程,Browser进程是使用chromium提供的content层进行定制的,除浏览器一些必备的功能以外,还用于对多媒体数据源管理进程用户进行授权处理,授权的多媒体数据源管理进程可以启动运行,Chromium是由Google主导开发的网页浏览器;

多媒体渲染进程,多媒体渲染进程为基于chromium的PPAPI框架实现,本质上是一个PpapiPlugin进程,用于对多媒体信号进行解码、渲染;

多媒体数据源管理进程,多媒体数据源管理进程为基于chromium的PPAPI框架实现,本质上是一个PpapiPlugin进程,用于管理信号源插件进程;

信号源插件进程,信号源插件进程用于采集信号源音视频数据,并发送给多媒体渲染进程;不同信号源类型对应于不同的信号源插件进程,如流媒体插件、Word插件、PPT插件、EXCEL插件等;

多媒体渲染进程与多媒体数据源管理进程、信号源插件进程建立IPC连接,IPC即Inter-Process Communication,进程间通信。

系统还包括HTML文本、Render进程、GPU进程。Browser进程、Render进程读取HTML文本,Browser进程通过Render进程建立与多媒体数据源管理进程、多媒体渲染进程的IPC连接,GPU进程分别建立与Browser进程、Render进程IPC连接。

多媒体渲染进程的架构如图2所示,包括:

进程间通信模块,用于负责建立与多媒体数据源管理进程的IPC连接、负责建立与信号源插件进程的IPC连接;

事件接收与转发模块,用于负责接收来自鼠标、键盘、触摸、JS脚本的消息,并根据消息的类型将消息转发给多媒体数据源管理进程或具体的信号源插件进程;

音视频解码模块,用于对音视频数据进行解码处理;

调度模块,用于负责调度渲染模块;

渲染模块,用于将解码后的音视频数据帧绘制到纹理上;

信号源的解码与渲染都基于chromium内核完成,保证了系统的性能。

多媒体数据源管理进程的架构如图3所示,包括:

进程间通信建立模块,用于负责建立与多媒体渲染进程的IPC连接;

插件进程启动模块,用于根据多媒体渲染进程传入的信号源类型,启动相应的信号源插件进程;

事件接收与发送模块,用于接收来自多媒体渲染进程的消息。

信号源插件进程的架构如图4所示,包括:

进程间通信建立模块,用于负责建立与多媒体数据源管理进程的IPC连接、负责建立与多媒体渲染进程的IPC连接;

事件接收发送模块,用于接收来自多媒体数据源管理进程、多媒体渲染进程的消息;

信号源数据帧发送模块,用于接收人机交互复杂的信号源数据,当一帧数据准备完毕以后,发送给多媒体渲染进程;

人机交互是复杂的,而且经常变化,利用JavaScript来实现这部分功能,保证了系统的可维护性,如果需要支持一种新的信号源,只需要编写相应的插件,这样保证了系统的可扩展性,如果一个信号源插件崩溃,不会影响其它插件,保证了系统的稳定性。

以上仅是本发明的优选实施方式,应当指出对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些都不会影响本发明实施的效果和专利的实用性。

相关技术
  • 多媒体文件播控系统及多媒体系统的播控方法
  • 一种基于Chromium内核的数据交互方法及装置
技术分类

06120115987374