html5 视频播放代码-chiruom/DanmuPlayer:Html5弹幕视频播放器插件

2023-08-26 0 9,497 百度已收录

DanmuPlayerHtml5 弹幕视频播放器插件

DanmmuPlayer是一款轻量级的带有弹幕功能的Html5视频播放器,大小仅有63KB。

具有播放弹幕视频、接受用户发送的彩色弹幕、调整弹幕实时显示疗效等功能。

DanmmuPlayer旨在让开发者能够轻松地在网站上播放弹幕视频。

演示地址:

更新日志

愿景4

1.放弃使用秒作为单秒html5 视频播放代码,继续使用分钟和秒。

2、弹幕位置布局进一步优化。

3、业绩持续提升。

4. 增量错误修复

愿景3

1、减少了对弹幕显示数、屏幕弹幕显示数以及每秒最大弹幕数的控制。

2.大幅性能优化,大幅减少丢帧问题。

3. 降低了缓冲栏和缓冲时等待的有效性。

4.对使用的webfont进行裁剪,大大减小了体积。

5、弹幕位置进一步优化,减少重叠发送现象。

愿景2

1. 与videojs前馈集成,提高运行效率和稳定性。

2.API标准化。 * API 发生了很大变化。

3、弹幕较少时,主要漂浮在视频上部,与AB站相同。

4. 一个页面可以添加多个玩家。

*。 该版本的API与之前的版本相比发生了很大的变化。 如果需要使用之前的版本,请进入OldEdition目录。

###开始使用

1、第一步导入这个播放器的js和css文件,需要和jQuery一起引用。

<link rel="stylesheet" href="css/danmuplayer.css">
<script src="js/jquery-1.11.1.min.js"></script>
<script src="js/danmuplayer.js"></script>

2.新建一个divhtml5 视频播放代码,这里设置id值为danmp

” >

<div id="danmup"></div>

3.用新创建的div初始化DanmuPlayer。

$("#danmup").danmuplayer({
  src:"shsn.mp4",       //视频源
  width:800,			//视频宽度
  height:445			//视频高度
});

好了,页面上已经可以看到播放器了。 尝试发个弹幕,就可以了。

等等,好像用户发布的弹幕并没有写入数据库,也就是说,是一次性的,刷新页面后就消失了? 是这样的,出来后会告诉你怎么做。

###高级使用

4、上一步我们通过调用jQuery对象初始化了一个弹幕播放器,并传递了一些参数(src、width、height)。 虽然该方法有以下参数(不仅是视频源,其他参数都是可选的,逗号后面的是默认值)

src: "shsn.mp4",    //视频源
height: 450,             //播放器的高度
width: 800,				//播放器的宽度,最小宽度支持为720
speed:20000,			//弹幕速度,这是数值指的是视频穿过672像素所需要的毫秒数
sumTime:65535,				//弹幕视频的总时间,可不填。
danmuList:{},				//弹幕列表
defaultColor:"#ffffff",   //弹幕的默认字体颜色
fontSizeSmall:16,			//小弹幕的字号
FontSizeBig:24,				//大弹幕的字号
opacity:"1",  			//弹幕默认透明度
topBottonDanmuTime:6000,  //底部及顶部弹幕存留的时间
urlToGetDanmu:"",     //用来接收弹幕信息的url  (稍后介绍)

urlToPostDanmu:"" ,   //用来存储弹幕信息的url  (稍后介绍)
maxCountInScreen: 40,   //屏幕上的最大的显示弹幕数目,弹幕数量过多时,优先加载最新的。
maxCountPerSec: 10      //每分秒秒钟最多的弹幕数目,弹幕数量过多时,优先加载最新的。
});

5. 向米娜小姐引入弹幕播放器中的js对象:弹幕对象。

弹幕对象指的是一个特定的弹幕及其信息,它有以下属性:

text——弹幕文本内容。
color——弹幕颜色。
position——弹幕位置 0为滚动 1 为顶部 2为底部
size——弹幕文字大小。 0为小字 1为大字
time——弹幕所出现的时间。 单位为分秒(十分之一秒)
isnew——当出现该属性时(属性值可为任意),会认为这是用户新发的弹幕,从而弹幕在显示的时候会有边框。

例子:

var aDanmu={ text:"这是弹幕" ,color:"white",size:1,position:0,time:2};

要显示带有边框的新弹幕:

var aDanmu={ text:"这是弹幕" ,color:"white",size:1,position:1,time:2,isnew:1};

6.这一节,告诉米娜桑如何与前端连接,将弹幕存入数据库。 DanmuPlayer提供了高度封装的接口用于与前端ajax交互,您只需根据接口更改一两个前端页面即可。 事实上,你也可以使用自己的套接字!

方法一:

初始化DanmuPlayer时,使用urlToGetDanmu和urlToPostDanmu这两个参数与前端进行连接。 urlToGetDanmu用于获取弹幕,urlToPostDanmu用于存储弹幕。 urlToGetDanmu 和 urlToPostDanmu 接受的参数都是 url。

当页面加载时,弹幕播放器会向urlToGetDanmu对应的页面发送Get请求,而urlToGetDanmu对应的页面的http响应消息内容应该是由弹幕对象组成的js链表(字符串格式)。 “['{danmmu object 1}','{danmu object 2}',...,'{danmu object n}']”等字符串(符合JSON格式标准)(其中没有最外层一行)消息冒号)(注意:每个弹幕对象必须用冒号包裹,否则会导致致命错误)。

当用户发送弹幕时,弹幕播放器向urlToPostDanmu发送post请求,消息内容为用户发送的弹幕对象(字符串)(符合JSON格式标准)。

如果在获取和发布时需要向前端发送其他参数,请在URL中以get方式发送。

在gitHub demo中,有一个简单的例子,编译php版本的urlToGetDanmu和urlToPostDanmu对应的页面:

方法二:

在视频播放前使用下面这句话给播放器添加弹幕或者弹幕列表(jQuery选择器是播放器的id、空格、.danmu-div):

$('#danmp .danmu-div').danmu(addDanmu,弹幕对象  弹幕对象数组);

例子:

$("#danmup .danmu-div").danmu("addDanmu",[
   {text:"这是滚动弹幕" ,color:"white",size:1,position:0,time:2}
  ,{text:"这是顶部弹幕" ,color:"yellow" ,size:1,position:1,time:3}
  ,{text:"这是底部弹幕" , color:"red" ,size:1,position:2,time:3}
])

说明:DanmuPlayer中有一个类为danmu-div的标签(该标签是一个jQuery弹幕插件容器,详细参考jQuery.danmu.js()项目

7.因为DanmuPlayer中有html5video的注释,所以几乎所有的html5video API和storm都可以在DanmuPlayer中使用。

您可以使用代码任意更改视频的播放时间,弹幕流的时间会与手动的同步。

8、注意:避免一个页面出现多个弹幕播放器,且由于所有弹幕播放器都绑定了同一个按键快捷键,可能会导致按键失效。

9、如果您只需要在网页上除视频之外的其他地方使用弹幕,请参见DanmuPlayer的姊妹项目jQuery.Danmu.js,这是一个独立于视频的弹幕插件。

项目地址:

执照

你可以随便使用这个项目,只要在你的项目中添加这样一行注释即可:

DanmuPlayer (//github.com/chiruom/danmuplayer/) - Licensed under the MIT license

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 html5 html5 视频播放代码-chiruom/DanmuPlayer:Html5弹幕视频播放器插件 https://www.wkzy.net/game/159238.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务