整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

开源项目评测之Html5视频播放器推荐

开源项目评测之Html5视频播放器推荐

eb项目开发中视频播放是一个非常常见的需求,需要播放器能够支持pc端和移动端的使用,并且支持常见的视频格式。我们从github上精选了5款优秀的Html5 播放器插件分享给大家。(排名不分先后)

  1. Ckplayer

ckplayer是一款在网页上播放视频的开源软件,主要特点是:开源,功能强大,不依赖其它插件,二次开发方便。

ckplayer基于MIT协议开源。


ckplayer示例图

当家官网最新版本是X2,更新时间:2020.09.20。

软件下载后,使用到的文件如下:


ckplayr 文件

一般项目只用到ckplayer.min.js 、ckplayer.swf、language.json、sytle.json 总大小不超过700k。

ckplayer 支持flv、mp4、m3u8、webm等。

功能上常用的播放控制、弹幕、贴片广告都支持。

2、 Media-element.js

HTML5<audio>或<video>播放器,支持MP4、WebM和MP3,以及HLS、Dash、YouTube、Facebook、SoundCloud和其他具有通用HTML5 MediaElement API的播放器,在所有浏览器中实现一致的UI。


media-element.js 示例图

支持视频和音频播放,主要强调在多终端上的界面一致性。

最新版本4.2.17,更新日期:2021-7-6


media-element 所需文件截图

使用基本功能只需要mediaelement-and-player.min.js、renderers/vimeo.min.js、renderers/twitch.min.js,大小在300k左右,非常小巧。

重点:提供插件机制,通过插件可以实现常见的播放列表、AirPlay、位置标记、视频预览等功能。

3、 VideoJs

开源HTML5和Flash视频播放器。目前多很大厂在使用。官网宣称世界上最流行的开源html5播放器。


video.js

支持的视频格式有:mp4,webm,ogv。

最新版本7.14.3, 更新时间:2021-7-27


video.js 文件

文件大小约:700k。

4、 Dplayer

非常可爱的html5 弹幕视频播放器。主打弹幕功能,支持MP4、HLS、FLV、WebTorrent播放,提供弹幕接口。


国人开发,有中文文档。国内很多公司在用。

最新版本v1.26.0 更新日期:2020-6-11


dplayer文件

基本功能使用文件大小161k. 另外也提供了很多插件供使用。

5、 Xgplayer

西瓜视频播放器(HTML5)、一款带解析器、能节省流量的HTML5视频播放器。字节跳动提供的开源视频播放器。

  • PC Web端支持直接播放mp4视频,播放HLS、FLV、MPEG-DASH需要浏览器支持Media Source Extensions
  • iOS系统Web场景支持直接播放mp4和HLS,不支持播放FLV、MPEG-DASH
  • 安卓系统Web场景支持直接播放mp4和HLS,播放FLV、MPEG-DASH需要浏览器支持Media Source Extensions



中文文档写得很非常全面。支持airplay、弹幕等功能。

支持视频、音频播放。基于插件机制,提供了丰富的插件来扩展播放器的功能。官网提供在线生成器来简化各种参数的配置,如下图:


推荐使用。

今天为大写整理了5个优秀的开源视频播放器的内容,后期会再更新各个播放器的详细使用并进行详细的评测,谢谢大家。

近我在使用的一款简单容易集成的 web 视频播放组件,支持播放 B站弹幕。

DPlayer 介绍

DPlayer 是一款基于 JavaScript 的 HTML5 弹幕视频播放器,用于在 web 开发中实现视频播放的功能,可以让开发者轻松在 web 应用中嵌入视频。

DPlayer 官网


DPlayer 的技术特点

  • 轻量简洁的界面,集成使用非常简单;
  • 功能强大,支持主流的视频格式,同时也支持弹幕播放,能够轻松接入B站弹幕
  • 支持直播模式,也支持用户实时弹幕互动;
  • 完整支持视频截图、倍速播放、清晰度切换等主流视频播放功能。

开发上手和使用体验

现在以视频作为传播媒体的内容仍然处在一个非常火热的发展阶段,不知道常来我网站逛的各位开发者有没有遇到要在项目中集成视频播放的需求,我之前也用过 Tiny Player 这款小巧的播放器,不过支持的功能比较单一;而强大一点的 xgplayer 不支持弹幕,而这次需求要支持弹幕,无法满足需求。

