README.md

April 4, 2026 · View on GitHub

logo

ArtPlayer.js

:art: ArtPlayer.js is a modern and full featured HTML5 video player

Size Downloads Version License jsdelivr

Online Editor API Document Danmuku Changelog 🤖LLMs

screenshot

Home Page

https://artplayer.org

Mobile Demo

Features

ArtPlayer.js is an easy-to-use and feature-rich HTML5 video player, and most of the player's functional controls support customization, which makes it easy to connect with your business logic. In addition, it directly supports .vtt, .ass and .srt subtitle formats. Integration with other dependencies such as flv.js, hls.js, dash.js, etc. is also very simple. The code is highly decoupled, the structure and logic are clear, and it is easy to track errors and add new features.

Install

Install with npm:

$ npm install artplayer

Or install with yarn:

$ yarn add artplayer

Or install with pnpm:

$ pnpm add artplayer

Or install with bun:

$ bun add artplayer
import Artplayer from 'artplayer'

Or umd build also available:

<script src="path/to/artplayer.js"></script>

Or from CDN:

<!-- jsdelivr -->
<script src="https://cdn.jsdelivr.net/npm/artplayer/dist/artplayer.js"></script>

<!-- unpkg -->
<script src="https://unpkg.com/artplayer/dist/artplayer.js"></script>

Will expose the global variable to window.Artplayer.

Usage

<div class="artplayer-app"></div>
let art = new Artplayer({
  container: '.artplayer-app',
  url: 'path/to/video.mp4',
})

Plugins

NameDescribeState
artplayer-plugin-danmukuDanmuku (bullet comment) system
artplayer-plugin-hls-controlHLS quality control
artplayer-plugin-dash-controlDASH quality control
artplayer-plugin-vtt-thumbnailVTT thumbnail preview
artplayer-plugin-multiple-subtitlesMultiple subtitles support
artplayer-plugin-chromecastGoogle Chromecast support
artplayer-plugin-vastVAST/VPAID advertising
artplayer-plugin-chapterVideo chapters support
artplayer-plugin-auto-thumbnailAuto-generated thumbnails
artplayer-plugin-ambilightAmbilight effect
artplayer-plugin-document-pipDocument Picture-in-Picture
artplayer-plugin-audio-trackIndependent audio track playback
artplayer-plugin-jassubASS/SSA subtitle support
artplayer-plugin-danmuku-maskDanmuku masking (smart blocking)
artplayer-plugin-asrAutomatic Speech Recognition
artplayer-plugin-adsVideo advertising pluginWIP

Libraries

NameDescribeState
hls.jsHLS client
dash.jsMPEG DASH player
flv.jsHTML5 FLV Player
mpegts.jsMPEG-TS/FLV Player
webtorrent.jsStreaming torrent client

Proxys

NameDescribeState
CanvasProxy video to canvas
MediabunnyMediabunny proxy

Changelog

CHANGELOG.md

Contributing

CONTRIBUTING.md

Donations

We accept donations through these channels:

pay

QQ Group

QQ Group

License

MIT © Harvey Zhao