什么是pgHtml5Bridge?

pgHtml5Bridge是利用Html5中的WebSocket等技术将C++的Peergine中间件的API和一些特性桥接到web中,并将Peergine中间件的API翻译成JavaScript的版本。

P2P中间件桥接程序是一个Web服务器和Peergine中间件集成的一个服务程序,目的是可以在浏览器端开发和运行P2P视频应用。简化开发流程,降低开发难度。尽可能的兼容更多的流览器。

通过对世面上常见的几款浏览器的分析,发现浏览器为了安全,将不再提供原生插件的用法,ActiveX也只支持IE,Chrome,火狐更是早就已经不再支持运行原生应用了。

所以我们开发P2P中间件桥接程序,web利用Http和WebSocket 访问P2P中间件桥接程序,P2P中间件桥接程序启动Peergine P2P实例,并利用webSocket返回回调信息。

这样简单的信息通信就可以做到了,其中还有就是视频的传输和播放问题,为了兼容更多的浏览器,我们让浏览器通过刷新图片的方式播放视频,P2P中间件桥接程序

注意:API调用是需要注意的点,API调用是其实是一个阻塞的过程,在中间件桥接程序不忙的时候可以很快返回,几乎感受不到卡顿,近似没有阻塞。但是一旦中间件桥接程序很忙,导致不能及时响应请求,就可能造成页面卡死崩溃。

注意:视频刷新是使用轮询的方式,和API请求是走的同一条通道,存在相互影响的可能,如果后台程序突然不能访问,无法响应请求,就会导致web页面卡死或者崩溃。

Peergine中间件的回调是通过WebSocket返回。Js执行阻塞有可能导致接收WebSocket的js代码不能执行。

关于浏览器最小化到后台说明

浏览器挂到后台后,经过测试发现Chrome的js不再执行,IE也有一些问题导致页面无法正常工作。P2P中间件桥接程序可能会因为无法与页面通信而销毁页面关联的Peergine实例。导致之后的操作出现异常,必须重新启动。

pgHtml5Bridge的结构。

  1. PGHtml5Bridge有两部分组成:

一部分是Web的前端,这部分主要包含pgHtml5Bridge.js,以及一些其他Web页面。

另一部分是由Peergine中间件,HTTP服务器和WebSocket服务器组成的后端。

  1. 发布程序安装后的目录结构:

├─bin

│ └─res

├─DemoWeb

├─Doc

其中bin目录中包含服务程序和一些运行依赖的动态库。

DemoWeb目录中是前端的Demo代码。

Doc目录下是一些说明文档。

启动方式及区别。

运行安装MSI后自动安装成服务并自启动。

API的改动说明。

  1. 升级日志。

序号

修改说明

版本

1

 

V0.2

   
   

发表评论

邮箱地址不会被公开。 必填项已用*标注

+ 38 = 44