0

我正在使用 MediaRecorder Web API 来记录来自本地 IOS 应用程序的 webrtc 流。1. MediaRecorder 在录制来自 ios 本机应用程序的 webrtc 流(在 windows chrome 上工作)时不能在 MAC-chrome 浏览器中工作 2. 我能够在 UI 中显示来自 ios 的 webrtc 流,但不能记录相同的流 3 . 我注意到在开始录制流后没有调用 ondataavailable 方法。

我已使用此链接https://webrtc.github.io/samples/src/content/getusermedia/record/在我的应用程序中记录 webrtc 流

注意:此问题仅在更新本机 IOS 应用程序中的 webrtc 框架和 MediaRecorder 如果我们在本机 IOS 应用程序中使用旧的 webrtc 框架,则在 mac-chrome 中按预期工作。

谁能帮我为什么专门 ondataavailable 方法不在 MAC-chrome 中调用

我无法弄清楚这是 mac-chrome 中的 MediaRecorder 问题还是本机 IOS 应用程序中的最新框架问题?

window.WebRTC.startRecording = function(localStream, remoteStream) {
var options = {
    mimeType: 'video/webm;codecs=vp9'
};

if (!MediaRecorder.isTypeSupported(options.mimeType)) {
    console.log(options.mimeType + ' is not Supported');
    options = {
        mimeType: 'video/webm;codecs=vp8'
    };
    if (!MediaRecorder.isTypeSupported(options.mimeType)) {
        console.log(options.mimeType + ' is not Supported');
        options = {
            mimeType: 'video/webm'
        };
        if (!MediaRecorder.isTypeSupported(options.mimeType)) {
            console.log(options.mimeType + ' is not Supported');
            options = {`enter code here`
                mimeType: ''
            };
        }
    }
}
try {
//   debugger;
    window.WebRTC.recording.mediaRecorderLocal = new MediaRecorder(localStream, options);
    window.WebRTC.recording.mediaRecorderRemote = new MediaRecorder(remoteStream, options);
} catch (e) {
    console.error('Exception while creating MediaRecorder: ' + e);
    alert('Exception while creating MediaRecorder: ' +
        e + '. mimeType: ' + options.mimeType);
    return;
}

window.WebRTC.recording.mediaRecorderRemote.start(1000);

window.WebRTC.recording.mediaRecorderRemote.ondataavailable = function(event) {
if (event.data && event.data.size > 0) {
  window.WebRTC.recording.recordedBlobsRemote.push(event.data);
}
},
4

0 回答 0