DPlayer 文档


于是就花时间找了一下,发现了 DPlayer 这款播放器非常合适,于是顺便写一篇文章来推荐给大家。

支持的功能

  • 显示弹幕
  • 视频截图
  • 快捷键
  • 清晰度切换
  • 进度缩略图
  • 加载字幕

支持视频格式

流媒体格式:

  • HLS
  • FLV
  • MPEG DASH
  • WebTorrent
  • 以及其他任何自定义的格式

视频文件格式:

  • MP4 H.264
  • WebM
  • Ogg Theora Vorbis

安装使用

以 npm 为例,以及在 Vue.js 项目中使用:

npm install dplayer --save

Vue 页面中引入:

<template>
  <div id="video"></div>
</template>
<script>
import DPlayer from 'dplayer';
// ... 省略无关代码,初始化播放器
const dp=new DPlayer({
    container: document.getElementById('video'),
    video: {
        url: 'https:///xxx.xxxx.mp4', // 视频地址
    },
});
</script>

这就完成一个基础播放器了,非常简单。当然 DPlayer 支持的功能也很多,官网提供了中文文档,写得很详细,并且都配套了代码例子,这里就不做过多示例了,在简单理解视频播放原理的前提下,几乎不需要学习就能轻松集成到项目中,亲测在手机端也可以使用。

DPlayer 参数列表


免费开源说明

DPlayer 是一个免费开源的 HTML5 视频播放器,由来自国内的开发者 DIYgod 开发,项目采用 MIT 开源协议,源码托管在 Github 上,任何人都可以免费下载来使用和修改,也能用于商业项目中。

↓↓点击查看本次分享的网站。

DPlayer - 免费开源、轻量简洁的 HTML5 视频播放器,支持弹幕播放、清晰度切换、倍速播放|那些免费的砖

开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个开源的HTML5流媒体播放器——PearPlayer.js。

PearPlayer是完全用JavaScript写的开源HTML5流媒体播放框架,实现了融合HTTP(含HTTPS、HTTP2)和WebRTC的多协议、多源、低延迟、高带宽利用率的无插件Web客户端流媒体加速能力。基于H5的MSE(Media Source Extension)技术将来自多个源节点的Buffer分块喂给播放器,再加上精心设计的算法可实现最优的调度策略及对各种异常情况的处理,PearPlayer由此能在保证用户流畅视频体验的前提下最大化P2P率。

PearPlayer特性

  • P2P能力基于WebRTC,无须安装任何插件
  • 多协议(HTTP、HTTPS、WebRTC)、多源
  • 自研的调度算法,在保证用户流畅视频体验的前提下最大化P2P率
  • 默认无需填参数(内部根据视频码率等作自适应),高级使用模式下可自行调整算法和参数
  • 默认不会无限制缓冲,尽可能为CP用户节省带宽/流量
  • 支持Chrome、Firefox、Opera、IE、Edge等主流浏览器,即将支持Safari、腾讯微信、X5/TBS(可多源传输,播放问题待不久后由MSE支持完善)
  • 可选接入低成本、高可用的Pear Fog CDN
  • 协议默认通过TLS/DTLS全加密,无DPI特征;并可通过Pear Fog组件的动态端口映射进一步消除统计学特征
  • 像使用HTML5 <video>标签一样简单,并易与video.js等流行播放框架集成
  • 具备Browser P2P能力(基于WebTorrent)

使用方法

首先通过script标签导入pear-player.min.js:

<script src="./dist/pear-player.min.js"></script>

或者使用CDN:

<script src="https://cdn.jsdelivr.net/npm/pearplayer@latest"></script>

假设用video标签播放以下视频,HTML如下:

<video id="pearvideo" src="https://qq.webrtc.win/tv/Pear-Demo-Yosemite_National_Park.mp4" controls>

只需以下几行代码,即可将PearPlayer绑定到video标签:

<script>

/**

* 第一个参数为video标签的id或class

* opts是可选的参数配置

*/

if (PearPlayer.isMSESupported()) {

var player=new PearPlayer('#pearvideo', opts);

}

</script>

至此,就已经添加播放器了,无需任何插件。


开源地址:https://gitee.com/PearInc/PearPlayer.js