浏览器

插件架构:NPAPI和PPAPI

NPAPI是当今最流行的插件架构,由网景开发,后Mozilla维护,几乎所有浏览器都支持,不过存在很大的安全隐患,插件可以窃取系统底层权限,发起恶意攻击。
2010年,Google在原有网景NPAPI(Netscape Plugin API)基础上开发了新的PPAPI(Pepper Plugin API),将外挂插件全部放到沙盒里运行。最新版本的firefox和chrome都不支持大多数NPAPI插件了。

播放rtmp

HTML5不支持rtmp,由flash插件来支持播放。
下载Adobe Flash Player,对不同的浏览器提供了支持不同类型API的插件版本。
http://get.adobe.com/cn/flashplayer/otherversions/
在Windows上,vlc安装过程中可以看到只提供了Mozilla和ActivX插件勾选。
在Ubuntu上,下载flash_player_npapi_linux.x86_64.tar.gz解压后,拷贝后重启firefox。

sudo cp libflashplayer.so /usr/lib/firefox-addons/plugins/libflashplayer.so

rtsp协议流数据在前端播放,没有特别好的解决方法,需要在本机装一个vlc 插件,依靠这个插件才能让 RTSP 协议 在网页上能播放,但是目前高版本的 Chrome浏览器已不支持 NPAPI 插件,也就是说高版本的 Chrome 浏览器还是不能播放(46 以上的版本都不行)。
对于rtsp,由于新版本的ff、chrome都不支持vlc插件,所以暂只能考虑使用旧版本。
http://www.cnblogs.com/qiaojie/p/5733335.html

Firefox 52.0 分支作为长期支持版本,将会持续到 2018 年三四月份,从该版本起,Firefox 将不再支持除了 Flash 插件之外的所有 NPAPI 插件。
Chrome uses PPAPI-based plugins ONLY now, while vlc-browser-plugin is NPAPI-based

Linux版本的chrome在版本35时已经没有enable-npapi选项了。
Since version 35 NPAPI is no longer supported in Linux versions of Chrome and Chromium. In the Windows versions you can still enable it on the page: chrome://flags/#enable-npapi.

播放rtsp

在angular或vue等框架中使用vcl插件播放rtsp视频时,可以js动态操作vlc播放,如果使用双括号表达式给mrl赋值,可能在firefox中产生每次进入视频页面都需要重新激活插件。

<object type='application/x-vlc-plugin' pluginspage="http://www.videolan.org/" id='vlc1' events='false' width="720" height="410">
  <param name='mrl' value='rtsp://u.itvitv.com/jpm1' />
  <param name='volume' value='0' />
  <param name='autoplay' value='true' />
  <param name='loop' value='false' />
  <param name='fullscreen' value='true' />
  <param name='controls' value='false' />
</object>
var vlc=document.getElementById("vlc1");
var id=vlc.playlist.add($scope.videoUrl);
vlc.playlist.playItem(id);

发布者

brogrammer

不怕路太远找不到终点,就怕两个世界画不成一个圆。 相对于很闷的计算机痴迷者,brogrammer是潇洒的程序员,他们善于社交,喜欢外出玩乐,他们是荷尔蒙旺盛的程序员新品种,是赋有社交型大脑的技术男。相对于一些成熟的公司里,他们在创业公司里更常见。

发表评论

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