Dash.js, and probably others, test if the video is an instance of HTMLMediaElement : https://github.com/Dash-Industry-Forum/dash.js/blob/development/src/streaming/utils/Capabilities.js#L66 We used to inherit HTMLMediaElement prototype to work around this, but it broke when updating the version (Error: illegal invocation when setting video.src): https://github.com/Dash-Industry-Forum/dash.js/blob/ae5330eb3a6112fda9f4b831b2620f4a58990b44/src/streaming/models/VideoModel.js#L88
Dash.js, and probably others, test if the video is an instance of HTMLMediaElement : https://github.com/Dash-Industry-Forum/dash.js/blob/development/src/streaming/utils/Capabilities.js#L66
We used to inherit HTMLMediaElement prototype to work around this, but it broke when updating the version (Error: illegal invocation when setting video.src): https://github.com/Dash-Industry-Forum/dash.js/blob/ae5330eb3a6112fda9f4b831b2620f4a58990b44/src/streaming/models/VideoModel.js#L88