WebRTC getUserMedia()流显示静态快照而不是视频

时间:2015-03-09 21:33:45

标签: javascript video stream webrtc getusermedia

我正在尝试在Chrome扩展程序“选项”页面中的视频标记中流式传输屏幕(仅用于测试目的)。我可以选择我想要分享的屏幕。当我选择它时,我会得到一个流对象,我将其分配给'video.src',现在我的视频标签显示了内容的静态图像。

$(document).on('click', '#screen_share', function () { 
    chrome.desktopCapture.chooseDesktopMedia(["screen", "window"], 
      function(mediaSourceId) {         
          var captureOptions = { 
                                  audio:false, 
                                  video: { mandatory: { 
                                    chromeMediaSource: "desktop", 
                                    chromeMediaSourceId: mediaSourceId } 
                                  } 
                                };
          navigator.webkitGetUserMedia(captureOptions,
                                        function(stream) {
                                          var video = document.querySelector('video');;
                                          video.src = window.URL.createObjectURL(stream);
                                        },
                                        function() {
                                            console.log("Something wrong happened");
                                        }
                                      );
      });
  });

谁能告诉我哪里出错?

1 个答案:

答案 0 :(得分:1)

我将在黑暗中拍摄并说明您的video标记未设置为autoplay附加到其上的媒体来源。

确保将其设置为autoplay并且我打赌它会在此之后正常工作。