The Live/DVR panel guessed DVR from a 60s seekable-window threshold, so an
EVENT source read as 'sliding live' until it had aggregated enough segments.
Classify from the parsed playlistType ('EVENT') via getMediaPlaylistMetadata
instead. Gate on metadata presence (show 'live (resolving…)' until a timeline
track has metadata) so an EVENT source no longer flickers through 'sliding
live' on load/reload before the playlist resolves.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Video.js v10
Modern, modular, and composable media player framework for Web and React.
🚧 Beta - close to stable. Experimental adoption in real projects. 🚧
Video.js v10 is close to stable. Try it out in real projects and share your feedback 🙏.
- Read our design documents.
- Read the v10 discussion topic.
- Watch Heff's recent presentation.
Timeline
- Technical Preview (Complete): Initial showcase for Demuxed.
- Alpha (Complete): See milestone
- Beta (Complete): See milestone
- GA (Mid 2026): See milestone ← WIP
- Video.js (End of 2026): Video.js core/contrib parity and supported plugins migrated.
Documentation
If you'd like to get started and learn more, you can find our documentation on our website:
Community
If you need help with anything related to Video.js 10, or if you'd like to casually chat with other members:
Contributing
We'd love for you to join our community channels above and give us feedback! Feedback on any of the following would help us:
- Player skin designs
- Component structures and APIs
- Package structure and exports
- Repo, workspace, contributor guides
Please see our contributing guide for getting set up locally and making code or docs changes.
Code of Conduct
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.