Google Meet 通过 MediaRecorder API 进行流式传输

问题描述

我正在尝试使用媒体选项使用 getdisplayMedia 录制 google meet 音频和视频。我可以通过 getdisplayMedia 录制我的屏幕,但无法录制来自 google meet 的语音。如何使用被动录制,或者有什么方法可以通过任何机制或代码在 google meet 中录制屏幕、音频和视频?

navigator.mediaDevices.getdisplayMedia({audio: true,video: true});
      let mediaRecorder = new MediaRecorder(mediaStreamObj);
        let chunks = [];

        mediaRecorder.start();
        console.log(mediaRecorder.state);

        mediaRecorder.ondataavailable = function(ev) {
            chunks.push(ev.data);
        }

        setTimeout(function() {
            console.log("Stopping!");
            mediaRecorder.stop();
            console.log(mediaRecorder.state);
            mediaRecorder.onstop = (ev) => {
                let blob = new Blob(chunks,{
                    'type': 'video/mp4;'
                });
                chunks = [];
                let videoURL = window.URL.createObjectURL(blob);
                console.log(videoURL);
            }
        },40000);

解决方法

我是用 puppeteer 做的。我构建了一个 google meet bot,它将从谷歌日历加入您的会议并录制音频+保存所有成绩单。会议结束时,所有内容都将通过电子邮件发送,或者您可以在应用仪表板中看到。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...