查看: 2432|回复: 7
【教程】如何自己搭建一个B站一样的弹幕网站
[复制链接]
barnett2010
barnett2010
当前离线
积分103250
窥视卡
雷达卡
1013 小时
在线时间801
帖子2万
金钱
窝头
叫我如影就可以了啦,晓得伐。
积分103250
发消息
电梯直达
楼主
发表于 2015/1/25 00:23
|
只看该作者
|倒序浏览
|阅读模式
Mukioplayer是一个优秀的基于Flex/AIR/Flash的开源弹幕播放器项目,让我们在A/B站之外有了更多选择(例如基于mukio修改版的tucao.cc)。不过对于我这种完全没有接触过Flex相关技术的人来说,即使从svn下载好了最新版的代码和文档也不会编译和使用>_<。好在作者好心地提供了编译后的swf文件,我们直接拿原版来放到网站上就可以使用了。所以这篇文章就是简单介绍一下MukioPlayer 1.x版(web版)和2.x版(plus版)的配置和调用方法,希望对你有所帮助:
MukioPlayer版本这篇文章要介绍的是MukioPlayer的Web版和Plus版。当然还有其他一些版本例如wordpress版html版之类,那些因为功能阉割比较严重所以都不在讨论范围内。WebMukioPlayer Web版是比较老的一个版本,版本号为1.xx,最后更新时间为2010-9-27。从界面上来看是不是有些似曾相识?貌似是很多年前acfun的播放器样式来着:
功能上也是很简单的,支持加载新浪源/AB站弹幕,支持过滤,支持发送弹幕/Zoome弹幕。PlusMukioPlayer Plus是基于Web版重构后的版本,据说是因为代码太混乱而且使用的技术比较古老了。版本号为2.x,目前编译版本的最后的更新时间是2011-6-11(想要最新的编译版?自己去SVN拿最新代码然后编译吧哈哈)。界面重新制作,感觉上比较接近现代弹幕播放器了。。。
这个版本除了web版的特性之外还支持拉伸/宽屏模式/各种视频源(没有具体测试过)/高级脚本弹幕/等等新功能
Web版配置方法1.首先你需要下载编译好的Mukioplayer.swf文件mukioplayer web 20100927.zip将swf文件放到你的网站某个目录中,例如 http://mukioplayer/mukioplayer.swf 这里假设你的网站网址是 http://mukioplayer/2.生成一个网页用来调用flash播放器,例如http://mukioplayer/test.html
咦,说好的vid去哪里了?别着急,我们可以在Page_Load()中动态设置它(别忘了把代码中的vid改成真正的新浪源videoID哦):protected void Page_Load(object sender, EventArgs e)
{
MukioPlayer.Attributes["flashvars"] = "vid=94917572&type=video&sort=new";
}
这样页面在加载时就会向MukioPlayer传递vid参数了。播放开始后,播放器会首先去新浪网找视频文件并加载它,接着,就会向你在conf.xml中
获取所有弹幕——GetComment.aspx从刚才的conf.xml配置文件可以看到,GetComment.aspx页面接受一个名为id的参数,这个ID就是你在Play.aspx页面中传递给播放器的那个vid,视频加载成功后播放器会拿着这个ID找你(服务器)要弹幕列表哦:首先在aspx文件中删除第一行外所有的html代码,只留下<%@Page….%>那一行然后在Page_Load()中处理来自Flash播放器的请求:public partial class GetComment : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//得到URL中的id参数
var vid = int.Parse(Request["id"]);
//去数据库寻找此id的所有弹幕数据
var sqlstring = "SELECT * FROM [COMMENT] WHERE [ID]=" + vid;
var sql = "过程略";
//返回类似于Bilibili格式的XML数据
//
Response.ContentType = "text/xml; charset=utf-8";
Response.Write("");
//随便添加两条弹幕数据
Response.Write("
Response.Write("
Response.Write("");
}
}
发射弹幕——SendComment.aspx播放开始啦,当用户在播放器内填写弹幕,点击发送后,播放器会向conf.xml中
{
protected void Page_Load(object sender, EventArgs e)
{
try
{
int vid = int.Parse(Request["id"]);
string userid = Request["user"];
float playtime = float.Parse(Request["stime"]);
int fontsize = int.Parse(Request["size"]);
int color = int.Parse(Request["color"]);
int mode = int.Parse(Request["mode"]);
//int pool = int.Parse(Request["pool"]);
long timestamp = Convert.ToInt64((DateTime.UtcNow - new DateTime(1970, 1, 1, 7, 0,0, DateTimeKind.Utc)).TotalSeconds);
string message = Request["message"];
//把上面这一堆写进数据库
var sqlstring = "INSERT INTO [COMMENT] VALUES";
//添加成功后,返回这条弹幕的行ID
Response.Write("12345");
}
catch
{
//如果出现错误,返回-1
Response.Write("-1");
}
}
}
启动测试,欧也,大功告成!代码中添加的两条内容为“内容”的弹幕也能正确显示出来。发送弹幕时也能正确到达SendComment.aspx.cs中的断点,说明网站正常运行。至此一个我们自己的弹幕网站就搭建完成了。
示例代码上面的代码可以从这里找到:http://vdisk.weibo.com/s/qWaDn使用VS2012创建,如果你安装了VS2010 SP1也可以打开的
回复
支持
反对
使用道具
举报
照妖镜
barnett2010
barnett2010
当前离线
积分103250
窥视卡
雷达卡
1013 小时
在线时间801
帖子2万
金钱
窝头
叫我如影就可以了啦,晓得伐。
积分103250
发消息
板凳
楼主|
发表于 2015/1/25 00:36
|
只看该作者
上面提到的是这个mukioplayer.
项目页面 https://code.google.com/p/mukioplayer/ 打不开的话,论坛有梯子。
MukioPlayer 弹幕播放器MukioPlayer 弹幕播放器包含两个主要版本: 网页版与桌面版WEB/网页弹幕播放器: MukioPlayerPlus(图为 MukioPlayerPlus 弹幕播放器,别认错了)网页弹幕播放器是搭建弹幕网站的核心组件。MukioPlayerPlus (第二代)用Flash 编写,适合嵌入到各类网站。源代码在MIT开源协议下完全开放,可以与各种网站后端无缝整合。Air/桌面弹幕播放器: MukioPlayer(图为 MukioPlayer 桌面版)桌面弹幕播放器用于播放本地的视频及弹幕,方便在离线环境下观看弹幕视频。MukioPlayer 桌面版使用Adobe Air 技术,与网页版共享核心代码。与其他桌面弹幕播放器相比,最大的优势在于具有与弹幕网站一致的弹幕观感。安装本程序前,请先安装好Adobe Air。下载:网盘桌面版安装教程: 安装指南发行日志: ReleaseNotes源代码: svn checkout http://mukioplayer.googlecode.com/svn/ mukioplayer-read-only
回复
支持
反对
使用道具
举报
照妖镜
barnett2010
barnett2010
当前离线
积分103250
窥视卡
雷达卡
1013 小时
在线时间801
帖子2万
金钱
窝头
叫我如影就可以了啦,晓得伐。
积分103250
发消息
地板
楼主|
发表于 2015/1/25 00:37
|
只看该作者
Filename ▼Summary + Labels ▼Uploaded ▼ReleaseDate ▼Size ▼DownloadCount ▼... mukioplayer v1.200.zipmukioplayer v1.200Jul 2013Jul 2013801 KB12668 MukioPlayerHtmlDesktopv1.0.zipMukioPlayerHtmlDesktopv1.0a另一个桌面弹幕播放器Jun 2011Jun 2011336 KB4166 mukioplayerv2.000r83.zipMukioPlayer Net Version 2.000测试版r83Jun 2011Jun 2011262 KB4078 mukioplayer web 20100927.zipmukioplayer web GAE SRC(python)[本地上传弹幕,支持两种格式] 2010年9月27日 FeaturedSep 2010227 KB5521 MukioPlayer Net Version.zipMukioPlayer 服务器版 v1.146Jul 2010212 KB4375
回复
支持
反对
使用道具
举报
照妖镜
barnett2010
barnett2010
当前离线
积分103250
窥视卡
雷达卡
1013 小时
在线时间801
帖子2万
金钱
窝头
叫我如影就可以了啦,晓得伐。
积分103250
发消息
5#
楼主|
发表于 2015/1/25 00:39
|
只看该作者
http://blog.sina.com.cn/s/blog_58c506600101i5sr.html
http://blog.sina.com.cn/s/blog_58c506600101ivdf.html
回复
支持
反对
使用道具
举报
照妖镜
barnett2010
barnett2010
当前离线
积分103250
窥视卡
雷达卡
1013 小时
在线时间801
帖子2万
金钱
窝头
叫我如影就可以了啦,晓得伐。
积分103250
发消息
6#
楼主|
发表于 2015/1/25 00:49
|
只看该作者
这是在线演示网站
http://gae.mukio.org/
回复
支持
反对
使用道具
举报
照妖镜
barnett2010
barnett2010
当前离线
积分103250
窥视卡
雷达卡
1013 小时
在线时间801
帖子2万
金钱
窝头
叫我如影就可以了啦,晓得伐。
积分103250
发消息
7#
楼主|
发表于 2015/1/25 00:58
|
只看该作者
discuz
wordpress
均有相关插件下载
回复
支持
反对
使用道具
举报
照妖镜