在 JS 中克隆带有 blob 的视频

问题描述 投票:0回答:1

我正在构建一个 Chrome 扩展。我想要两个并排的相同视频(类似于画中画)有点像这样。我想在单独的 iframe/video 元素中复制视频。

我不知道如何复制或克隆视频。我想要一个全新的对象(不仅仅是一个参考)。

这是视频元素的示例。

<video src="blob:https://www.netflix.com/1ca080d6-e257-414f-bef8-d34975b6325c" tabindex="-1" style="height: 100%; width: 702.4px;"></video>


我尝试了cloneNode()但没有任何运气。我收到此错误: 获取 blob...net::ERR_FILE_NOT_FOUND

我尝试手动创建视频元素并将 src 设置为 https://www.netflix.com/1ca080d6-e257-414f-bef8-d34975b6325c

我尝试了 HTMLVideoElement.requestPictureInPicture() 但它没有创建新视频。主视频窗口变黑,并打开一个迷你视频窗口。

这并不能回答我的问题,因为它没有解释如何复制以 blob 作为源的元素。 什么是 blob URL 以及为什么使用它?



这怎么办?

javascript html dom html5-video
1个回答
0
投票

利用 captureStream() 我们可以获取一个玩家的输出并将其输入另一个玩家......

<!DOCTYPE html>
</style>
</head>

<body onload="V1.src=Url; RecordVideo();">

<script type="text/javascript">

var Url='SomeVideo.mp4'; // Set your video source

function RecordVideo(){

V1.onplay = function(){

 let Stream=V1.captureStream(); V2.srcObject=Stream; V2.play();

};

}
</script>

<video id="V1" src="" type="video/mp4" width="320" height="240" controls></video>

<video id="V2" src="" type="video/mp4" width="320" height="240" controls></video>

</body>
</html>

我会让你弄清楚我不明白的“其他 iframe”部分。

© www.soinside.com 2019 - 2024. All rights reserved.