如何在播放过程中更改视频分辨率

How to change video resolution mid play

我有 4 个版本的视频,它们像这样托管在服务器上:

/1920x1080.mp4

/1280x720.mp4

/640x480.mp4

/426x240.mp4

视频正在使用 HTTP 206 部分内容进行流式传输。

我想做的是,您可以通过下面的小菜单更改视频质量,例如在 youtube 或 twitch 上,而无需播放器重新加载或更改视频源。 HTML5 视频是否可行?

另外请回答是否有其他方法可以做到这一点。

I want to make so that you can change the video quality from a small menu bellow like on youtube or twitch without the player having to reload or change the video source. Is this possible with HTML5 video if it is how?

是的,使用 mp4 是可能的,但是非常复杂,超出了我在这里可以解释的范围,尤其是在关键帧未对齐的情况下。

那么 YouTube 广告抽动是如何做到的呢?他们不使用 mp4。使用分段流媒体协议,如 DASH 或 HLS,然后使用支持更改分辨率的播放器,如 hls.js 或 video.js。