jquery 裁剪HTML格式的视频?

mm5n2pyu  于 2023-01-04  发布在  jQuery
关注(0)|答案(3)|浏览(115)

我想用HTML5裁剪一个视频。

<video id="glass" width="640" height="360" autoplay>
    <source src="invisible-glass-fill.mp4" type="video/mp4">
</video>

视频的分辨率是640x360,但是当我将width属性设置为200时,视频将重新缩放(保留宽高比)。如何通过HTML或Javascript裁剪视频(比如从左右两侧裁剪220像素)?甚至可以不通过视频编辑软件裁剪视频吗?

gfttwv5a

gfttwv5a1#

我建议您使用CSS和一个 Package 器:

    • 超文本标记语言**
<div class="container">
    <video id="glass" width="640" height="360" autoplay>
        <source src="invisible-glass-fill.mp4" type="video/mp4">
    </video>
</div>
    • 中央支助组**
.container{
    width: 200px;
    overflow:hidden;
    display:block;
    height: 360px;
}
#glass{
    margin-left: -220px;
}
wb1gzix0

wb1gzix02#

我遇到了同样的需求(想在飞行中裁剪视频,而不是裁剪实际的视频)。
我的解决方案非常简单,而且你不需要用绝对值来指定容器的高度和宽度,因此它是响应式的。

<div style="overflow: hidden;">
  <video src="http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4" style="margin-top: -10.5%; margin-bottom: -10.5%"></video>
</div>

在这个例子中,我使用了百分比形式的负边距。请记住,使用百分比时,它们是根据容器的宽度计算的。所以它不是视频高度的10.5%。我认为如果你想这样做,你需要使用javascript。然而,通过这种方法,你也可以使用vhvw单位。2或者按照Alvaro的建议,如果你想让容器绝对大小化,就在容器上设置宽度,然后使用px来设置边距。
查看this codepen以获取更多示例!

qv7cva1a

qv7cva1a3#

尝试使用CSS属性:

object-fit: cover;

与默认的Object-fit: contain;相反,Object-fit: contain;是您描述的视频大小缩小到完全适合框内而不进行裁剪的位置。Cover将覆盖整个视频框,并允许框外的额外内容被裁剪掉。

相关问题