MCPcopy
hub / github.com/zhw2590582/ArtPlayer

github.com/zhw2590582/ArtPlayer @5.4.0 sqlite

repository ↗ · DeepWiki ↗ · release 5.4.0 ↗
27,203 symbols 103,491 edges 541 files 829 documented · 3%
README

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

<a href="https://artplayer.org">
    <img src="https://github.com/zhw2590582/ArtPlayer/raw/5.4.0/images/screenshot.png" alt="screenshot" width="720">
</a>

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
import Artplayer from 'artplayer'

Or umd build also available:

<script src="https://github.com/zhw2590582/ArtPlayer/raw/5.4.0/path/to/artplayer.js"></script>

Or from CDN:


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


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

Will expose the global variable to window.Artplayer.

Usage






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

Plugins

Name Describe State
artplayer-plugin-danmuku Danmuku (bullet comment) system

| | artplayer-plugin-hls-control | HLS quality control |

| | artplayer-plugin-dash-control | DASH quality control |

| | artplayer-plugin-vtt-thumbnail | VTT thumbnail preview |

| | artplayer-plugin-multiple-subtitles | Multiple subtitles support |

| | artplayer-plugin-chromecast | Google Chromecast support |

| | artplayer-plugin-vast | VAST/VPAID advertising |

| | artplayer-plugin-chapter | Video chapters support |

| | artplayer-plugin-auto-thumbnail | Auto-generated thumbnails |

| | artplayer-plugin-ambilight | Ambilight effect |

| | artplayer-plugin-document-pip | Document Picture-in-Picture |

| | artplayer-plugin-audio-track | Independent audio track playback |

| | artplayer-plugin-jassub | ASS/SSA subtitle support |

| | artplayer-plugin-danmuku-mask | Danmuku masking (smart blocking) |

| | artplayer-plugin-asr | Automatic Speech Recognition |

| | artplayer-plugin-ads | Video advertising plugin | WIP |

Libraries

Name Describe State
hls.js HLS client

| | dash.js | MPEG DASH player |

| | flv.js | HTML5 FLV Player |

| | mpegts.js | MPEG-TS/FLV Player |

| | webtorrent.js | Streaming torrent client |

|

Proxys

Name Describe State
Canvas Proxy video to canvas

| | Mediabunny | Mediabunny proxy |

|

Changelog

CHANGELOG.md

Contributing

CONTRIBUTING.md

Donations

We accept donations through these channels:

pay

QQ Group

QQ Group

License

MIT © Harvey Zhao

Extension points exported contracts — how you extend this code

Component (Interface)
(no doc) [32 implementers]
packages/artplayer/types/component.d.ts
Component (Interface)
(no doc) [32 implementers]
docs/assets/ts/artplayer.d.ts
PlayerProps (Interface)
(no doc)
example/react.js/src/Player.tsx
Config (Interface)
(no doc)
packages/artplayer-plugin-hls-control/types/artplayer-plugin-hls-control.d.ts
Option (Interface)
(no doc)
packages/artplayer-plugin-auto-thumbnail/types/artplayer-plugin-auto-thumbnail.d.ts
Option (Interface)
(no doc)
packages/artplayer-plugin-chromecast/types/artplayer-plugin-chromecast.d.ts
JassubOption (Interface)
(no doc)
packages/artplayer-plugin-jassub/types/artplayer-plugin-jassub.d.ts
Message (Interface)
(no doc)
packages/artplayer-tool-iframe/types/artplayer-tool-iframe.d.ts

Core symbols most depended-on inside this repo

push
called by 5615
docs/assets/js/vs/editor/editor.main.js
map
called by 2417
docs/assets/js/vs/editor/editor.main.js
n
called by 2091
docs/assets/js/vs/language/typescript/tsWorker.js
forEach
called by 1501
docs/assets/js/vs/editor/editor.main.js
get
called by 1489
docs/assets/js/vs/editor/editor.main.js
i
called by 1127
docs/document/assets/chunks/framework.xxfEszSJ.js
s
called by 1054
docs/document/assets/chunks/theme.DA2WZC55.js
call
called by 896
docs/upscaler/worker/video.js

Shape

Method 13,431
Function 11,281
Class 2,383
Interface 108

Languages

TypeScript100%

Modules by API surface

docs/assets/js/vs/editor/editor.main.js6,650 symbols
docs/uncompiled/artplayer-plugin-danmuku-mask/index.js2,353 symbols
docs/compiled/artplayer-plugin-danmuku-mask.mjs2,352 symbols
docs/compiled/artplayer-plugin-danmuku-mask.legacy.js1,606 symbols
docs/compiled/artplayer-plugin-danmuku-mask.js1,605 symbols
docs/assets/js/vs/language/typescript/tsWorker.js1,489 symbols
docs/uncompiled/artplayer-proxy-mediabunny/index.js908 symbols
docs/compiled/artplayer-proxy-mediabunny.mjs908 symbols
docs/compiled/artplayer-proxy-mediabunny.legacy.js889 symbols
docs/compiled/artplayer-proxy-mediabunny.js873 symbols
docs/document/assets/chunks/framework.xxfEszSJ.js581 symbols
docs/test/mocha.js508 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

Dependencies from manifests, versioned

@eslint/js9.33.0 · 1×
@glomex/vast-ima-player1.21.2 · 1×
@mediapipe/selfie_segmentation0.1.1675465747 · 1×
@tensorflow-models/body-segmentation1.0.2 · 1×
@tensorflow/tfjs-backend-cpu4.21.0 · 1×
@tensorflow/tfjs-backend-webgl4.21.0 · 1×
@tensorflow/tfjs-converter4.21.0 · 1×
@tensorflow/tfjs-core4.21.0 · 1×
@types/react19.1.10 · 1×
@types/react-dom19.1.7 · 1×
@vitejs/plugin-react5.0.0 · 1×

For agents

$ claude mcp add ArtPlayer \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact