更改移动版HTML5视频源

时间:2018-12-10 08:06:22

标签: html5 video

希望对某人来说是一个简单的答案,我正在创建的网站上有我不想在移动设备上加载的视频。

想知道是否可以将宽度小于800像素的屏幕的每个视频的源更改为1kb的视频,但是在台式机上它可以播放完整的视频,

我并不是要降低移动用户的质量,移动用户根本看不到视频,因为它们已被替换为图像以保存在数据中。我不想让移动用户在后台完全加载视频,因为我不希望他们下载网站版本中未包含的视频,如果我不能完全停止加载800px以下的视频,是否可以用1kb视频替换该断点处的源,作为一种保存移动数据的黑客手段。

<video autoplay loop id="video-background" muted plays-inline>
<source src="VIDEO/BG-VID.mp4" type="video/mp4"> 
<source src="VIDEO/1kb-vid.mp4" type="video/mp4"> 
</video>

2 个答案:

答案 0 :(得分:1)

移动用户可以轻松地显示全高清视频,只是将断点设置为400px(或其他值)。这并不意味着它们没有高清分辨率,实际上许多移动设备都具有更高的分辨率。 YouTube,Netflix,它们都以高清格式加载到移动设备上。

源标签中的

mediaqueries不再受支持,几年前才有可能。

人们不想在移动设备上观看分辨率较低的视频,他们希望观看全分辨率视频(如果带宽允许)

这就是为什么实现此目标的唯一方法与Netflix或Youtube实施此类事情的方法相同:将不同大小的视频动态发送到不同的bandwith。意味着它们在回放过程中会发生变化,因此无法以固定的方式进行定义。

您的问题解决方案是MPEG-Dash,这需要在服务器上进行一些工作,还需要对视频进行特定的编码。 由于这是一个很大的话题,所以我只链接one (good?) tutorial,但是如果您搜索MPEG-Dash,则可以找到更多信息。

答案 1 :(得分:1)

这个javascript似乎就是我想要的,

$(document).ready(function(){
var screenWidth = $(window).width();
if (screenWidth < 800){
    $('video').removeAttr('autoplay');
} else {
$('video').attr('autoplay');
}
});