CommentCoreLibrary与代码弹幕支持更新

近期发现了一个相对完整很多的社区对于B站代码弹幕的API总结的文档:http://biliscript-syndicate.github.io/ 于是在参考了其中的许多内容,大量AS3文档后,彻底改变了CCL的代码弹幕实现(以确保未来更高的模块化支持)。现在的CCL代码弹幕部分,采取TypeScript编译而成,已经还原了很多很多的新接口,一改以前的自行探索接口。

测试一如既往的在:http://jabbany.github.io/CommentCoreLibrary/demo/scripting/

3D代码弹幕渲染支持
Continue reading →

高级脚本弹幕@CommentCoreLibrary

终于放假了有时间继续研发CommentCoreLibrary了。之前就有所研究高级弹幕的可行性,安全问题和兼容问题,经过一些思考终于在新的实验性平台上实现了代码弹幕的基本还原!(卧槽!)

一、安全性/沙箱

随便让一些代码在浏览器里运行是非常危险且可怕的。而代码弹幕却需要带给用户一个相对较大的活动空间,却又需要保持代码的安全性。所以沙箱(Sandboxing)设计成为了重要的第一关。有关JS沙箱,有那么两三种当时在考虑范围内。一个是通过JS实现一个 JS解释器,这样用户代码就在虚拟的解释器里面运行,而外部则可以开放一些指定的API 供其调用。然而经过一番实验发现现有的很多JS下的JS解释器速度非常慢,或者占用内存不少(比如有的用LLVM编译的,然后再用Emscripten运行的。会时不时带着浏览器崩溃。。。 Continue reading →

Coverflow+ABPlayerHTML5技术预览

今天终于把ABPlayerHTML5的多播放器BUG修完了,现在可以在一个页面上轻松的载入多个ABPlayerHTML5的播放器实例然后互不干扰的。

实在无聊突然想到HTML5的话反正播放器就是一个排版元素而已,所以是不是可以插到一些已有的插件里。然后就找了一个jQuery写的 Coverflow实现:https://github.com/vanderlee/coverflow 揪过来稍微跟ABPlayerHTML5混搭了一下。效果不错。

播放器

 

一如既往 ABPlayerHTML5位于 https://github.com/jabbany/ABPlayerHTML5

同时本DEMO 位于 http://jabbany.github.io/ABPlayerHTML5/build/demos/coverflow.html

ABPlayer4WP – 在 WordPress中插入HTML5的弹幕播放器

最近假期了,看在MukioPlayer都有支持WordPress的插件,所以萌生了把ABPlayerHTML5转到WP下的想法。。。于是初步测试了一下发现弹幕效果还是可以接受的,然后顺便就发现了几个吃CPU的操作,于是稍微修正了一下。

在Wordpress上的弹幕播放模块 Continue reading →

ABPlayerHTML5和CommentCoreLibrary

随着B站最近加紧推出了各移动终端的软件后,现在似乎从 Android到 iOS都已经齐全了,于是HTML5版的弹幕播放器就继续开始酝酿了。由于再次温习了一下ABPlayer的源码和一些实现,加上JS又学到了新的知识(呃),于是改了一下ABPlayerHTML5的弹幕核心。为了改的方便和测试方便,于是就把专门处理弹幕的部分拿了出去,结果懒得合并回去了,才出现了所谓的CommentCoreLibrary。

CommentCoreLibrary是ABPlayerHTML5的弹幕核心元件,也是任何有希望了解弹幕播放器原理或是自己实现弹幕播放器的开发者们可以参考的一个JavaScript库。各种功能,如空间拆分器、弹幕过滤器等都被分开存放,让主文件更加易懂。而且稍微改变了几处的实现、修复了几个有关3D弹幕,3D运动弹幕的BUG之类的。目前可以比较正确的解析大部分的神弹幕,当然文字拼图的弹幕由于WEB字体过大所以依然有些问题。

运行性能测试:http://tools.kanoha.org/experimental/CommentCore

相比之下ABPlayerHTML5的下一步是完善播放器的操控界面,如:播放进度条,弹幕列表,发送器等。

还有,ABPlayerHTML5 改进了获取Sina片源的机制(从猜地址法换到利用接口),主要感谢B站的Android客户端里面提供的Sina地址接口

现在获取Sina的HTML5对应视频VID可以通过:
http://video.sina.com.cn/interface/video_ids/video_ids.php?v=vid返回的JSON对象获取。获得的地址可用在:
http://v.iask.com/v_play_ipad.php?vid=ipad_vid来直接进行外链播放!

[概念播放器]ABPlayerHTML5实体测试

之前有把ABPlayerHTML5的JS内部机制制作完成,不过呢,这次算是把一个基础界面也制作完毕了。用过G+的人们可能能认出来这个界面“灵感”的来源,没用过的赶紧去试试,那里有很多有意思的人。好吧,言归正传。

这是ABPlayerHTML5的概念界面

整个播放器除了视频部分全部应用了HTML5, CSS和JS实现。通过在Flash层上放置弹幕滚动层来实现出滚动弹幕的效果。可以耐受较大高压的弹幕,不过呢,由于需要通过Flash和JS的桥来进行,所以似乎非常的耗费处理资源。 Continue reading →