首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >利用HTML2canvas拍摄吉思会议截图

利用HTML2canvas拍摄吉思会议截图
EN

Stack Overflow用户
提问于 2020-06-26 09:01:10
回答 2查看 904关注 0票数 0

在我的jitsi安装(穿过这条线)中添加了一个按钮之后,我现在尝试使用htlm2canvas来截取视频会议的截图。

然而,当我运行这个函数时,它会以黑色的形式返回视频,即使它在显示中显示。

屏幕截图

(左边的Feed应该显示视频,但它是黑色的)

正如你所看到的,图标也都乱七八糟。

这附近有解决办法吗?还是另一种选择?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-15 11:32:48

我环顾四周,发现了ScreenshotCaptureEffect.js中的逻辑。它现在可以工作了,…你必须有焦点视频,你想要截图,或者你可以改变脚本发送所有视频流。

代码语言:javascript
复制
const storedCanvas = document.createElement('canvas');
const storedCanvasContext = storedCanvas.getContext('2d');

var vids = $('video#largeVideo');
vids[0].play();

storedCanvas.height = parseInt(vids[0].videoHeight, 10);
storedCanvas.width = parseInt(vids[0].videoWidth, 10);
storedCanvasContext.drawImage(vids[0], 0, 0, vids[0].videoWidth, vids[0].videoHeight);

storedCanvas.toBlob(
    blob => {
        console.debug(blob);

        var data = new FormData();
        data.append('file', blob);

        $.ajax({
            url: S3_API_URL,
            cache: false,
            contentType: false,
            processData: false,
            method: 'POST',
            data: data
        });
    },
    'png',
    1.0,
);
票数 0
EN

Stack Overflow用户

发布于 2020-07-03 08:04:12

这是因为您可能试图从外部代码中捕获屏幕截图,而jitsi正在iframe中运行视频。浏览器的安全特性不允许读取iframe内容。您需要在jitsi中实现自定义逻辑来处理您的场景。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62591410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档