整合营销服务商

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

免费咨询热线:

一个开源的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

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个优秀的开源视频播放器的内容,后期会再更新各个播放器的详细使用并进行详细的评测,谢谢大家。

TML5自带了一个原生视频播放器。它在浏览器中配备了简单的用户界面、功能和一些基本的控件。尽管通过浏览器的默认视频播放器的功能完美运行,但用户界面并不那么美观和时尚,总体上并不令人满意。

因此,大多数现代Web应用程序和平台,如Udemy、Netflix、YouTube和Amazon Prime,不会将默认内置的HTML5视频播放器提供给他们的用户。相反,他们会构建自己定制的版本,具有时尚的用户界面,使其平台更具吸引力和用户友好性。

如果你曾经好奇这些公司和Web平台是如何完成这样的壮举的,那么本文就是为你而写的。

在按照逐步指南进行操作时,您将获得一些实践经验,该指南将教您如何构建和自定义自己的HTML5视频播放器。您将学习如何自定义用户界面、扩展功能,并构建自己的出色的自定义控件和功能。

您还将学习如何仅使用浏览器中提供的原生Video API来构建所有这些功能——无需外部库或工具。

(本文内容参考:java567.com)