如何在RecordRTC中删除空白帧

时间:2019-05-28 06:33:24

标签: javascript webrtc recordrtc rtcmulticonnection rtcpeerconnection

我在某些方面陷入困境。请帮我弄清楚。

当任何对等连接(在视频会议中)断开连接并重新连接时,则在“录制”中添加了空白框,我正在使用RecordRTC并在Chrome 74.0中对其进行测试 我认为是发生这种情况的原因是,当对等连接断开时,RecordRTC已经具有以前连接的数据视频元素,而我只想删除那些空白元素。

我附上了录制视频的屏幕截图,请帮我弄清楚。

enter image description here

在此图像中,您可以看到我们有5个屏幕,其中2、3、4为空白, 因为对等连接已关闭并重新连接。 所以我想在我的Blob中找到这2个工作屏幕(1,5)[1 =本地流,5 =远程流],或者我们可以说出哪个正在录制。 请帮我弄清楚这个问题。

谢谢

1 个答案:

答案 0 :(得分:2)

请使用此解决方案, 我们只需要提供在画布上拖动第一个和最后一个元素的条件。 在函数drawVideosToCanvas()中更新此代码。

var videosLength = videos.length;
if(videosLength > 2){
    videosLength = 2;
}

var fullcanvas = false;
var remaining = [];

var length = videos.length;
videos.forEach(function(video,idx) {
    if (!video.stream) {
        video.stream = {};
    }
    if (video.stream.fullcanvas) {
        fullcanvas = video;
    } else {
        if(idx==0 || idx == (length-1)){
            if(video.stream.active)
                remaining.push(video);
        }
    }
});