Files
ArtPlayer/packages/artplayer-plugin-vtt-thumbnail

artplayer-plugin-vtt-thumbnail

Vtt thumbnail plugin for ArtPlayer

Demo

https://artplayer.org

TypeScript usage

The registration function is asynchronous. The optional runtime entry provides its accurate Promise type and uses the same implementation as the default entry:

import Artplayer from 'artplayer'
import vttThumbnail from 'artplayer-plugin-vtt-thumbnail/runtime'

const art = new Artplayer({ container: '#player', url: '/video.mp4' })
const result = await vttThumbnail({ vtt: '/thumbnails/index.vtt' })(art)
console.log(result.name)

You can also pass vttThumbnail({ vtt: '/thumbnails/index.vtt' }) in the player's plugins array. Existing default and /legacy imports remain available. Their declarations preserve the historical synchronous result type for compatibility, although registration has always returned a Promise at runtime. Reading result.name requires awaiting registration; changing to /runtime opts into that accurate type without changing runtime behavior. The option object remains required, and its vtt and style fields remain optional.

See ARCHITECTURE.md for module ownership, testing commands and remaining compatibility validation.

License

MIT © Harvey Zhao