Videojs Warn Player.tech--.hls Is Deprecated. Use Player.tech--.vhs Instead May 2026
If you have ever built a custom video player for HLS (HTTP Live Streaming) streams using Video.js, you may have stumbled upon a confusing warning in your browser’s developer console:
VIDEOJS WARN: player.tech--.hls is deprecated. use player.tech--.vhs instead
This warning does not necessarily break your player immediately, but it signals an important shift in how Video.js handles HLS playback internally. Ignoring it could lead to future compatibility issues, unexpected bugs, or failed upgrades. If you have ever built a custom video
In this article, we’ll break down:
You’ll typically see this warning in the browser’s console when: VIDEOJS WARN: player
Example that triggers the warning:
var player = videojs('my-video');
player.ready(function()
var hlsTech = player.tech_.hls; // ⚠️ DEPRECATED
console.log(hlsTech.playlist);
);
The warning does not crash the page, but it clutters the console, and future Video.js updates may remove .hls altogether. This warning does not necessarily break your player
When you see this warning, it means somewhere in your JavaScript code (or an external plugin), you are accessing:
player.tech_.hls.someMethod();
That direct path is now deprecated. You must replace it with:
player.tech_.vhs.someMethod();
Migrating from player.tech--.hls to player.tech--.vhs aligns projects with the actively maintained VHS stack, reduces technical debt, and improves feature support. The migration is primarily a dependency and configuration change, usually requiring minimal code updates beyond mapping legacy options and event handlers. Proper testing and staged rollout mitigate risk.